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
Õ­ gc@s$ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
d„Z d„Z e dd„Zd„Zddddd„Zd    „Zd
„Zd „Zd „Zd „Zd„Zd„Zdd„Zd„Zd„ZdS(iÿÿÿÿNcCs¤tj|ƒ}|jƒ}|tjkrK|r4dSt||||ƒdS|sUdS|tjkr~t|||||ƒdS|jƒ}t    |||||ƒdS(N(
tcPickletloadst GetFamilyIDt ShareDefinetDef_ActionType_FamilyAddt__RequestAddFamilyNotetDef_ActionType_FamilyArrestt__AddFamilyArrestNotetGetNametAddFamilyActionNote(t    curPlayert
actionTypet
actionDatatticktactionDataListtfamilyIdt curPlayerName((s]E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerFamilyAction.pyt MapServer_PlayerFamilyActionNote.s  c Csçtjƒ}|j||ƒ}|jƒ}|d}xBtd|ƒD]1}    |j|    ƒ}
|
jƒ} | |krDdSqDW|jƒ} tj    |dƒtj
|d| gƒt | ||||ƒt | |t j t j|g|ƒdS(Nit jiazu_hgg_0tjiazu_hgg_31379(t    GameWorldtGetFamilyActionManagertGetFamilyActiontCounttrangetAtt    GetValue1Rt PlayerControlt
NotifyCodet FamilyNotifyR    RtDef_ActionType_FamilyEventtDef_FamilyActionEvent_Arrest( R
RR RR tallFamilyActionManagert familyActiontfamilyActionCnttarrestIdtindextfamilyActionDatatvalueR((s]E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerFamilyAction.pyRRs  
   "tcCså|tjkr tjdƒtStjƒ}|j||ƒ}|jƒ}    |    tj    j
|dƒkr‰|sotS|j ƒ|j dƒn|j ƒ}
|
j|ƒ|
j|ƒ|
j|ƒ|
j|t|ƒƒtjƒ} tj| tjƒ} ttj| ƒƒ} |
j| ƒt|ƒ}|dkrA|
j|dƒn|dkra|
j|dƒn|dkr|
j|dƒn|dkr¡|
j|dƒn|dkrÁ|
j|dƒn|dkrá|
j|dƒnt S(    Ns¼Ç¼¼Ò×åÐÐΪÀàÐÍ:%s ´íÎóiiiiiii(!RtDef_ActionTypeListRtErrLogtFalseRRRtChConfigtActionTypeSaveCnttgett
SortByTimet    DelActiont    AddActiont SetFamilyIdt SetActionTypetSetNamet
SetUseDatatlentGetCurrentDataTimeStrttimetstrptimetTYPE_Time_FormattinttmktimetSetTimet    SetValue1t    SetValue2t    SetValue3t    SetValue4t    SetValue5t    SetValue6tTrue(tcurNameRR RR t isClearNonetuseDataR R!R"tfamilyActionObjt
curTimeStrt curTimeTuplet
curTimeNumt actionDataLen((s]E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerFamilyAction.pyR    xsD   
             cCs·|d}t|ƒdkr&|dn tj|ƒ}|jƒ}tjƒ}|j|ƒ}|swtjd|ƒdS|jƒ}    |    t    j
kr°tj d||j ƒƒdS|    t    j krƒddl}
|
j|tjƒ} |jƒ| krƒ|jƒtjkrƒ|
j||tjƒ|
j||d|jƒgƒtj|d|jƒgƒ|jƒtj d||j ƒƒdSntjƒ} | j||ƒ} | jƒ}xRtd|ƒD]A}| j|ƒ}|jƒ}||kr½tj|d    ƒdSq½W|j ƒ|jƒ|j ƒ|tj!|tj!g}t"|||||t#ƒ}|sktj|d
ƒnHt$|gƒ}|j%ddd |t|ƒƒtj|d ƒt&|ƒdS( Niis-__RequestAddFamilyNote Err not Id = %s familys/__RequestAddFamilyNote FamilyID = %s RefuseJoiniÿÿÿÿtXW_JZ_EnterFamilytXW_JZ_EnterFamilyInfos.__RequestAddFamilyNote FamilyID = %s AgreeJointjiazu_pan_143504tjiazu_pan_141056t    FamilyAddtjiazu_pan_500807('R5Rt GetFightPowerRRtGetFamilyManagert
FindFamilyR)t GetAcceptJoinRtFamilyAcceptJoin_RefusetLogtGetIDtFamilyAcceptJoin_Agreet PlayerFamilytGetFamilySettingR+tDef_FamilySetting_MaxMemberCnttGetCounttGetLVtDef_Family_JionMinLVtDoPlayerJionFamilytIPY_GameServert    fmlMembertNotifyAllFamilyMemberMsgRtBroadcast_FamilyChangeRRRRRtGetJobtDef_PerPointValueR    R*tstrtMapServer_QueryPlayerResulttNotifyFamilyRequestInfo(R
R RR trequestAddFamilyIDt
fightPowertrequestPlayerNamet familyManagert    curFamilytcurAcceptJoinTypeRZt maxMemberCntR R!R"R$R%tnametresulttsendMsg((s]E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerFamilyAction.pyR¶sP
+    '
    5
icCs%tjƒ}|dkr’|dkr’|dkr’|dkr]|j||ƒt||ƒdSx.tjD]#}|j||ƒt||ƒqgWdS|j||ƒ}|jƒ}|jƒg}xÖt    d|ƒD]Å}    |j
|    ƒ}
t |
j ƒƒ} t jtjt j| ƒƒ} t tj| ƒdƒ} |rF| |krFqÐn|dkrj|
jƒ|krjqÐn|rˆ|
jƒ|krˆqÐn|j|    ƒqÐW|gkr©dSt|ƒ|krÜ|j||ƒt||ƒdSd} x/|D]'}    |    | }|j|ƒ| d7} qéWt||ƒ| S(NiR'iÿÿÿÿii(RRtDelFamilyActiont__DoDelFamilyActionOverLogicRR(RRR.RRR:tGetTimeR7tstrftimeR+R9t    localtimet GetPastHourRt
GetUseDatatappendR5R/(RR tdaytplayerIDRFR R!R"tclearIndexListR$R%tnoteTimet pastTimeDaytclearCntt
clearIndex((s]E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerFamilyAction.pytClearFamilyActionýsN $   
 
  cCs?tjƒj|ƒ}|sdS|tjkr;t|ƒndS(N(RRSRTRRRi(RR tfamily((s]E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerFamilyAction.pyRu6s  cCsŒtjƒ}|j|jƒtjƒ}|jƒ}|dkrCtSxBtd|ƒD]1}|j    |ƒ}|j
ƒ}||krSt SqSWtS(Ni( RRRRRRRR*RRRRC(R
R#R R!R"R$R%R&((s]E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerFamilyAction.pytGetFamilyArrestOverStateDs     cCstjƒj|ƒ}|jƒ}|s+dStjƒ}|j|tjƒ}|jƒ}g}xt    d|ƒD]p}|j
|ƒ}    |    j ƒ}
|    j ƒ} t jƒ} t|
ƒ| _|
| _| | _d| _|j| ƒqnWt jƒ} t|ƒ| _|| _tj|| ƒdS(Nii(RtGetPlayerManagertGetPlayerByIndexRRRRRRRRRRtChPyNetSendPackttagFamilyArrestOverStateR5tNameLentNametIDt    OverStateR{ttagFamilyArrestOverStateInfotArrestOverStateInfot NetPackCommont SendFakePack(R$t
cliendDataR R
RR R!R"tpackListR%t
playerNameR#tfamilyArrestOverStatetfamilyArrestOverStateInfo((s]E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerFamilyAction.pytQueryFamilyArrestOverStateds.                       cCstj|ƒrdS|jƒ}|dkrFtjd|jƒƒdStjƒ}|j|tj    ƒ}|j
ƒ}g}x`t d|ƒD]O}|j |ƒ}|j ƒ}|jƒ}    |jƒ}
|jƒ} |jƒ} |jƒ} | |jƒtj7} tjƒj|
ƒ}|s!d}n9d}|jƒ} tj|ƒ| krZtj|ƒ} ntjƒ}|
|_t|ƒ|_||_| |_ | |_!| tj|_"| tj|_#|    |_$||_%|j&|ƒq‰Wtj'ƒ}|j(ƒ||_)||_*t+j,||ƒdS(Nis.ViewFamilyRequestInfo playerID = %s not familyi(-RtGetIsTJGRRR)RXRRRRRRRRRvRt    GetValue2t    GetValue3t    GetValue4t    GetValue5R+RfR†tFindPlayerByIDR^RRRˆttagtMemberInfotPlayerIDR5RŠR‹tPlayerLVtPlayeJobtPlayeFightPowertPlayeFightPowerExt RequestTimetIsOnLineR{ttagGCViewFamilyRequestInfotCleartRequestMemberCountt
MemberInfoRR‘(R
tfamilyIDR R!R"R“R$R%Rlt requestTimeR}tplayerLVt    playerJobRkt    tagPlayertisOnLinet
memberInfotrequestMemberInfo((s]E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerFamilyAction.pytViewFamilyRequestInfo“sV                                         
        cCs—ddl}tjƒ}xxtd|jƒƒD]a}|j|ƒ}|j|jƒƒ}|dkrjq.n|j    |t
j ƒs…q.nt |ƒq.WdS(Niÿÿÿÿi( RZRR†RR]tGetAtRt GetPlayerIDtNonetGetFamilyMemberHasPowR+tDef_PurviewDictKey_CanCallR²(RnRZt playerManagertit notifyMembert notifyPlayer((s]E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerFamilyAction.pyRiÉs   cCs}tjƒj|ƒ}|sdS|j}|j}|tjkri|jƒ}|sVdS||kridSnt|||ƒdS(N(    RR†R‡t
ActionTypetFamilyIDR+tDef_QueryNoLimit_ActionTypeListRtSendFamilyActionInfo(R$R’R R
R RªtplayerFamilyId((s]E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerFamilyAction.pytQueryFamilyActionInfoås          c Csõtjƒj||ƒ}|jƒ}tjƒ}|jƒ||_||_g|_    xôt
|ƒD]æ}|j |ƒ}tj ƒ}|jƒ|j ƒ|_|jƒ|_t|jƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ|_ t|j ƒ|_!|j    j"|ƒqbWt|j    ƒ|_|rxt#j$||ƒdStj%ƒj&|ƒ}    |    s—dSxWt
|    j'ƒƒD]C}|    j(|ƒ}
|
j)ƒ}|dkrÝqªnt#j$||ƒqªWdS(N(+RRRRRˆttagGCFamilyActionInfoR§R½R¼tFamilyActionListtxrangeRttagGCFamilyActionRvtTimeRR‹R5RŠRtValue1R™tValue2RštValue3R›tValue4RœtValue5t    GetValue6tValue6RztUseDatat
UseDataLenR{RR‘RSRTR]R³t    GetPlayerRµ( R
RªR R!R"tactionInfoPackR$R%R R„t    curMember((s]E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerFamilyAction.pyR¿þsJ  
             
  c    Csýt|tƒs|g}n|s%dS|d}|jƒ}tjƒ}|jƒ||_|jƒ|_g|_    xß|D]×}tj
ƒ}|jƒ|j ƒ|_ |j ƒ|_t|jƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ|_t|jƒ|_|j    j |ƒqyWt|j    ƒ|_!|r€t"j#||ƒdSt$j%ƒj&|ƒ}|sŸdSxWt'|j(ƒƒD]C}|j)|ƒ}|j*ƒ}|dkråq²nt"j#||ƒq²WdS(Ni(,t
isinstancetlistt GetFamilyIdRˆRÂR§R½t GetActionTypeR¼RÃRÅRvRÆRR‹R5RŠRRÇR™RÈRšRÉR›RÊRœRËRÌRÍRzRÎRÏR{RRR‘RRSRTRÄR]R³RÐRµ(    RR
R%RªRÑR R„R$RÒ((s]E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerFamilyAction.pytSendFamilyAction0sP 
 
          
  cCsF|dkrdSt|tjd|ƒ}tjd|||fƒdS(NiR}s;ɾ³ý¼Ò×å¹ÙԱģÐÍ×°±¸ÐÅÏ¢£¡familyID=%s,playerID=%s,delCnt=%s(RƒRt Def_ActionType_OfficerModelEquipRtDebugLog(Rªt delPlayerIDR((s]E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerFamilyAction.pytDelFamilyOfficerModelEquipfs
 c    Csítjƒj|ƒ}|dkr%dS|j|ƒ}|dkrDdS|jƒ}|tjkrcdSg}|ssdSd}tj    }tj
ƒj ||ƒ}|j ƒ}    xBt |    ƒD]4}
|j|
ƒ} | jƒ|kràq³n| }Pq³W|s/|    tjj|dƒkr tjd|    ƒn|jƒ}n|jƒ} |jƒ} |j|ƒ|j|ƒ|j| ƒ|j|ƒ|j| ƒ|j|ƒt|ƒ}|j|t|ƒƒtj d||| | |t|ƒ|j ƒfƒdS(Nis<UpdFamilyOfficerModelEquip familyActionCnt=%s ÒÑ´ïµ½×î´óÖµ£¡sd¸üмÒ×å¹ÙԱģÐÍ×°±¸ÐÅÏ¢: familyID=%s,playerID=%s,name=%s,job=%s,memLV=%s,useData=%s,actionNowCnt=%s(!RRSRTRµt
FindMembert GetFamilyLVRaRbRRØRRRRÄRRR+R,R-R)R0RReR1R2R3R=R>R?RgR4R5RÙ(RªR}RnRÒtmemberLVtmodelEquipInfoListt findActionObjR R!R"R¹R t
memberNamet    memberJobRF((s]E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerFamilyAction.pytUpdFamilyOfficerModelEquiposN                     )(R7RR+RRˆtPlayerViewCacheRRRatDataRecordPackRRRRCR    RRƒRuR…R—R²RiRÁR¿RµR×RÛRã(((s]E:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\Player\PlayerFamilyAction.pyt<module>s2                   $    &>    G9             /    6            2 6