1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
#!/usr/bin/python
# -*- coding: GBK -*-
#
#
##@package GY_Query_AddFamilyReply.py
#
# @todo:ÉêÇë¼ÓÈë¼Ò×廨Ӧ
#
# @author jiang
# @date 2012-03-09
# @version 1.2
# @note:
#
# @change: "2012-05-16 15:00" jiang C++Ð޸ĽӿÚGameServer_QueryPlayerByIDºÍGameServer_QueryPlayerResult
# @change: "2013-06-06 19:30" Alee ½Ó¿Ú×ªÒÆ
#------------------------------------------------------------------------------ 
#"""Version = 2013-06-06 19:30"""
#------------------------------------------------------------------------------ 
import ChConfig
import ShareDefine
import PlayerFamily
import PlayerControl
#---------------------------------------------------------------------
 
#Âß¼­ÊµÏÖ
## ÇëÇóÂß¼­£¬Ìí¼ÓºÃÓѳɹ¦
#  @param query_Type ÇëÇóÀàÐÍ
#  @param query_ID ÇëÇóµÄÍæ¼ÒID
#  @param packCMDList ·¢°üÃüÁî
#  @param tick µ±Ç°Ê±¼ä
#  @return "True" or "False" or ""
#  @remarks º¯ÊýÏêϸ˵Ã÷.
def DoLogic(query_Type, query_ID, packCMDList, tick):
    return ''
 
 
#---------------------------------------------------------------------
## Ö´Ðнá¹û
#  @param curPlayer ·¢³öÇëÇóµÄÍæ¼Ò
#  @param callFunName ¹¦ÄÜÃû³Æ
#  @param funResult ²éѯµÄ½á¹û
#  @param tick µ±Ç°Ê±¼ä
#  @return None
#  @remarks º¯ÊýÏêϸ˵Ã÷.
def DoResult(curPlayer, callFunName, funResult, tick):
    familyID, isOK = eval(funResult)
 
    for index in range(0, ChConfig.Def_Player_RequestAddFamilyMaxCnt):
        
        #ÉêÇë¼ÓÈëµÄ¼Ò×åID
        requestAddFamilyID = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_RequestAddFamilyID%index) 
        
        if requestAddFamilyID <= 0:
            continue
        
        #ÒѾ­¼ÓÈë°ï»á
        if isOK == 1:
            PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_RequestAddFamilyID%index, 0)
        
        #±»¾Ü¾ø
        elif familyID == requestAddFamilyID:
            PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_RequestAddFamilyID%index, 0)
        
        #ÉêÇëÇé¿ö»¹ÔÚ
        else:
            continue
        
        #ÉêÇë¼ÓÈëµÄÊýÁ¿-1
        count = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_RequestAddFamilyCnt)
        PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_RequestAddFamilyCnt, count - 1)
        
        sendMsg = "%s"%requestAddFamilyID
        #ÏòGameServer·¢ËÍÇëÇóɾ³ý¸ÃÍæ¼ÒµÄÉêÇë¼Ò×åÐÅÏ¢Çé¿ö
        curPlayer.GameServer_QueryPlayerByID(ChConfig.queryType_DelFamilyAction, 
                     ShareDefine.Def_ActionType_FamilyAdd, '', sendMsg, len(sendMsg))
        
    #֪ͨµ±Ç°ÉêÇë¼ÓÈëµÄÄÄЩ¼Ò×å
    PlayerFamily.Sync_RequestAddFamilyInfo(curPlayer) 
    return