hwj35
2025-06-16 12bfd1cd414e0fa14310a800df8288a844d6489f
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
171
172
173
ã+gc@s¡ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZdZdZdZdZeeZdZdZdZd    Zd
Zd Zd Zd „Zd„Zd„Zd„Z d„Z!d„Z"d„Z#d„Z$d„Z%d„Z&d„Z'd„Z(d„Z)d„Z*d„Z+d„Z,d„Z-d„Z.d„Z/d „Z0d!„Z1d"„Z2d#„Z3d$„Z4d%„Z5d&„Z6d'„Z7d(„Z8d)„Z9d*„Z:d+„Z;d,„Z<d-„Z=d.„Z>d/„Z?d0„Z@eAd1„ZBd2„ZCd3„ZDd4„ZEd5„ZFd6„ZGd7„ZHd8„ZId9„ZJd:„ZKd;„ZLd<„ZMd=„ZNd>„ZOdd?„ZQd@„ZRdA„ZSgdB„ZTdC„ZUdD„ZVeAdE„ZWdF„ZXdG„ZYdH„ZZdI„Z[dJ„Z\dK„Z]dL„Z^dM„Z_dN„Z`dO„ZadP„ZbdQ„ZcddR„ZddS(SiÿÿÿÿNiiiii i i iiiiccCs
|jƒS(N(t    GetValue1(trecData((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytGetBatRecGroupIDEscCs |j|ƒS(N(t    SetValue1(RtgroupID((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytSetBatRecGroupIDFscCs
|jƒS(N(t    GetValue2(R((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytGetBatRecRoundNumGscCs |j|ƒS(N(t    SetValue2(RtroundNum((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytSetBatRecRoundNumHscCs
|jƒS(N(t    GetValue3(R((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytGetBatRecFamilyIDAIscCs |j|ƒS(N(t    SetValue3(Rt    familyIDA((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytSetBatRecFamilyIDAJscCs
|jƒS(N(t    GetValue4(R((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytGetBatRecFamilyIDBKscCs |j|ƒS(N(t    SetValue4(Rt    familyIDB((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytSetBatRecFamilyIDBLscCs
|jƒS(N(t    GetValue5(R((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytGetBatRecWinFamilyIDMscCs |j|ƒS(N(t    SetValue5(Rt winFamilyID((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytSetBatRecWinFamilyIDNscCs
|jƒS(N(t GetStrValue1(R((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytGetBatRecFamilyNameAOscCs |j|ƒS(N(t SetStrValue1(Rt familyNameA((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytSetBatRecFamilyNameAPscCs
|jƒS(N(t GetStrValue2(R((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytGetBatRecFamilyNameBQscCs |j|ƒS(N(t SetStrValue2(Rt familyNameB((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytSetBatRecFamilyNameBRscCs |jƒsgSt|jƒƒS(N(t GetStrValue3teval(R((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytGetBatRecDissolutionIDSscCs|jt|ƒƒS(N(t SetStrValue3tstr(RtdissFamilyIDList((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytSetBatRecDissolutionIDTscCs
|jƒS(N(R(tchampionRecData((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytGetFWChampionFamilyID_scCs |j|ƒS(N(R(R+tfamilyID((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytSetFWChampionFamilyID`scCs
|jƒS(N(R(R+((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytGetFWChampionLeaderIDascCs |j|ƒS(N(R(R+tleaderID((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytSetFWChampionLeaderIDbscCs
|jƒS(N(R (R+((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytGetFWChampionWinCountcscCs |j|ƒS(N(R (R+twinCount((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytSetFWChampionWinCountdscCs
|jƒS(N(R(R+((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytGetFWChampionWinRewardAllotescCs |j|ƒS(N(R(R+t allotWinCount((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytSetFWChampionWinRewardAllotfscCs
|jƒS(N(R(R+((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytGetFWChampionEndWinCountgscCs |j|ƒS(N(R(R+t endWinCount((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytSetFWChampionEndWinCounthscCs
|jƒS(N(R(R+((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytGetFWChampionFamilyNameiscCs |j|ƒS(N(R(R+t
familyName((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytSetFWChampionFamilyNamejscCs|jt|ƒƒS(N(R!R((R+temblemID((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytSetFWChampionFamilyEmblemIDkscCs
|jƒS(N(R(R((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytGetFWMemPlayerIDrscCs |j|ƒS(N(R(RtplayerID((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytSetFWMemPlayerIDsscCs
|jƒS(N(R(R((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytGetFWMemFamilyIDtscCs |j|ƒS(N(R(RR-((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytSetFWMemFamilyIDuscCs
|jƒS(N(R (R((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytGetFWMemIsJoinvscCs |j|ƒS(N(R (RtisJoin((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytSetFWMemIsJoinwscCsµit_gt_tjƒjtjƒ}xpt|j    ƒƒD]\}|j
|ƒ}t |ƒ}t |ƒ}|tjkrŒtjj |ƒn|tj|<q=WtjdtjƒdS(Ns¼ÓÔØÏÉÃËÁªÈü²ÎÈüÏÉÃËID: %s(t
PyGameDatatg_familyWarMemDicttg_familyWarFamilyIDListt    GameWorldtGetUniversalRecMgrt GetTypeListt ShareDefinet(Def_UniversalGameRecType_FamilyWarMembertxrangetCounttAtR@RCtappendtLog(t warMemRecListtiRt warPlayerIDt warFamilyID((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytOnGameServerInitOKzs          cCsÿgt_gt_tjƒ}x<tjjƒD]+}|j|ƒ}|r.t|dƒq.q.Wit_t    j
t    j dƒt    j
t    j dƒt    j
t    j dƒ|rêtjƒjtjƒtjƒjtjƒtjƒjtjƒntjd|ƒdS(NisÖØÖÃÏÉÃËÁªÈü£¡isDelRec=%s(RHtg_familyWarFightingIDListRJRKtGetPlayerManagerRItkeystFindPlayerByIDt__NotifyPlayerJoinFamilyInfotPlayerDBGSEventtSetDBGSTrig_ByKeytDef_FamilyWar_RoundtDef_FamilyWar_AllOvertDef_FamilyWar_StartWorldLVRLtDeleteRNt(Def_UniversalGameRecType_FamilyWarBattlet*Def_UniversalGameRecType_FamilyWarChampionRORT(tisDelRect playerManagerRAtplayer((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytDoFamilyWarResets"             cCs’|jƒ}|jƒ}|tjkr;tj|dƒtSttj|ƒ}||krntj|dƒtSt|ƒsŽtj|dƒtSt    S(NtPlayerNotInFamilyWarMemListtPlayerWarFamilyIDIsChangetPlayerFamilyWarIsOver(
t GetPlayerIDt GetFamilyIDRHRIt PlayerControlt
NotifyCodetFalseRCtIsFamilyInWarFightingtTrue(t    curPlayerRAR-RX((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyt!CheckPlayerCanEnterFamilyWarFBMap¦s    cCs |tjkS(N(RHRZ(R-((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyRs¸scCsFt|ƒtjƒ}|jtjtjƒ}|rBt|ƒndS(N(    tCheckPlayerJoinFamilyWarInfoRKt GetGameWorldt GetDictByKeyRNtDef_Notify_WorldKey_FBFuncStatetChConfigtDef_FBMapID_FamilyWartSync_FamilyWarInfo(t    curFamilyRut    gameWorldtstate((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyt OnPlayerLogin¼s 
  cCs`|jƒ}|tjkrdSttj|ƒ}| sK|jƒ|krOdSt||ƒdS(N(RnRHRIRCRoR^(RuRAt joinFamilyID((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyRwÄs  cCs€d}|r<tjƒj|ƒ}|s-dn    |jƒ}ntjƒ}||_||_t|jƒ|_    t
j ||ƒdS(Nt( RKtGetFamilyManagert
FindFamilytGetNametChPyNetSendPackttagGCPlayerJoinFamilyWarInfot JoinFamilyIDtJoinFamilyNametlentJoinFamilyNameLent NetPackCommont SendFakePack(RuR‚tjoinFamilyNamet
joinFamilytjoinFamilyWarInfo((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyR^Ïs         c
    Cs.t}tjƒ}|jtjƒ}xÀt|jƒƒD]¬}|j|ƒ}t    |ƒ}t
|ƒ}|||gkr7t |ƒ}    ||    krã|    j |ƒt ||    ƒtjd|t|ƒt|ƒ|||    fƒt}qãq7q7W|rtjdtjƒn|r*tjd||fƒtƒndS(Nsw¸üÐÂÏÉÃËÁªÈü¶ÔÕ½¼Ç¼½âÉ¢ÏÉÃËIDÊý¾Ý: delFamilyID=%s,roundNum=%s,groupID=%s,familyIDA=%s,familyIDB=%s,dissFamilyIDList=%ss?½âÉ¢ÏÉÃË£¬´¥·¢¸üÐÂÏÉÃËÁªÈüÅÅÃû: delFamilyID=%s,familyWarRank=%s(RrRKRLRMRNReRPRQRRR RR&RSR*RTRRRttPlayerUniversalGameRectSendUniversalGameRecInfotNonetUpdFamilyWarRank(
R-t familyWarRankt isWarFamilytuniversalRecMgrt warBatRecListRVRRRR)((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytOnDeleteFamilyÜs*           &
cCs@|s
dStƒ}t|ƒ}||kr/dSt||ƒdS(N(tGetFamilyWarChampionRecDataR,R1(R-R0R+tchampionFamilyID((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytOnChangeFamilyLeaderûs       c    Cs
t}tjƒ}|jtjƒ}xÃt|jƒƒD]¯}|j|ƒ}t    |ƒ}t
|ƒ}|||gkr|q7nt }||kržt ||ƒn||krºt ||ƒntjd|t|ƒt|ƒ||fƒq7W|rtjdtjƒndS(NsNÏÉÃËÁªÈüÏÉÃ˸ÄÃû: familyID=%s,roundNum=%s,groupID=%s,familyIDA=%s,familyIDB=%s(RrRKRLRMRNReRPRQRRR RRtRR#RTRRR’R“R”(    R-R<R—R˜R™RVRRR((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytOnRenameFamilys&         'cCsÅtjd|ƒ|tkr'tƒnš|tkr@ttƒn|tkrYttƒnh|t    krot
ƒnR|t krˆtt ƒn9|t kr¡tt ƒn |tkr°ntjd|ƒdS(NsÏÉÃËÁªÈü״̬±ä¸ü: stateValue=%ss#²»´æÔÚ¸ÃÏÉÃËÁªÈü״̬£¡stateValue=%s(RKRTtFamilyWarState_FirstRoundGroupt DoLogicFamilyWar_FirstRoundGrouptFamilyWarState_FirstRoundBattletOnFamilyWar_StarttFamilyWarRound_FirsttFamilyWarState_FirstRoundOvertOnFamilyWar_OvertFamilyWarState_SecondRoundGroupt!DoLogicFamilyWar_SecondRoundGroupt FamilyWarState_SecondRoundBattletFamilyWarRound_SecondtFamilyWarState_SecondRoundOvert FamilyWarState_NextWeekGroupRanktErrLog(t
stateValue((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytOnFamilyWarStateChanges" 
 
     cCsttƒƒ}tjtj|ƒtjƒjtjt    j
ƒ}t j t j ƒ}|r{|r{tjtjt|ƒƒndS(N(R,R›RKtSendMapServerMsgExRNt$Def_Notify_WorldKey_ChampionFamilyIDRxRytDef_Notify_WorldKey_FBCanEnterR{R|R_tGetDBGSTrig_ByKeyRat Def_Notify_WorldKey_VSFamilyInfotGetRoundOpenFBVSFamilyInfo(RœtcanEnterR    ((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytOnMapServerInitOKEs c Cs7tƒ}t|ƒ}t|ƒ}tjd||fƒg}tjƒ}|jtjƒ}t    }|j
ƒ}xÂt |ƒD]´}    |j |    ƒ}
|t |
ƒkr¨q{n|dkpÄ| oÄ|tk} | rÖt}nt|
ƒ} t|
ƒ} t|
ƒ}t|
ƒ}| s| r4tjd|    | | fƒq{nt|
ƒ}|rftjd|    | | fƒq{nt|
ƒ}|r›tjd|    | | |fƒq{nt|
ƒ}tj| ƒ}tj| ƒ}| |kr×|nd}| |krï|nd}|j| ||| | g||g||g||ggƒq{W|S(Ns=    ÏÉÃËÁªÈüÀúÊ·¹Ú¾ü: championFamilyID=%s,championWinCount=%sis>    ÓÐÏÉÃËÂÖ¿Õ£¬²»¿ªÆô±¾³¡±ÈÈü£¡i=%s,familyIDA=%s,familyIDB=%ss>    ÓÐÏÉÃ˽âÉ¢£¬²»¿ªÆô±¾³¡±ÈÈü£¡i=%s,familyIDA=%s,familyIDB=%ssQ    ÒÑÓÐʤ¸º½á¹ûµÄ£¬²»¿ªÆô±¾³¡±ÈÈü£¡i=%s,familyIDA=%s,familyIDB=%s,winFamilyID=%si(R›R,R2RKRTRLRMRNReRrRQRPRRRR©RtR RRR R&RRt PlayerFamilytGetFamilyIDRankRS(R    R+RœtchampionWinCountt vsFamilyInfoR˜R™tfinalMatchStatetwarBatRecCountRVRt isFinalMatchRRRR"tdisFamilyIDListRRt familyRankAt familyRankBt    winCountAt    winCountB((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyR´RsN                       >c    Csòtjtjƒ}||kr9tjd||fƒdStjd|ƒt|ƒ}tjd|ƒgt_x%|D]}tjj    |t
j ƒqwWtj t
j |ƒ|rît|ƒ}tjƒjdddtjd|t|ƒƒndS(Ns;µ±Ç°ÂÖ´ÎÒì³£Êý¾Ý£¬ÎÞ·¨¿ªÆôÏÉÃËÁªÈü!dbRound=%s,startRound=%ss1==========ÏÉÃËÁªÈüÕ½¶·¿ªÊ¼, µ±Ç°ÂÖ´Î(%s)=========s    vsFamilyInfo=%sitFamilyWarStart(R_R²RaRKR¬RTR´RHRZtextendRNtVSFamilyInfo_FamilyIDListR¯R³R(R[tMapServer_QueryPlayerR{R|R‹(R    tcurRoundRºtvsFamilytmsgInfo((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyR¢ƒs         cCsÑtjtjƒ}|tkr/tjdƒdS|dkrPtjd|ƒdStjdƒtjtj    dƒt
j ƒi}x-t j jƒD]\}}t|ƒ||<qWit _ gt _tjƒ}|jtjƒ|jtjƒ|jtjƒ}|jtjƒ}t}g}i}    tjƒ}
t
jƒ} t| ƒ} tjddƒ} tjd| ƒx¯t| ƒD]¡\}}|
j|ƒ}|s¶tjd||fƒqxn|jƒ| krëtjd    ||jƒ| fƒnÙ|j |ƒt jj |ƒg}x©t!|j"ƒƒD]•}|j#|ƒ}|j$ƒ}|j%ƒ}t&|||ƒ}|j'|dƒ}|r |r ||kr |r t(||ƒn|r!|j |ƒq!q!W||    |<t|ƒt)ksæ|| dkrxt*|||ƒ|dkrPq|d8}g}qxqxWtjtj+ƒ}tjtj,|ƒtjd
t jƒtjd |    ƒtjd |j-ƒƒtjd |j-ƒƒtjd|ƒtjdƒtjtjtƒt.ƒdS(NsÏÉÃËÁªÈüÒѾ­´¦Àí¹ýÊ×ÂÖ·Ö×飡is1ÏÉÃËÁªÈü´¦Àí¹ýÊ×ÂÖ·Ö×éÂִμǼֵÒì³££¡curRound=%ss0============= ¿ªÊ¼ÏÉÃËÁªÈü·Ö×éÊ×ÂÖ =============tFamilyMatchSetis×îµÍ²ÎÈüÏÉÃ˵ȼ¶£º %ss2ÏÉÃËÁªÈüÊ×ÂÖ·Ö×éʱÎÞ·¨ÕÒµ½¸ÃÏÉÃË: i=%s,familyID=%ssBÏÉÃ˵ȼ¶²»×㣬ÎÞ·¨²ÎÓëÁªÈü£¡familyID=%s,LV=%s,joinFamilyLVLimit=%ss*    PyGameData.g_familyWarFamilyIDList: %ss    warFamilyMemInfo: %ss    Í¨ÓüǼ¶ÔÕ½¼Ò×åÊý: %ss    Í¨ÓüǼ²ÎÓëÍæ¼ÒÊý: %ss    µ±Ç°ÊÀ½çµÈ¼¶: %ss"    ÏÉÃËÁªÈüÊ×ÂÖ±ÈÈü·Ö×éÈ·ÈÏÍê±Ï£¡(/R_R²RaR£RKtDebugLogR¬RTR`RbR·t DoFamilySortRHRItitemsRCRJRLRdRNReRORMtFamilyWar_MaxGroupIDR„tGetSortFamilyIDListR‹t IpyGameDataPYt
GetFuncCfgt    enumerateR…tGetLVRSRPtGetCounttGetAtRnt    GetPlayertAddFamilyWarMemtgetR^tFamilyWar_GroupFamilyCountt__DoFristRoundRandBattlet"Def_Notify_WorldKey_WorldAverageLvRcRQR}(RÇtlastFamilyWarMemDictRWRR˜R™RURtgroupFamilyListtwarFamilyMemInfot    familyMgrtsortFamilyIDListt familyCounttjoinFamilyLVLimitRVR-tfamilyt warMemIDListtindext    curMembert memPlayerIDt    memPlayertisAddOKtlastJoinFamilyIDtworldLV((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyR šs„    
            #   
" 
  cCs×|tjkr$tjd|ƒdS|tjkr^tjd||ttj|ƒfƒdS|stjƒjtj    ƒ}n|s‰dS|j
ƒ}t ||ƒt ||ƒ|tj|<tjd||fƒt S(Ns)·Ç²ÎÈüÏÉÃË£¬²»ÄÜÌí¼Ó²ÎÈü³ÉÔ±£¡familyID=%ssT±¾ÖÜÒѾ­Ìí¼Ó¹ý¸Ã³ÉÔ±ËùÊô²ÎÈüÏÉÃË£¬²»Öظ´Ìí¼Ó£¡playerID=%s,familyID=%s,warFamilyID=%ss1    Ìí¼ÓÏÉÃËÁªÈüÕ½¶·ÈËÔ±: playerID=%s,familyID=%s(RHRJRKRËRIRCRLRMRNROtAddRecRBRDRt(RAR-RUR((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyR×ïs"        cCsÌ|jƒtjkrdS|jƒ}|jƒ}|tjkrDdStj|}t|ƒrqtj    d|ƒdSt
|ƒ}||kr§tj    d||f|ƒdSt |dƒtj d||ƒdS(NsÒѾ­½øÈë¹ýÏÉÃËÁªÈüÕ½³¡! s6½øÈëÕ½³¡Ê±²ÎÈüÏÉÃËID²»Ò»ÖÂ! familyID=%s,warFamilyID=%sis!Íæ¼Ò½øÈëÏÉÃËÁªÈüÕ½³¡: familyID=%s( tGetMapIDR{R|RnRoRHRIRERKRËRCRGRT(RuRAR-RRX((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytOnPlayerChangeMaps"       c CsÓ|s
dStj|ƒt}x¯|rÎ|d }|d}|d}t|ƒdkr`|dnd}|jƒ|jƒ}}|s‹dn    |jƒ}    |s£dn    |jƒ}
t|||||    ||
ƒq WdS(NiiiRƒ(trandomtshuffleR£R‹R”tGetIDR†tAddFamilyWarBatRec( R™RRÝR    t vaFamilyListtfamilyAtfamilyBRRRR"((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyRÚs     
 
 
" c
 
Csç| r| rdS|jƒ}t||ƒt||ƒt||ƒt||ƒt||ƒt||ƒg}    |r”||kr”|    j|ƒn|r¶||kr¶|    j|ƒnt||    ƒt    j
d|||||    fƒdS(NsX    AddRec roundNum=%s,groupID=%s,familyIDA(%s) VS familyIDB(%s), setDissFamilyIDList=%s( RìRR
RRRR#RSR*RKRT(
R™R    RRRRR"R¾RtsetDissFamilyIDList((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyRò+s$            c
Csetjtjƒ}|tkr/tjdƒdS|tkrPtjd|ƒdStjdƒi}tj    ƒ}|j
t j ƒ}xvt |jƒƒD]b}|j|ƒ}tt|ƒkrÁq”nt|ƒ}|j|gƒ}|j|ƒ|||<q”Wt}t}x8t tƒD]*}t|}tjd|ƒ||kr]tjd||fƒqn||}t|ƒdkr–tjd||fƒqn|\}    }
t|    ƒ\} } } }}t|
ƒ\}}}}}||}tjd| || |fƒt|||| || ||ƒt|||| ||||ƒqWtjd    ƒtjtjtƒdS(
NsÏÉÃËÁªÈüÒѾ­´¦Àí¹ý´ÎÂÖ·Ö×飡s1ÏÉÃËÁªÈü´¦Àí¹ý´ÎÂÖ·Ö×éÂִμǼֵÒì³££¡curRound=%ss0============= ¿ªÊ¼ÏÉÃËÁªÈü·Ö×é´ÎÂÖ =============s-----groupID=%s-----s3    Ã»Óиü¶±ð±ÈÈü£¬½áÊø·Ö×é!roundNum=%s,groupID=%sis=    Ê×ÂÖ±ÈÈü²»ÊÇÁ½³¡£¬Ö±½ÓÌø¹ý´ÎÂÖ±ÈÈü!roundNum=%s,groupID=%ss]    Ê¤Õß¶ÔʤÕߣ¬°ÜÕß¶Ô°ÜÕß: winFamilyID1=%s,winFamilyID2=%s,loseFamilyID1=%s,loseFamilyID2=%ss"    ÏÉÃËÁªÈü´ÎÂÖ±ÈÈü·Ö×éÈ·ÈÏÍê±Ï£¡(R_R²RaR©RKRËR£R¬RTRLRMRNReRPRQRRRRRØRSRÎR‹t"__GetWinLoseFamilyInfoForNextRoundRòR`(RÇtsecondRoundBatDictR˜R™RVRRtfristRoundBatRecR    trecData1trecData2t winFamilyID1twinFamilyName1t loseFamilyID1tloseFamilyName1tdisFamilyIDList1t winFamilyID2twinFamilyName2t loseFamilyID2tloseFamilyName2tdisFamilyIDList2R¾((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyR§BsT       
 
 
    # c
Cs²t|ƒ}t|ƒ}t|ƒ}t|ƒ}t|ƒ}|sZt|||tƒ}n||kr{|}|}|}n|}|}|}|}t|ƒ}    |||||    fS(sâ¸ù¾ÝÉÏÒ»ÂÖ±ÈÈü½á¹û»ñÈ¡ÓÐ×ʸñ²ÎÓëÏÂÒ»ÂÖ±ÈÈüµÄʤÕßÓë°ÜÕßÏÉÃËÐÅÏ¢
    @param recData: ÉÏÒ»ÂÖ±ÈÈü½á¹û¼Ç¼Êý¾Ý
    ×¢: ÉÏÒ»ÂÖµÄʤÕßÓë°ÜÕß²¢²»Ò»¶¨¶¼ÓÐ×ʸñ²ÎÓëÏÂÒ»ÂÖ±ÈÈü£¬±ØÐëÂú×ãÆäÖÐÒ»¸öÏÉÃËδ½âÉ¢£¨¿ÉÄÜÈüǰ¡¢Èüºó½âÉ¢£©²ÅÄܲÎÓë;
    (R RRR Rt__SetBatRecWinFamilyIDBySystemRrR&(
RRRRR"Rt winFamilyNamet loseFamilyIDtloseFamilyNameR¾((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyR÷|s"           c Cst|ƒ}|r|Sd}t|ƒ}|râ||krl||krl|}tjd||||fƒq¯|r°|r°||krŠ|n|}tjd||||fƒq¯|s¼|n|}tjd||||fƒnÍ| rN|rN|rNtj|ƒ}tj|ƒ}||kr%|n|}tjd|||||fƒna| s\| r‹|sh|n|}tjd|||fƒn$|r¯tjd|||fƒdS|sÊ|sÁ|n|}n|sÔdSt||ƒtjƒ}|j    |ƒ}    |    stjd|ƒ|St
j d    d
ƒ}
t
j d    d ƒ} t |ƒ} d
| kodt | ƒknrw| | d
n| d} g}g}xD|
D]<\}}}|j|td
t|| d ƒƒ|gƒq”Wx<t|    jƒƒD](}|    j|ƒ}|j|jƒƒqçWt|ƒ}tjd |||| gƒt
j ddƒ}tjd|||gƒtjd|| || ||fƒ|S(sM ÏµÍ³¼ì²éÉèÖñÈÈüʤÕßÏÉÃË
    @param isFight: ÊÇ·ñÊDZÈÈüÖеģ¬Èç¹ûÊÇ£¬Ôò²»ÉèÖÃʤÕߣ¨ÂÖ¿Õ¼°½âÉ¢µÄ³ýÍ⣩
                        µ±²»ÊÇʱ£¬ÏµÍ³Ò»¶¨»áÇ¿ÖÆÉèÖÃÒ»¸öʤÕßÏÉÃËID£¬¼´Ê¹¸ÃÏÉÃËÒѾ­½âÉ¢£¡
    Ê×ÂÖÓÐδÕý³£½áÊøµÄ£¬´ÎÂÖ¿ªÊ¼·ÖÅäʱ½øÐв¹´¦Àí
    ´ÎÂÖÓÐδÕý³£½áÊøµÄ£¬ÏÂÖÜ·Ö×鶨¼¶Ê±½øÐв¹´¦Àí
    ²¹´¦ÀíµÄÇé¿ö£¬Ò»¶¨»áÉèÖÃÒ»¸ö»ñʤID
    is`        Á½¸öÏÉÃ˶¼ÒѾ­½âÉ¢£¬Ä¬ÈÏAʤ£¡familyIDA=%s,familyIDB=%s,disFamilyIDList=%s,winFamilyID=%ss_        ¶ÔÕ½ÏÉÃËÒѾ­½âÉ¢, Ö±½Ó»ñʤ: familyIDA=%s,familyIDB=%s,disFamilyIDList=%s,winFamilyID=%ssd        ±ÈÈüÂÖ¿Õ, µ«ÏÉÃËÒѽâÉ¢, Ä¬ÈÏ»ñʤ!familyIDA=%s,familyIDB=%s,disFamilyIDList=%s,winFamilyID=%ssw        ±ÈÈüÒ쳣ûÓÐÕý³£½áÊø, ÓÉϵͳĬÈÏÉèÖÃʤÕß!familyIDA=%s,familyRankA=%s,familyIDB=%s,familyRankB=%s,winFamilyID=%ssM        ±ÈÈüÂÖ¿Õ, ÓÉϵͳĬÈÏÉèÖÃʤÕß!familyIDA=%s,familyIDB=%s,winFamilyID=%ssG        ±ÈÈüÖУ¬²»ÉèÖÃʤÕß!familyIDA=%s,familyIDB=%s,disFamilyIDList=%ss.    »ñʤÏÉÃËÒѽâÉ¢£¡²»·¢·Å½±Àø£¡winFamilyID=%stFamilyMatchOtherRewardiigY@tFairyLeagueCompensationtFamilyMatchRankRewarditFairyLeagueJoinRewardsm    ·¢·Åδ½áËã±ÈÈü½±Àø=roundNum=%s,groupID=%s,winFamilyID=%s,rewardPer=%s,addItemList=%s,joinAwardItemList=%s(RR&RKRTR·R¸RËRR„R…RÐtGetFuncEvalCfgRR‹RStmaxtintRPRÔRÕRnRtPlayerCompensationt SendMailByKey(RRRtisFightRR¾R¿RÀRßRãtnotBattleRewardItemListtnotBattleRewardRateListRt    rewardPert playerIDListt addItemListtitemIDt    itemCounttisBindRåRæR    tjoinAwardItemList((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyRšst                          :1     cCs|tkrûtjƒjtjƒ}|jƒ}xÄt|ƒD]¶}|j|ƒ}|t    |ƒkrjq=nt
|ƒr|q=nt |ƒ}t |ƒ}t |ƒ}tjd||||fƒt|||tƒ|dkr=tjdƒtƒq=q=WdS|tkrtƒndS(NsRÏÉÃËÁªÈüϵͳ´¦Àíδ½áËãµÄ¶ÔÕ½½á¹û! roundNum=%s,groupID=%s,familyIDA=%s,familyIDB=%sis)ÏÉÃËÁªÈüÊ×ÂÖÖ»ÓÐÒ»³¡¶ÔÕ½£¬Ö±½ÓÖ´ÐÐ×ܽáËã!(R£RKRLRMRNReRQRPRRRRRR RRTRRrt__DoLogicFamilyWarAllOverR©(R    R™twarCountRVRRRR((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyR¥ñs*         
cCs tƒdS(N(t"DoLogicFamilyWar_NextWeekGroupRank(((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytDoOnDayscCstjdƒtƒdS(sl ÏÂÖÜ·Ö×鶨¼¶
        ×îµÍ¼¶±ð×飺 ²»ÉèÖÃÁªÈü¼¶±ð, ÏÂÖÜ×îµÍ¼¶±ð×éÃûµ¥ÓÉÆäËûÎÞÁªÈü¼¶±ðÏÉÃË×ÜÕ½Á¦ÅÅÐеõ½
    s$======= ÏÉÃËÁªÈüÏÂÖÜ·Ö×鶨¼¶ =======N(RKRTR(((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyRs cCs¼tjdƒtjƒ}tjƒ}xt|dƒD]\}}|j|ƒ}|s\q5ntj|ƒ}|suPn||kr5tj||ƒtjd|j    ƒ||fƒq5q5WdS(s²¸üÐÂÏÉÃËÁªÈüÅÅÃû
    ×¢Ò⣺¸ÃÂß¼­ÔÚÏÉÃËÁªÈüÖÜÆÚÖв»¿ÉÖ´ÐУ¬½öÔÚÏÂÖÜ·Ö×鶨¼¶×´Ì¬Ï¿ɸüУ¬ÓɳÌÐò¿ØÖÆ£¬Ôڻ½áÊøºó½áËãµ÷ÓÃ
    ÏÉÃËÁªÈüÐÂÒ»ÖÜÆÚ¿ªÊ¼Ê±¡¢ÏÉÃ˽âɢʱ »á´¥·¢¸ÃÂß¼­
    s=== ¸üÐÂÏÉÃËÁªÈüÅÅÃû ===is;    ¸üÐÂÏÉÃËÁªÈüÏÉÃËÅÅÃû: familyID=%s,curRank=%s,updRank=%sN(
RKRTR„R·RÏRÒR…tGetFamilyWarRanktSetFamilyWarRankRñ(RßRàtrankR-RãtcurRank((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyR•s    'c!Csùtjtjƒ}|r)tjdƒdStjdƒidt6dt6}g}i}tjƒ}|jt    j
ƒ}|j ƒsÚtjdƒtjtj ƒ}tj tj dƒtj tjdƒtjd|ƒdSxTt|j ƒƒD]@}|j|ƒ}t|ƒ}    t|ƒ}
t|ƒ} t|ƒ} t|ƒ} t|ƒ}x*|D]"}||krQ|j|ƒqQqQW| s•t|| | tƒ} n| | kr³|j|
dƒnd}| | kr×|j|
dƒnd}|j|    iƒ}|j| dƒ||| <|j| dƒ||| <|||    <qíWg}t}    xÇttƒD]¹}t|}    |    |krlqJn||    }g}x6|jƒD](\}}|r‰|j||gƒq‰q‰W|jd    tƒg|D]}|d^qÌ}tjd
|    |fƒ||7}qJWtjd |ƒ|dgtt|ƒ7}x€tdtƒD]o}|t }|d}||s~tjd |ƒqCntjd ||fƒ||||||<||<qCWtjd|ƒd|krú||j!dƒ }tjd|ƒn|tt  }tjd|ƒtjd|ƒtjd|ƒg}tj"ƒ}t#j$ƒ}x­|D]¥}|j%|ƒ}|sq`nt#j&|ƒ}|sšPn|j|ƒ||kr¹dn|j!|ƒd} | |krët#j'|| ƒntjd||| fƒq`Wx‘t(|dƒD]€\} }||kr7qn|j%|ƒ}|sitjd|| fƒqnd}t#j'|| ƒtjd||| fƒqWt#j)ƒ|rÈt*|dƒt+|ƒntj tj dƒtj tjdƒt,ƒdS(sº ÏÉÃËÈüÈ«²¿±ÈÈü½áÊøºóÂß¼­
        ·Ç×î¸ß¼¶±ð×é: µÚÒ»Ãû½ú¼¶
        ·Ç×îµÍ¼¶±ð×é: ×îºóÃû½µ¼¶
        ×îµÍ¼¶±ð×飺 ²»ÉèÖÃÁªÈü¼¶±ð, ÏÂÖÜ×îµÍ¼¶±ð×éÃûµ¥ÓÉÆäËûÎÞÁªÈü¼¶±ðÏÉÃË×ÜÕ½Á¦ÅÅÐеõ½
    s&ÒѾ­´¦Àí¹ýÏÉÃËÁªÈü×ܽáË㣬²»Öظ´´¦Àí£¡Ns2====== ÏÉÃËÁªÈü×ܽáË㣬´¦ÀíÏÉÃ˽ú¼¶¡¢½µ¼¶£¡ ======i
is"ûÓÐÏÉÃËÁªÈü±ÈÈü¼Ç¼£¬²»ÐèÒª½áË㣡is(ÖØÖÃÂÖ´ÎÐÅÏ¢£¬ÉèÖÃÒѽáË㣡curRoundNum=%streverses1×éÏÉÃË»ý·ÖÅÅÃû: groupID=%s,groupFamilySortList=%ss»ý·ÖÅÅÐòºóÏÉÃËID: %ss%    ÏÂ×éµÚÒ»ÃûÎÞÏÉÃË£¬²»½»»»!index=%ss$    ½µ¼¶ÏÉÃËË÷Òý=%s£¬½ú¼¶ÏÉÃËË÷Òý=%ss½ú¼¶½µ¼¶ºóÏÉÃËID: %ss³ý0ºóÏÉÃËID: %ss×îÖÕµÄÅÅÃûÏÉÃËID: %ss¸üеÄÅÅÃûÏÉÃËID: %ss    ½âÉ¢µÄÏÉÃËID: %ss0¸üÐÂÏÉÃËÆÀ¼¶: familyID=%s,lastRank=%s,updRank=%ss/нúÏÉÃËÆÀ¼¶, ÏÉÃËÒѽâÉ¢!familyID=%s,updRank=%ss0нúÏÉÃËÆÀ¼¶: familyID=%s,lastRank=%s,updRank=%s(-R_R²RbRKRTR£R©RLRMRNReRQRaR`RPRRRRR RRR&RSRRrRØRÎRÍtsortRttFamilyWar_MaxFamilyCountR‹RÙRåR„R·RÏR…R!R"RÒRÌtUpdFamilyWarChampiontGiveFamilyWinRankAuctionRewardR•(!t    allOverDot Def_WinScoretallDissFamilyIDListtallGroupFamilyScoreDictR˜R™t curRoundNumRVRRR    RRRR)R-t familyScoreAt familyScoreBtgroupFamilyScoreDicttfamilyWarIDRankListtgroupFamilySortListtscoret groupFamilytgroupFamilyIDSortListRåtpreIndextupdFamilyIDRankListtupdFamilyIDListRßRàRãtlastRanktupdRank((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyR:sÌ             $$
 
 
 
 
!     %  
 c Cs9tjƒj|ƒ}tƒ}t|ƒ}t|ƒ}tjd|ƒtjd|ƒt|ƒ}|d}t||ƒ||kr²|d7}t    ||ƒtjd|ƒn*t
||ƒt    |dƒt |dƒtjdƒt j ddƒ}t j dd    ƒ}|d}    |    |ks@|    |kra|    ||dkrat||    ƒtjd
|    ƒn|r¬|jƒ}t||jƒƒt||ƒt|tj|ƒƒn tjd ƒtjtj|ƒtjd|ƒt j d d    ƒ}
|
r|rtj||jƒ|
ƒn|r5tjdd |gƒndS(NsÉÏÖܹھüÏÉÃËID: %ss±¾ÖܹھüÏÉÃËID: %sis    ¸üÐÂÁ¬Ê¤: %sis     ¹Ú¾ü±ä¸ü!tFamilyMatchLianWinRewardiis     ÖÕÖ¹¶Ô·½Á¬Ê¤! endWinCount=%ss    ¹Ú¾üÏÉÃ˲»´æÔÚ»òÒѾ­½âÉ¢ÁË!R
tFamilyMatchSecondSessionEnd( RKR„R…R›R,R;RTR2tGiveFamilyWinCountAuctionRewardR4R.R7RÐRÑR:R†R1t GetLeaderIDR=R?R·tGetFamilyEmblemIDR¯RNR°R’tSendUniversalGameRecSingleR”tPlayerFamilyRedPackettCreatNewFamilyRedPacketRpt WorldNotify( RœRãR+tlastChampionFamilyIDtchampionFamilyNameR3trewardWinCounttwinRewardStartCounttwinRewardSpaceCountR9t    redPackID((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyR(ÂsJ       
 
 
,     cCs#tjddƒ}tjddƒ}d}||kr?d}n6||kru||}||dkru||}qun|dkrœtjd||fƒdStjddƒ}|t|ƒ}||}tjƒj|ƒ}    |    sçdSg}
g} x›t|    jƒƒD]‡} |    j    | ƒ} | j
ƒ}|t j kr<qn|
j |ƒt j |}t|ƒ|krnqnt|ƒs€qn| j |ƒqW| s·|
} tjd||
fƒni}| |g||<tjd    ||||fƒtjd
| ƒtjd |ƒtjtj|ƒdS( NR<iiiÿÿÿÿis9²»ÐèÒª·¢·ÅÁ¬Ê¤ÏÉÃËÅÄÆ·½±Àø: familyID=%s,rewardWinCount=%sisHÁ¬Ê¤Ã»ÓÐÈ˲ÎÈü£¬ÊÕÒæËãÏÉÃËËùÓÐÈ˵ģ¡familyID=%s,familyAllPlayerIDList=%ssO·¢·ÅÁ¬Ê¤ÏÉÃËÅÄÆ·½±Àø: familyID=%s,rewardWinCount=%s,rewardIndex=%s,loopIndex=%ss    familyPlayerIDList=%ss    familyAuctionItemList=%s(RÐRÑRKRTR‹R„R…RPRÔRÕRnRHRIRSRCREt AuctionHousetDoAddFamilyAuctionItemR{R|(R-RGRHRIt rewardIndext winCountValuetwinRewardLoopListt    loopIndextfamilyAuctionItemListRãtfamilyAllPlayerIDListtfamilyPlayerIDListRVtmemberRçRtfamilyAuctionItemDict((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyR>ösV      
 
        cCsítjtjƒ}d}tjƒ}x`t|jƒƒD]L}|j|ƒ}|jƒ}||krn|}Pq7||kr7|}q7q7Wt    j
d|||fƒtj d|ƒ}|sÊt    j dƒdSd}i}    xX|D]P}|j ƒ}
|jƒ} x%t||
dƒD]} | |    | <qW|
d}qÝWt    j
d||    fƒi} x…t|dƒD]t\} }| |    kr“t    j
d| |fƒq^nt    jƒj|ƒ}|sËt    j
d| |fƒq^ng}g}x›t|jƒƒD]‡}|j|ƒ}|jƒ}|tjkr qên|j|ƒtj|}t|ƒ|krRqênt|ƒsdqên|j|ƒqêW|s›|}t    j
d    ||fƒn|    | }||g| |<t    j
d
| |||fƒq^Wtjtj| ƒdS( NisM·¢·ÅÅÅÃûÏÉÃËÅÄÆ·½±Àø: warWorldLV=%s, rewardWorldLV=%s, familyWarIDRankList=%stFamilyWarRankAwardsÕÒ²»µ½ÏÉÃËÅÅÃû¶ÔÓ¦ÊÀ½çµÈ¼¶½±Àø!is&¶ÔÓ¦ÊÀ½çµÈ¼¶½±Àø: rewardWorldLV=%s, %ss+    rank=%s,familyID=%s,¸ÃÃû´ÎûÓÐÕÒµ½½±Àø!s#    rank=%s,familyID=%s,ÏÉÃ˲»´æÔÚ!sL    ÅÅÃûûÓÐÈ˲ÎÈü£¬ÊÕÒæËãÏÉÃËËùÓÐÈ˵ģ¡familyID=%s,familyAllPlayerIDList=%ssF    rank=%s,familyID=%s,familyPlayerIDList=%s,familyAuctionItemList=%s(R_R²RcRÐtIPY_DataRPtGetFamilyWarRankAwardCounttGetFamilyWarRankAwardByIndext GetWarWorldLVRKRTtGetIpyGameDataListR¬t
GetWarRanktGetRankAuctionItemtrangeRÒR„R…RÔRÕRnRHRIRSRCRERKRLR{R|(R2t
warWorldLVt rewardWorldLVt
ipyDataMgrRåtipyDatat
cfgWorldLVtrewardIpyDataListt
cfgRankKeytcfgRankAuctionItemDicttwarRanktauctionItemListR#RUR-RãRRRSRVRTRçRRQ((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyR)+sr              
    cCsAtjƒ}|jtjƒ}|jƒr7|jdƒS|jƒS(Ni(RKRLRMRNRfRQRRRì(R˜tchampionRecList((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyR›ps
   cCsdS(N((R+tisAll((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytAllotWinRewardBySystemwscCsdS(N((Råt
clientDatattick((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytOnFamilyWarWinRewardAllot´sc
Csí|\}}}}tjtjƒ}tjd|||||fƒ|ttgkrZdStjƒ}|jt    j
ƒ}xt |j ƒƒD]y}|j |ƒ}    |t|    ƒkr¸q‹n|t|    ƒkr‹|t|    ƒkr‹t|    |ƒtjd||fƒPq‹q‹Wtjdtjƒ|tjkr>tjj|ƒn|tjkr`tjj|ƒntjdtjƒtjdt    j
ƒ|tkr·tj r·| r·tjddƒn|tkrÍtj sß|tkré|rétƒndS(NsdÊÕµ½µØÍ¼Í¬²½µÄÏÉÃËÁªÈü½áÊøÊý¾Ý: roundNum=%s,familyIDA=%s,familyIDB=%s,winFamilyID=%s,isFinalMatch=%ss'    ¸üлñʤÏÉÃËID: i=%s,winFamilyID=%ss+    PyGameData.g_familyWarFightingIDList=%sitFamilyMatchFirstSessionEnd(R_R²RaRKRTR£R©RLRMRNReRPRQRRRR RRRHRZtremoveR’R“R”RpRDR(
tmsgListRRRR½R    R˜R™RVR((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pytMapServer_FamilyWarOverìs:     $ 
cCs5tjƒ}tjtjƒ|_tj||ƒdS(N(R‡ttagGCFamilyWarInfoR_R²RctWorldLVRtSendPackByPlayer(RutwarInfo((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyR}s (eRKRÐtIPY_GameServerRR’RBR_R‡RRpR·RKRNRHR{RïtcopyR£R©RÎRÙR'RŸR¡R¤R¦R¨RªR«RRRR
R RRRRRRRR R#R&R*R,R.R/R1R2R4R5R7R8R:R;R=R?R@RBRCRDRERGRYRtRjRvRsRRwR^RšRRžR®R¶R´R¢R R”R×RîRÚRòR§R÷RR¥R RR•RR(R>R)R›RkRnRrR}(((seE:\SnxxServerCode\ServerPython\CoreServerGroup\GameServer\Script\GameWorldLogic\GameWorldFamilyWar.pyt<module>sÄ                 
                                                                                                                                                                                          &         1        U              :     W                     ˆ    4    5    E        =    8    (