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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
’ñOgc@sÐddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddl Z d„Z!d„Z"d„Z#d„Z$d„Z%d„Z&d„Z'd    „Z(e)d
e)d „Z*d
d
d
d
d „Z+d
d
d
d „Z,d„Z-d„Z.d„Z/d„Z0d„Z1d„Z2d„Z3d„Z4d„Z5d„Z6d„Z7d„Z8d„Z9d„Z:id„Z;d„Z<d„Z=d„Z>d d!„Z?d"„Z@dd#„ZAd$„ZBd%„ZCd&„ZDd'„ZEd(„ZFd)„ZGd
ZHd ZId*ZJd+„ZKd,„ZLe)d-„ZMd.„ZNd/„ZOd0„ZPd1„ZQd2„ZRdd3„ZTd4„ZUd5„ZVd6„ZWd7„ZXd8„ZYd9„ZZd:„Z[d;„Z\d<„Z]d=„Z^dS(>iÿÿÿÿNc    Cs’tjƒj|ƒ}tjƒ}|jƒ|jƒkr=dS|jƒ}|jƒtj    krƒ|jƒtj    krƒt
j |ƒn||jƒkr    |j |jƒƒt tjƒƒ}tj|tj|ƒtjd|||jƒf|jƒƒt
j|ƒn|jƒ|jƒkrA|j|jƒƒ|jƒn|jƒ}|jƒ}||krâ|jtj|ƒt}|r™|dkr™t}n|j|ƒtj|tj|ƒt||ƒ|rât
j |ƒqân|jƒ|jƒkr0|j!|jƒƒ|j"|jƒƒt#j$|ƒn|j%ƒ|j%ƒkr^|j&|j%ƒƒn|j'ƒ|j(ƒkrŒ|j)|j(ƒƒntj*|ƒ|j+ƒkrÀtj,||j+ƒƒn|dkrû|jƒdkrût-||ƒt.j/|ƒn‰|dkr„|jƒdkr„|jƒtj    krQt
j0|ƒt1j2|tj3ƒnt1j4|tj3dƒt5||ƒt.j/|ƒn|j6ƒdS(NsH¼Ç¼¼Ò×å±ä¸üʱ¼ä...familyIDChangeTime=%s,lastFamilyID=%s,nextFamilyID=%sii(7t    GameWorldtGetPlayerManagertGetPlayerByIndext IPY_GameWorldtIPY_MFamilyRefreshtGetIDt GetPlayerIDt GetFamilyIDtGetFamilyMemberLVt    fmlLeadert
EventShelltEventResponse_OnMemberChanget SetFamilyIDtintttimet PlayerControltNomalDictSetPropertytChConfigtDef_Player_Dict_LastFamilyIDtLogtEventResponse_OnFamilyAddt GetFamilyNamet SetFamilyNametNotify_FamilyNameRefresht GetFamilyLVtSetDicttDef_PlayerKey_FamilyLVLeavetFalsetTruet SetFamilyLVtDef_Player_Dict_FamilyLVt__OnFamilyLVBuffChangetEventResponse_OnFamilyLVUptSetReceivedSalarytSetFamilyMemberLVtGameLogic_FamilyWartDoCheckChampionFamilyTitletGetFamilyMoneytSetFamilyMoneytGetFamilyLastWeekActiveValuetGetLastWeekFamilyActiveValuetSetFamilyLastWeekActiveValuetGetFamilyEmblemIDt    GetExtra6tSetFamilyEmblemIDt__OnLeaveFamilyt PlayerTrucktChangeTruckNoteInfotEventResponse_OnCreateFamilyt
PlayerTaskt UpdTaskValuetTaskType_CreateOrJoinFamilyt AddTaskValuet__OnEnterFamilytView_FamilyInfoRefresh(    tindexttickt    curPlayert refreshPackt lastFamilyIDtfamilyIDChangeTimetrefreshFamilyLVt lastFamilyLVtisLVUP((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytGameServer_FamilyRefreshAsh                    
cCsstj|ƒt||ƒt|ƒtj|ƒt|ƒtj|ƒt    j
|ƒt j |ƒt j
|ƒdS(N(R
tEventResponse_OnFamilyRt__FamilyAffair_CheckResettPlayerFamilyTechtSync_PlayerFamilyTechLVtDelAddFamilyRecordR#R$tGameLogic_FamilyBosst OnEnterFamilytPlayerFamilyRedPackettCreatCacheRedPacktettPlayerFamilyZhenfa(R9R8((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyR5¦s  
 
    cCsÅ|jdƒ|jdƒ|jdƒ|jdƒ|jdƒtj|ttjƒƒƒt    j
|ƒt |ƒt j ||ƒt||ƒtj|tjdƒtj|ƒtj |ƒdS(Ni(t    SetPerExptSetFamilyHornortSetFamilyActiveValuetSetLastWeekFamilyActiveValueRRtSetLeaveFamilyTimeExR RR
tEventResponse_OnLeaveFamilyt__SetForbidFamilyAwardtFBLogict OnLeaveFamilyRtSetPlayerCurrencyt ShareDefinetTYPE_Price_FamilyStoreScoreR#R$RJ(R9R8((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyR-·s      
   cCsùdStjƒrdStjdƒ}|s-dS|jƒ}tj|||ƒ|j|ƒ|jƒ}tj    d||fƒ|dkrÜtj
ƒj ||ƒ}|sªdS|j ƒ}|j |ƒtj||||ƒntj|ƒ}|jƒdS(Nt FamilyLVBuffs=__OnFamilyLVBuffChange familyLV=%s,familyLVBuffSkillTypeID=%si(Rt IsCrossServert ReadChConfigtGetEvalChConfigtGetSkillManagert    BuffSkilltDelBuffBySkillIDtDeleteSkillBySkillTypeIDRtDebugLogt GetGameDatatFindSkillByTypet
GetSkillIDt LVUPSkillByIDt SkillCommontAddBuffBySkillTypeRtRefreshPlayerAttrByBuff(R9R8tfamilyLVBuffSkillTypeIDtplayerSkillManagertfamilyLVtcurSkilltskillIDt
curControl((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyRÏs*       
cCs0ttjƒƒ}|jtjƒ}||dS(Ni(R RtNomalDictGetPropertyRt"Def_Player_Dict_FamilyIDChangeTime(R9tcurTimet
changeTime((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytGetPlayerChangeFamilyPastHourìscCstjdƒdS(Ns'GameServer_RequestFamilyWar, ´Ë½Ó¿Ú·ÏÆú(RtErrLog(R7R8((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytGameServer_RequestFamilyWars
cCst|tjƒS(N(R RUt'Def_PlayerMoney_Change_FamilyMoney_Rate(t playerMoney((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyt!GetPlayerMoney_Change_FamilyMoneyscCs|S(N((t activeValue((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyt'GetPlayerActiveValue_Change_ActiveValue sicCsÐ|dkrdS|jƒ}|jƒ}|tjkrt|jt||tjƒƒ|jt||tjƒƒntj|t    j
|d|ƒt j |||jƒ|ƒ|s¶t St|||d|ƒt S(Nit    isSysHinttresion(tGetFamilyActiveValueR(RtDef_UpperLimit_DWordRMtminRNRt    GiveMoneyRUtTYPE_Price_Family_ContributiontDataRecordPacktDR_AddPlayerFamilyActiveValueRt%SendPack_GameServer_AddFamilyDetailEx(R9taddValuetsendPackGameServertreasontisSysMsgtcurActiveValuettotalActiveValue((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytAddPlayerFamilyActiveValue+s    cCs†|jƒsdStjƒ}|jƒ|_||_||_||_||_t    j
|ƒt j d||||f|jƒƒdS(NsWAddFamilyDetail addFamilyHornor=%s,addFamilyMoney=%s,addFamilyActiveValue=%s, resion=%s( RtChMapToGamePyPackttagMGAddFamilyDetailRtPlayerIDtAddFamilyHornortAddFamilyMoneytFamilyActiveValuet    AddResiont NetPackCommontSendPyPackToGameServerRR_(R9taddFamilyHornortaddFamilyMoneytaddFamilyActiveValueRztsendPack((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyt#SendPack_GameServer_AddFamilyDetailQs                       cCs&t|ƒ}t|||||ƒdS(N(RxR—(R9taddPlayerActiveValueR”R“RzR•((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyR‚qs cCs|jtjƒ|jƒdS(N(t#GameServer_SetPlayerViewFamilyStateRUtTViewFamilyType_CreateFamilytFrm_InputFamilyName(R9((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyt#SendPack_GameServer_InputFamilyName~s
cCs|jtjƒ|jƒdS(N(R™RUtTViewFamilyType_FamilyWartGameServer_ViewAllFamily(R9((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyt!SendPack_GameServer_ViewAllFamily‰s
cCs6|jƒtjtjgkr"dS|jtjƒdS(N(tGetViewFamilyStateRUtTViewFamilyType_NoneRšR™(R9((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyt(SendPack_GameServer_ClearViewFamilyState”s
cCs|jƒ}tjƒjtjƒ}|jtjƒ}tj    d||f|ƒ|}xktj
D]`}|t d|ƒ@s“tj    d||ƒq`n|t d|ƒB}tj    d||f|ƒq`W||krt j |tj|ƒtj    d||f|ƒndS(sS ÉèÖüÒ×åÏà¹Ø»î¶¯Áì½±ÏÞÖÆ 
     Èç¹ûÍ˳öʱ½ñÈÕÒÑ¿ªÊ¼¹ý¶ÔÓ¦»î¶¯£¬ÔòÉèÖÃÁì½±ÏÞÖÆ
    s=Í˳ö¼Ò×å´¦Àí¼Ò×å»î¶¯½±ÀøÁìÈ¡ÏÞÖÆ! openState=%s,forbidState=%sis<    ¸Ã¼Ò×å»î¶¯½ñÈÕ먦Æô¹ý£¡ ²»ÉèÖÃÏÞÖÆÁì½±! activityType=%ss6    ¼Ò×å»î¶¯Áì½±ÏÞÖÆ activityType=%s,updForbidState=%ss:    ¸üмÒ×å»î¶¯Áì½±ÏÞÖÆ: forbidState=%s,updForbidState=%sN(RRt GetGameWorldtGetGameWorldDictByKeyRUt*Def_Notify_WorldKey_FamilyActivityDayStateRmRt!Def_Player_Dict_ForbidFamilyAwardR_tDef_FamActivityListtpowRR(R9tplayerIDt    openStatet forbidStatetupdForbidStatet activityType((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyRQŸs  cCsdS(N((R9tisForbid((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytSetForbidFamilyAction¼scCsdS(N((R9((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytSendClientForbidFamilyActionÊscCsjtjƒj|ƒ}|j}tjƒj|ƒ}|s=dS|jƒ}|dkrYdSt||ƒdS(Ni(RRRt AddPlayerIDtFindPlayerByIDRt    AddFamily(R7t
clientDataR8R9t addPlayerIDt    addPlayert addFamilyID((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytRequestAddFamilyByIDäs       cCsgtjƒj|ƒ}|j}|j}|dkrCt||ƒn|dkrYtƒnt|ƒdS(Nii(RRRt AddFamilyIDtTypeR³REtSync_RequestAddFamilyInfo(R7R´R8R9R·t requestType((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytRequestAddFamily s          
 
cCsÄx³tdtjƒD]Ÿ}|jtj|ƒ}|s;qn|jtjƒ}tj|tj|dƒtj|tj|dƒt|ƒ}|j    tj
t j d|t |ƒƒqWt|ƒdS(Niit(trangeRt!Def_Player_RequestAddFamilyMaxCntRmt"Def_Player_Dict_RequestAddFamilyIDt#Def_Player_Dict_RequestAddFamilyCntRRtstrtGameServer_QueryPlayerByIDtqueryType_DelFamilyActionRUtDef_ActionType_FamilyAddtlenR»(R9R7trequestAddFamilyIDtrequestAddFamilyCnttsendMsg((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyREs  
cCsÁ|jtjƒ}g}xdtdtjƒD]P}|jtj|ƒ}|dkrYq+ntjƒ}||_|j    |ƒq+Wtj
ƒ}|j ƒt |ƒ|_ ||_tj||ƒdS(Ni(RmRRÂR¿RÀRÁtChPyNetSendPackttagRequestJoinFamilytRequestFamilyIDtappendt tagMCNotifyRequestJoinFamilyInfotClearRÇt RequestCounttRequestAddFamilyInfoR‘t SendFakePack(R9RÉtpackListR7tfamilyIDtrequestAddFamilyInfotrequestAddFamily((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyR»:s       
    cCsG|jtjƒ}|tjkr>tj|dtjgƒdSxGtdtjƒD]3}|jtj|ƒ|krQtj    dƒdSqQWt
j |tj |ƒgdƒ}|j tjtjd|t|ƒƒdSxTtdtjƒD]@}|jtj|ƒdkråtj|tj||ƒPqåqåWtj|tj|dƒdS(Ntjiazu_lhs_31379isÒѾ­ÔÚÉêÇëÁбíÖÐiR¾i(RmRRÂRÀRt
NotifyCodeR¿RÁRR_tcPickletdumpst GetFightPowerRÄtqueryType_AddFamilyActionRURÆRÇR(R9RÕRÉR7RÊ((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyR³Ts$ ! cCs–tj|tjƒsdStj|tjdƒtj|tjdƒt    |ƒt
|t ƒtj|tj dƒtj|tj dƒt|ƒdS(Ni(t GameFuncCommt GetFuncCanUseRUtGameFuncID_FamilyRRRtDef_Player_Dict_FamilyDayAwardt&Def_Player_Dict_FamilyMoneyDonateCounttSync_FamilyDayRewardStatet__FamilyAffair_RefreshRt"Def_Player_Dict_FamilyZhenbaogeCutt"Def_Player_Dict_FamilyZhenbaogeBuytSync_ZhenbaogeInfo(R9((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytFamilyPlayerOnDay}s
 
cCs_tj|tjƒsdStj|ƒt|ƒt|ƒt|ƒt    j
|ƒt |ƒdS(N( RÞRßRURàRCRDtSyncFamilyActivityInfoRãRBRJt OnPlayerLoginRç(R9R8((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytFamilyPlayerOnLogins 
 
 
 
cCs@|jƒ}|r<|j|ƒtjd||jƒƒndS(Ns¿ç·þµÇ¼ÉèÖÃÏÉÃËְλµÈ¼¶: %s(tGetReceivedSalaryR"RR_R(R9tcrossFamilyMemberLV((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytFamilyPlayerOnLoginCross›s
  c    Csnt|tƒ s| r2tjdt|ƒƒdSd|}tjƒj|jƒddd|t|ƒƒdS(Ns5Send_GameServer_PyAddFamilyInfoValue infoDict=%s err!s%sitPyAddFamilyInfoValue(    t
isinstancetdictRR_RÃRtGameServer_QueryPlayerResultRRÇ(R9tinfoDictRÊ((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyt$Send_GameServer_PyAddFamilyInfoValue«s 
.cCsStj|g|dƒ}|jtjtjd|t|ƒƒtj    d|ƒdS(NiR¾sAddFamilyEventNote sendMsg=%s(
RÚRÛRÄRRÝRUtDef_ActionType_FamilyEventRÇRR_(R9t    eventTypet    valueListRÊ((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytAddFamilyEventNoteºs%cCsRtj|tjdƒx+tjD] }tj|tj|dƒq Wt|ƒdS(Ni(RRRt#Def_PDict_FamilyActivityAwardRecordRUtFamilyActiveIDListt!Def_PDict_FamilyActivityFinishCntRé(R9tactionid((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytOnWeekExÃs
 
c    CsPdStjdƒ}tjddƒ}|dksC|t|ƒkrdtjd|t|ƒfƒdS|jtjdƒ}|td|ƒ@r¡tj    d|ƒdS||}t
|ƒ}||krátj    d|||fƒdS||}t j |t j|ƒ|d|>B}t j|tj|ƒt|ƒtjd||||fƒdS(    Nt FamilyActiveiis$»îÔ¾¶È½±ÀøË÷Òý²»ºÏ·¨,index=%s,Len=%ssÒѾ­ÁìÈ¡¹ý¸Ã»îÔ¾¶È½±Àø,index=%ss8Áì½±»îÔ¾¶È²»×ã,index=%s,needActivity=%s,totalActivity=%sisOÁìÈ¡ÏÉÃË»îÔ¾¶È½±ÀøOK£¡ index=%s,needActivity=%s,totalActivity=%s,awardRecord=%s(t IpyGameDataPYtGetFuncEvalCfgRÇRRrRmRRùR¨Rt__GetTotalFamilyActivityRR~RUtTYPE_Price_FamilyActivityRRéR_(    R9t
awardIndextfamilyActiveListtfamilyActiveAwardListtgetAwardRecordt needActivityt totalActivityt activityValuetupdAwardRecord((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytGetFamilyActivityAwardÐs0
      
 
    icCsÆdStjd|ƒ}|s dStj||jƒƒs<dS|jtj|dƒ}|jƒ}||krqdSt    |||ƒ}t
j |tj||ƒt ||ƒt jd||fƒdS(NtFamilyActivityis*    ÏÉÃË»îÔ¾Íê³É´ÎÊý actionid=%s,newCnt=%s(RÿtGetIpyGameDataRÞRßtGetUnLockFuncIDRmRRûtGetTotalActivityTimeR}RRRéRR_(R9RütaddCnttipyDatat    finishCnttmaxCnttnewCnt((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytAddFamilyActivityôs   cCs…d}tjƒ}xlt|jƒƒD]X}|j|ƒ}|jƒ}|jtj|dƒ}|||j    ƒ|j
ƒ7}q%W|S(Ni( RÿtIPY_DatatxrangetGetFamilyActivityCounttGetFamilyActivityByIndexRRmRRûtGetSingleTimestGetSingleActiveValue(R9t
totalPointt
ipyDataMgrtiRRütcurTimes((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyRs  "cCsÑdS|dkrtjn|g}tjƒ}|jƒ|jtjdƒ|_g|_    xO|D]G}tj
ƒ}||_ |jtj |dƒ|_ |j    j|ƒq`Wt|j    ƒ|_tj||ƒdS(Niÿÿÿÿi(RURúRËttagMCFamilyActivityInfoRÐRmRRùt AwardRecordtInfoListttagMCFamilyActionCnttActionIDRût    FinishCntRÎRÇtCountR‘RÓ(R9t syncActionidtsyncActionIDListR–Rüt activityInfo((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyRés 
          c    CsWtjƒj|ƒ}tjƒr5tj|dƒdS|jƒsEdS|jtj    ƒrqtj
d|j ƒƒdS|j }|j }|jƒjtjƒ}|j|ƒ}tj|ƒs½dS|jƒtjkrÖdStj|tj|ƒ|jtj    dƒt|ƒ}tj
d||j ƒƒtjƒj|j ƒddd|t|ƒƒdS(Ntitemuse_lzxkoy_0sÏÉÃËÒѾ­ÔÚ¸ÄÃûÖÐ...is,UpdateFamilyName Í¨ÖªGameServerÕýʽ¸ÄÃûΪ:%sitUpdateFamilyName(RRRRXRRÙRt GetDictByKeyRt Def_Player_Dict_UpdateFamilyNameRRtNewNamet    ItemIndextGetItemManagertGetPackRtrptItemtGetAtt
ItemCommontCheckItemCanUsetGetTypetDef_ItemType_ChangeFamilyNameRt)Def_Player_Dict_UpdateFamilyNameItemIndexRRÃRòRÇ(    R7R´R8R9tnewNamet    itemIndextitemPacktcurItemt
newNameMsg((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyR++s.           .cCsu|jtjƒ}|jƒjtjƒ}|j|ƒ}|r[tj    ||dt
dƒnt j |tjdƒdS(NiR+i( RmRR8R0R1RR2R3R4tDelItemRRR(R9R:R;R<((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytPayUpdateFamilyNameCostVscCs]|jƒsdS|jtjƒ}|r9tjdƒdStj|tjdƒt|ƒdS(NsÁìÈ¡ÏÉÃËÿÈÕ½±Àø µ±ÈÕÒÑÁìÈ¡£¡i(    RRmRRáRR_RRRã(R9thasGot((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytGetFamilyDayAwardas  
cCsJtjƒ}|jtjƒ|_|jtjƒ|_tj    ||ƒdS(N(
RËttagMCFamilyDayAwardRmRRátGetStateRâtMoneyDonateCountR‘RÓ(R9t
clientPack((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyRãrs
 c
Csrtjƒj|ƒ}|js"dS|jƒ}|j}|j}d}tjddiƒ}tjddiƒ}    |j    ƒj
t j ƒ}
x‡t |ƒD]y\} }|
j|ƒ} tj| ƒsÖtjd|ƒq•n| jƒ} | || krtjd|| || f|ƒq•n| jƒr<tjd|ƒq•n| |    krU|    | }nvtj| ƒs{tjd|ƒq•n| jƒ}t|ƒ|krŸq•n| jƒ}|t|ƒ|rÄdnd}| jƒ}|||7}tj|| |ttji|d    6tƒq•W|s)tjd
ƒdStj|t j!|ƒt"j#ƒ}|j$ƒ||_%t&j'||ƒdS( Nit FamilyDonateiis"ÎïÆ·²»¿ÉÓã¬ÎÞ·¨¶Ò»»£¡itemIndex=%ssE¼Ò×å¶Ò»»»îÔ¾Áî ·¢µÄÎïÆ·ID²»¶ÔÓ¦index=%s eatItemID=%s,ItemIDList[i]=%ss&ÓÐʱЧÄ;ÃÎïÆ·£¬ÎÞ·¨¶Ò»»£¡itemIndex=%ss·Ç×°±¸£¬ÎÞ·¨¶Ò»»£¡itemIndex=%staddPoints ¼Ò×å¶Ò»»»îÔ¾ÁûÓÐ×°±¸¿É¶Ò»»£¡((RRRR&Rt    IndexListt
ItemIDListRÿRR0R1RR2t    enumerateR3R4R5R_t GetItemTypeIDRtGetEndureReduceTypetCheckItemIsEquipt GetItemColorRÃt
GetSuiteIDtGetCountR>RRtItemDel_FamilyStoreRR~RURRËt!tagMCFamilyActivityExchangeResultRÐtPointR‘RÓ(R7R´R8R9R©t eatIndexListt eatItemIDListt    givePointtfamilyDonateDicttfamilyDonateSpecialDictR;RteatItemt    eatItemIDRGt    itemColortisSuitetitemCnttpackData((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytOnFamilyActivityExchangeˆsX              !       -  
    c CsŠtjƒj|ƒ}|j}|jƒ}tjddƒ}|jtj    ƒ}|rx||krxtj
d||ƒdStj ddiƒ}t |ƒ|kr·tj
d||ƒdS|t |ƒ\}    }
} t j|||    dƒsìdS|d} t j|tj    | ƒt|ƒtj
d||    | |
| f|ƒ|
d    krat||
ttjtƒn| d    kr†t j|tj| ƒndS(
NRFis(½ñÈÕ»õ±Ò¾èÏ×´ÎÊýÒÑ´ïÉÏÏÞ. donateCount=%sis"²»´æÔڸûõ±ÒÀàÐ;èÏ×: moneyType=%stFamilyMoneyDonateisW»õ±Ò¾èÏ×: moneyType=%s,needMoney=%s,updDonateCount=%s,contribution=%s,familyActivity=%si(RRRt    MoneyTypeRRÿt
GetFuncCfgRmRRâR_RRÃRtPayMoneyRRãR‰RRUt!Def_AddFAVReason_FamilyDonateItemR~R( R7R´R8R9t    moneyTypeR©tdailyDonateCountMaxt donateCounttdonatePrizeInfot    needMoneyt contributiontfamilyActivitytupdDonateCount((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytOnFamilyMoneyDonateÄs2     
 
      icCs|tjƒj|ƒ}|j}|j}|dkr@t|ƒn8|dkr\t||ƒn|dkrxt||ƒndS(Niii(RRRtOPTypetAffairIDRät__FamilyAffair_Startt__FamilyAffair_GetAward(R7R´R8R9topTypetaffairID((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytOnFamilyAffairOPós            cCs:|jtjdƒ}|s,t|tƒn
t|ƒdS(Ni(RmRt Def_Player_Dict_FamilyAffairInfoRäRtSyncFamilyAffairInfo(R9tinfo((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyRBs
 
cCs‡|jƒ}d \}}|jtjƒ}|s‹tjddƒ}|r‹||kr‹tjddƒ\}}tj|||ƒsˆdSq‹ng}g}tjddƒ}    tjddƒ}
d} g} xR|
j    ƒD]D\} }t
| ƒ}|| kr|} n| j |d|gƒqÔWxt d|    dƒD]{}t ||ƒ\}}|rƒ|tkrs|j ||gƒn|j |ƒq0|tkr0|| kr0|j |ƒq0q0Wtjd||||f|ƒtjd||ƒxk|D]c}|\}}t|ƒ|
krqên||g}|
t|ƒd}tjd    |g||ƒqêW|rÂtj|tjdƒx‘t d|    dƒD]:}tj|tj|dƒtj|tj|dƒqWn?|rç|rçtj|||dƒntj|tj|dƒtjd
| |ƒtjd ||ƒxM|D]E}tj| dƒ}t|||tƒtjd ||f|ƒq0Wt|ƒdS(Nit FamilyAffairiiiisFË¢ÐÂÊÂÎñ: isReset=%s,moneyType=%s,moneyValue=%s,dayRefreshFreeCount=%ss    sendMailAffairList=%stFamilyAffairAwards    starWeightList=%ss    refreshAffairIDList=%ss     Ëæ»úÊÂÎñ:affairID=%s,star=%s(ii(RRmRt'Def_Player_Dict_FamilyAffairRefreshFreeRÿRbRRt    HaveMoneytitemsR RÎR¿t__GetAffairInfotAffairState_UnderwaytAffairState_NoneRR_RÃt SendMailByKeyRRut%Def_Player_Dict_FamilyAffairStartTimeRctGetResultByWeightListt__SetAffairInfoRv(R9tisResetR©Ret
moneyValuetdayRefreshFreeCountt freeCountMaxtsendMailAffairListtrefreshAffairIDListtaffairCountMaxtaffairStarDicttmaxStartstarWeightListtstarStrtstarInfotstarRststatetmailInfot    paramListt addItemList((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyRä
sl  
              !  
cCsÅ|jƒ}t||ƒ\}}|s+dS|tkrXtjd|||f|ƒdSttjƒƒ}tj|t    j
||ƒt |||t ƒtjd|||f|ƒt ||ƒdS(NsBÏÉÃËÊÂÎñÒѾ­½øÐÐÖлòÒÑÍê³É£¬ÎÞ·¨¿ªÊ¼: affairID=%s,star=%s,state=%ss.ÏÉÃËÊÂÎñ¿ªÊ¼: affairID=%s,star=%s,startTime=%s(RR}RRR_R RRRRRRƒR~Rv(R9RsR©RR‘t    startTime((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyRpPs   c
Cse|jƒ}ttjƒƒ}tjddƒ}t||ƒ\}}|tkrtjd|||f|ƒt    ||ƒdS|j
t j |ƒ}t |||||ƒ}|dkrçtjd|||f|ƒt    ||ƒdSt|ƒ|krýdS|t|ƒd}    tj||    ƒs'dSt|||tƒtjd||f|ƒt    ||ƒdS(NRxis:ÏÉÃËÊÂÎñ״̬·Ç½øÐÐÖÐÎÞ·¨ÁìÈ¡: affairID=%s,star=%s,state=%sisFÏÉÃËÊÂÎñµ±Ç°Ê£Óàʱ³¤Î´Íê³É: affairID=%s,remainDuration=%s,startTime=%sis!ÏÉÃËÊÂÎñÁì½±: affairID=%s,star=%s(RR RRÿRR}R~RR_RvRmRRt__GetAffairRemainDurationRÃR4t GiveAwardItemRƒtAffairState_Finish(
R9RsR©RoR‹RR‘R•tremainDurationR”((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyRq`s0          cCs5|jtj|ƒ}|d|d}}||fS(Ni
(RmRRu(R9Rst
affairInfoRR‘((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyR}{scCs,|d|}tj|tj||ƒdS(Ni
(RRRRu(R9RsRR‘Rw((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyRƒsc
Cs®|jtj|ƒ}|s dS|jt|ƒgƒ}t|ƒdkrT|dnd}tj|ƒ}|r“t|t    d|dƒdƒ}nt    |||dƒ}    |    S(Niÿÿÿÿiii'gˆÃ@(
RmRRtgetRÃRÇRtGetAffairSpeedPerR tmax(
R9RsRRoR‹R•Rt needDurationtspeedPerR™((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyR–ƒs"$c Csm|dkrRg}tjddƒ}x4td|dƒD]}|j|ƒq8Wn    |g}ttjƒƒ}tjddƒ}g}x|D]y}t||ƒ\}}t    |||||ƒ}    t
j ƒ}
||
_ ||
_ ||
_td|    ƒ|
_|j|
ƒqŒW|sdSt
jƒ} | jƒ|jtjƒ| _|| _t| jƒ| _tj|| ƒdS(NRxiii(tNoneRÿRbR¿RÎR RRR}R–RËttagMCFamilyAffairRotStartStateRtRemainDurationttagMCFamilyAffairInfoRÐRmRRztRefreshFreeCounttAffairInfoListRÇR&R‘RÓ( R9Rst affairIDListRŠRoR‹taffairInfoListRR‘R™RšRE((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyRv“s6                    
    cCs±tjƒj|ƒ}|j}|j}|j}|rY|jƒ|krYtjdƒdS|dkrut||ƒn8|dkr”t    |||ƒn|dkr­t
|ƒndS(Ns ²»ÄÜ×Ô¼º´«¹¦iii( RRRRnRŒtOPDataRR_t__Chuangong_Invitet__Chuangong_Responset__Chuangong_GetAward(R7R´R8R9Rrt tagPlayerIDtopData((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyt OnChuangongOP¾s                 cCsd|jƒ}tjd||f|ƒt||gƒ}tjƒj|ddd|t|ƒƒdS(Ns!´«¹¦Í¬²½GameServer: msgType=%s,%sitFamilyChuangong(RRR_RÃRRòRÇ(R9tmsgTypetmsgDataR©tmsgInfo((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytSendGameServer_FamilyChuangongÐs
 (cCs¦|jƒ}tj|tjƒ}|dkrAtjd|ƒdStjddƒ}|r¢tj    ƒj
tj ƒd}||kr¢tjd||f|ƒdSnt S(NisûÓд«¹¦´ÎÊýÁËR±is)µ±Ç°¿ª·þÌì²»ÄÜ´«¹¦: openServerDay=%s > %s( RtPlayerActivitytGetDailyActionrRemainCntRUtDailyActionID_FamilyChuanGongRR_RÿRbR£R¤tDef_Notify_WorldKey_ServerDayR(R9R©t    remainCnttopenServerDayLimitt openServerDay((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyt__CheckCanChuangong×s   cCs't|ƒsdSt|d|gƒdS(NtInvite(R½Rµ(R9R®((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyR«ås cCst|d||gƒdS(NtResponse(Rµ(R9R®tisOK((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyR¬ìscCsQt|ƒsdStj|tjdƒ|jƒ}|jƒ}d}tjddƒ}t    j
ƒj tj ƒ}t j |ƒ}x‰t|ƒD]{}|jƒ}t j|ƒ}    ttjddƒƒ}
|j|
tjƒ} || 7}t    jd|||    | |f|ƒqŠWtj|tjdƒtj|tjdƒtjddƒ} tj|| ƒg} xt| D]l\}}}tj ƒ}|j!ƒ||_"||_#| j$|ƒtj%d|ƒrdt&|d    |gƒqdqdWtj'ƒ}|j!ƒ||_(|jƒ|_)|tj*|_+|tj*|_,| |_-t.|j-ƒ|_#t/j0||ƒdS(
NiiR±iis5´«¹¦¾­Ñé: ÂÖ´Î=%s,reLV=%s,reExp=%s,finalAddExp=%s, %sitAssistThanksGiftt
ThanksGift(1R½R¶tAddDailyActionFinishCntRUR¸RtGetLVRÿRbRR£R¤t"Def_Notify_WorldKey_WorldAverageLvRR¿tGetPlayerReExptevaltGetFuncCompileCfgtAddExptDef_ViewExpType_ChuangongR_tPlayerWeekPartytAddWeekPartyActionCntRtDef_WPAct_FamilyChuanGongtPlayerTongTianLingtAddTongTianTaskValuetTTLTaskType_ChuanGongRt ItemControlertGivePlayerItemOrMailRËttagMCChuangongItemRÐtItemIDt    ItemCountRÎtGetIpyGameDataNotLogRµttagMCChuangongResulttFromLVtToLVtDef_PerPointValuetExptExpPointt AwardItemListRÇR‘RÓ(R9R©tfromLVttotalExpt    giveRoundtworldlvt playerControlR7treLVtreExptgiveExpt finalAddExpt giveItemListt syncItemListtitemIDt    itemCountt_tsyncItemRE((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyR­ñsN    
' 
          
        c Csetjƒj|ƒ}|j}|jƒ}|jƒsJtjd|ƒdS|dkrïtj|ƒ}|j    t
j ƒ}|rÜ|rÜt j ddƒd}ttjƒƒ|}    |    |krÜtjd|    |f|ƒdSnt|dgƒnr|dkra|j    t
jƒ}
|
r'tjd    |ƒdSt j ddƒ} tj|| ƒ} t|d
| gƒndS( NsûÓÐÏÉÃËÎÞ·¨²Ù×÷Õ䱦¸ó!it    Zhenbaogeii<s-½ñÈÕÒÑ¿³¼Û±ä¸üÏÉÃË¿³¼ÛCDÖÐ! passTimes=%s < %stCutisÕ䱦¸ó½ñÈÕÒѹºÂò!tBuy(RRRtOpTypeRRR_RtGetLeaveFamilyTimeExRmRRåRÿRbR RtSendGameServer_FamilyZhenbaogeRætGetMoney( R7R´R8R9RrR©t leaveTimeExtcutStatet
cutCDTimest    passTimestbuyStateRetplayerMoneyValue((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyt OnZhenbaogeOP-s2          cCs¢|jƒ}tjƒjƒ}tj|tj|ƒsJtjd|ƒdStjd||f|ƒt||gƒ}tj    ƒj
|ddd|t |ƒƒdS(Ns ÇëÇóCDÖÐ...s#Õ䱦¸óͬ²½GameServer: msgType=%s,%sitFamilyZhenbaoge( RRR£tGetTicktSetPlayerTickTimeRt TYPE_Player_Tick_FamilyZhenbaogeR_RÃRRòRÇ(R9R²R³R©R8R´((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyRòMs (c Cs |jtjdƒ|jƒ}|d \}}|d}tjdt|ƒ|ƒ|dkrÁ|d}|ssdStj|d|gƒ|j    tj
ƒstj |tj
dƒt |ƒqnG|dkr|d}|sádS|j    tj ƒ}|rýdS|d\}    }
tjddƒ} |    dkr^tj|| |    dƒs„tjd    |    |ƒdSn&|    dkr„tj|| |     dƒn|
r²tj||
d
dtigd tƒntj||
dd i|    dkrÙdn|     | 6ƒtj |tj dƒt |ƒndS( NiisÏÉÃËÕ䱦¸óGameServer·µ»Ø: %sRît ZhenbaogeCutiRïRísÕ䱦¸ó¹ºÂò»õ±Ò²»×ã! nowPrice=%steventt isNotifyAwardt    moneyInfo(t SetTickByTypeRRþRRRRÃRRÙRmRåRRçRæRÿRbRcRrR~RÑRÒRtNotifyGiveAwardInfo( R9t
resultListR©R²RëtretDatatcutPriceRÀRøtnowPriceRçRe((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pytGameServer_FamilyZhenbaogeRetXsD 
 
 
  (3 cCsJtjƒ}|jtjƒ|_|jtjƒ|_tj    ||ƒdS(N(
RËttagMCFamilyZhenbaogeInfoRmRRåtCutStateRætBuyStateR‘RÓ(R9RE((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyRç…s
 (_RRR
RRRRRURYR.R‘RËR€R#RFRŠRCRHRJRÎRËR¶RÑRdR\R4t PlayerSuccessRÞt    PlayerTJGRÿR1RÚRtrandomR@R5R-RRqRsRvRxRR‰R—R‚RœRŸR¢RQR¯R°R¸R½RER»R³RèRëRîRôRøRýR RRRéR+R?RARãR_RmRR~R˜RtRBRäRpRqR}RƒR–R RvR°RµR½R«R¬R­RúRòR    Rç(((slE:\SnxxServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerFamily.pyt<module>s¸                                     e                             &                                 '                )                               $          +                 <    #
         
F                     +                        <              -