hxp
2025-09-08 a6e2090c3de49d712add8e6fc0b706e89c263d00
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
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
°¸hc@s7ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZdZdZdZdZdZeeeeegZdZdZd    Zd
Zd Zd Zd ZdZeeeeeeeegZdZdddgZ eee Z!d„Z"d„Z#d„Z$d„Z%d„Z&d„Z'd„Z(d„Z)dd„Z*d„Z+d„Z,d„Z-d„Z.d „Z/d!„Z0d"„Z1d#„Z2d$„Z3e4d%„Z5dde6d&„Z7e4d'„Z8dS((iÿÿÿÿNi0i1i2i3i4i!i"i#i$i%i&i'i(i7i6i8cCs4|jtj|ƒ}|d}|d}||fS(Nid(tNomalDictGetPropertytChConfigtDef_PDict_GubaoLVInfo(t    curPlayertgubaoIDtlvInfotlvtstar((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pytGetGubaoLVInfoBs
 
cCs&tj|tj||d|ƒdS(Nid(t PlayerControltNomalDictSetPropertyRR(RRRR((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pytSetGubaoLVInfoGs"cCs,t|ƒt|ƒt|ƒt|ƒdS(N(tDoGubaoAddFreePointtSync_GubaoInfotSync_GubaoItemEffInfotSync_GubaoPieceInfo(R((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pyt OnPlayerLoginKs
 
 
 
 
cCs‰|jtj|ƒ}t||tjƒ}tj|tj||ƒt||gƒtj    d|||||f|j
ƒƒ||fS(NsIÔö¼Ó¹Å±¦Ë鯬: gubaoID=%s,curCount=%s,addCount=%s,updCount=%s,useItemID=%s( RRtDef_PDict_GubaoPiecetmintDef_UpperLimit_DWordR    R
Rt    GameWorldtLogt GetPlayerID(RRtaddCountt    useItemIDtcurCounttupdCount((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pyt AddGubaoPieceRs     cCs‡|jtj|ƒ}||kr&tS||}tj|tj||ƒt||gƒtjd|||||f|j    ƒƒt
S(NsG¿Û³ý¹Å±¦Ë鯬: gubaoID=%s,curCount=%s,delCount=%s,updCount=%s,delName=%s( RRRtFalseR    R
RRRRtTrue(RRtdelCounttdelNameRR((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pyt DelGubaoPiece[s 
     c
CsÞig}}x¡|D]™\}}tjƒj|ƒ}|sAqn|jdƒ}|jƒ}|tjkr„|j||gƒqn|jdƒ}    |j    |    dƒ|||    <qWtj
d|||f|j ƒƒ||fS(NisJת»¯¹Å±¦¹¦ÄÜËùÐèÎïÆ·: needItemList=%s,realNeedItemList=%s,needPieceInfo=%s( Rt GetGameDatatGetItemByTypeIDtGetEffectByIndext GetEffectIDRtDef_Effect_GubaoPiecetappendtGetEffectValuetgettDebugLogR(
Rt needItemListt needPieceInfotrealNeedItemListtitemIDt    itemCounttitemDatatcurEffteffIDR((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pytParseGubaoNeedItemfs      c    Cs:tjƒj|ƒ}|jƒ}|j}tjd|ƒ}|sFdS|jƒ}|jƒ}| sl| rpdSt    ||ƒ\}    }
|    s‘|
r©tj
d||ƒdSt |||ggƒ\} } | r'|j ƒj tjƒ} tj|| |ƒ\}}|s'tj
d||f|ƒdSnx]| jƒD]O\}}|jtj|ƒ}||kr4tj
d|||f|ƒdSq4Wx-| jƒD]\}}t|||dƒq”W| rÜtj|| ||tdƒnd\}    }
t|||    |
ƒtjd||ƒt||ƒt|ƒt||gƒdS(    NtGubaos¹Å±¦ÒѾ­¼¤»î¹ý£¡ gubaoID=%ss.¼¤»î¹Å±¦µÀ¾ß²»×ã! needItemID=%s,needItemCnt=%ss<¼¤»î¹Å±¦Ë鯬²»×ã! gubaoID=%s,curCount=%s < needPieceCount=%stActivateis¹Å±¦¼¤»î³É¹¦£¡ gubaoID=%s(ii(RtGetPlayerManagertGetPlayerByIndexRtGubaoIDt IpyGameDataPYtGetIpyGameDatatGetUnlockItemIDtGetUnlockItemCntRR)R2tGetItemManagertGetPackt IPY_GameWorldtrptItemt
ItemCommontGetItem_FromPack_ByIDtitemsRRRR t
ReduceItemRR RR tRefreshGubaoAttrR (tindext curPackDatattickRtplayerIDRtipyDatat
needItemIDt needItemCntRRR+R,titemPackt    hasEnoughtitemListtgIDtneedPieceCountR((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pytOnGubaoActivatesJ           
c     Cs tjƒj|ƒ}|jƒ}|j}t||ƒ\}}|s]tjd||ƒdStjd||dƒs”tjd||f|ƒdStj    d||ƒ}|s³dS|j
ƒ}    |j ƒ}
|     rÝ|
rÝdSt ||    ƒ\} } | rR|j ƒjtjƒ} tj| | ƒ\}}|rRtjd|| |f|ƒdSn|
rätjddiƒ}i}xû|jD]ð}|j}|j}tj    d|ƒ}|s±dS|jƒ}t|ƒ|krçtjd||ƒdS|t|ƒ}t||ƒ\}}||kr9tjd    |||f|ƒdS|j|d
ƒ|||<| j|d
ƒ|| |<q}WxY|
D]Q\}}|j|d
ƒ}||krxtjd |||||f|ƒdSqxWtjd | |ƒnx`| jƒD]R\}}|jtj|ƒ}||krñtjd ||||f|ƒdSqñWx-| jƒD]\}}t|||dƒqTW| r–tj|| |dƒn|d}t ||||ƒtj!d||f|ƒt"||ƒt#|ƒt$||gƒt%j&|tj'ƒdS(Ns!¹Å±¦Î´¼¤»î£¬ÎÞ·¨ÉýÐÇ£¡ gubaoID=%st    GubaoStaris¹Å±¦ÒÑÂúÐÇ£¡ gubaoID=%s,star=%ssB¹Å±¦ÉýÐÇËùÐèÎïÆ·²»×㣡 star=%s,realNeedItemList=%s,lackItemDict=%st
GubaoPieceR3s=¸Ã¹Å±¦Æ·ÖÊûÓÐÅäÖÿÉ×÷ΪͨÓÃËéÆ¬Ê¹ÓõÄ×îµÍÐǼ¶! useGubaoID=%ssH¸Ã¹Å±¦Æ·ÖÊÐǼ¶²»×㣬ÎÞ·¨×÷ΪͨÓÃË鯬! useGubaoID=%s,usePieceStar=%s < %sis_Ñ¡ÔñʹÓÃµÄÆ·ÖÊͨÓÃË鯬¸öÊý²»Æ¥Å䣬ÎÞ·¨ÉýÐÇ!  gubaoID=%s,star=%s,quality=%s,selectCount=%s != %ssËùÐè¹Å±¦Ë鯬»ã×Ü: %ssS¹Å±¦ÉýÐÇËùÐè¹Å±¦Ë鯬²»×ã! gubaoID=%s,costGubaoID=%s,curCount=%s < needPieceCount=%stStarUps¹Å±¦ÉýÐÇ: gubaoID=%s,updStar=%s((RR5R6RR7RR)R8tGetIpyGameDataNotLogR9tGetStarUPNeedItemInfotGetStarUPNeedQualityPieceR2R<R=R>R?R@tGetCostItemIndexListtGetFuncEvalCfgtCommPieceUseListt
PieceCounttGetGubaoQualitytstrR(tErrLogRBRRRR t DelCostItemR RR RDR t PlayerActTasktAddActTaskValuetActTaskType_GubaoStarUp( RERFRGRRHRRRRIR*tneedQualityPieceR+R,RLt lackItemDictt delInfoDicttcommPieceUseLimitInfotselectPieceDicttpieceUset
useGubaoIDt usePieceCntt
useIpyDatatqualitytneedStart_t usePieceStart    needCountt selectCountt costGubaoIDRPRtupdStar((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pyt OnGubaoStarUp»sˆ                        
 
ic
Cs­|jƒ}i}|r+t|||ƒnTtjƒ}xEt|jƒƒD]1}|j|ƒ}|jƒ}t|||ƒqJW|s‰dSd}xÇ|jƒD]¹\}}    |\}}
} |j    t
j || fƒ} t d|    | ƒ} || 7}t jd||
| |    | | |f|ƒtj|t
j || f|    ƒ| rœt||| tƒqœqœW|dkridS|jƒ}||}|j|ƒt jd|||f|ƒdS(Nisx¹Å±¦ÐǼ¶Ôö¼ÓÁé¸ùµã: gubaoID=%s,star=%s,effType=%s,addFreePointTotal=%s,addFreePointAlready=%s,unAddFreePoint=%s,total=%ss0¹Å±¦¼Óµã: freePoint=%s,freePoint=%s,freePoint=%s(Rt__calcStarEffAddFreePointR8tIPY_Datatxranget GetGubaoCounttGetGubaoByIndext
GetGubaoIDRBRRtDef_PDict_GubaoItemEffValuetmaxRR)R    R
RRt GetFreePointt SetFreePoint(RRRHt effPointDictt
ipyDataMgrRERItunAddFreePointTotalteffKeytaddFreePointTotalRteffTypetaddFreePointAlreadytunAddFreePointt    freePointt updFreePoint((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pyR s:   
        
 cCswt||ƒ\}}|sdStjd||ƒ}|s>dS|jƒ}x&|D]}tjd|ƒ}|suqQn|jƒ}    |jƒ}
|jƒ} |||    f} |    dkrÝ|jƒ} |j| dƒ| || <qQ|    dkr&|jƒ}t    ||
| ƒ} |j| dƒ| || <qQ|    dkrQ|j
ƒ}t    ||
| ƒ} |j| dƒ| || <qQqQWdS(NRRt GubaoEffAttri6ii7i8( RR8R9tGetStarEffIDListtGetGubaoEffTypet
GetEffCondtGetEffAttrValueR(tGetOfficialRanktinttGetLV(RRRRnRt starIpyDatat starEffIDListR1t
effIpyDataR„teffCondt effAttrValueR‚RƒtrealmLVtplayerLV((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pyRu1s6           !cCs›tjƒj|ƒ}|jƒ}|j}t||ƒ\}}|s]tjd||ƒdStjd|ƒ}|sydS|j    ƒ}    |j
ƒ}
tj d|    |
|dƒsÎtjd||
|f|ƒdStjd|    |
|ƒ} | sðdS| j ƒ} | sdSt || ƒ\} }|r~|jƒjtjƒ}tj||ƒ\}}|r~tjd|
|||f|ƒdSnx]| jƒD]O\}}|jtj|ƒ}||kr‹tjd|||f|ƒdSq‹Wx-| jƒD]\}}t|||dƒqëW|r-tj|||dƒn|d}t||||ƒtjd    ||    |
|f|ƒt|ƒt||gƒtj|tj ƒdS(
Ns!¹Å±¦Î´¼¤»î£¬ÎÞ·¨Éý¼¶£¡ gubaoID=%sR3tGubaoLVis(¹Å±¦ÒÑÂú¼¶£¡ gubaoID=%s,quality=%s,lv=%ssK¹Å±¦Éý¼¶ËùÐèÎïÆ·²»×㣡 quality=%s,lv=%s,realNeedItemList=%s,lackItemDict=%ssD¹Å±¦Éý¼¶ËùÐè¹Å±¦Ë鯬²»×ã! gubaoID=%s,curCount=%s < needPieceCount=%stLVUps5¹Å±¦Éý¼¶: gubaoID=%s,gubaoType=%s,quality=%s,updLV=%s(!RR5R6RR7RR)R8R9t GetGubaoTypeR\RUtGetLVUPNeedItemInfoR2R<R=R>R?R@RXRBRRRR R_R RRDR R`RatActTaskType_GubaoLVUp(RERFRGRRHRRRRIt    gubaoTypeRlt    lvIpyDataR*R+R,RLRdReRORPRtupdLV((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pyt OnGubaoLVUpXsZ             
 
c    Csƒd\}}tjƒ}x^t|jƒƒD]J}|j|ƒ}|jƒ}t||ƒ\}}||7}||7}q+W||fS(Ni(ii(R8RvRwRxRyRzR(    RttotalLVt    totalStarR€RERIRRR((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pytGetGubaoTotalLVStars   
cCstj|ƒjƒdS(N(R    tRefreshPlayerAttrState(R((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pyRDœsc"CsgtdƒD] }i^q }gtdƒD] }i^q,}tjƒ}x·t|jƒƒD]£}|j|ƒ}|jƒ}t||ƒ\}}    |    sŸq]n|jƒ}
|j    ƒ} tj
d|
| |ƒ} | r*| j ƒ} | j ƒ}x:t | ƒD])\}}||}tj|||ƒqúWntj
d||    ƒ}|r]|jƒ}|jƒ}x7t |ƒD])\}}||}tj|||ƒqjW|jƒ}i}x!|D]}t||||ƒq°Wx0|jƒD]\}}tj|||ƒqÚWq]q]WxVt|jƒƒD]B}|j|ƒ}|jƒ}|jƒ}|sPqni}x-|D]%}t||ƒ\}}    |    ||<q]Wt|jƒƒ}|s¤qntjd|ƒ}|sÂqnd}x0|D](}|jƒ}||krñPn|}qÏW|sqn|jƒ} |jƒ}!x7t | ƒD])\}}|!|}tj|||ƒq,WqWtj |t!j"|ƒtj |t!j#|ƒdS(NiR˜RRtGubaoResonanceAttr($trangeR8RvRwRxRyRzRRšR\R9tGetLVAttrTypeListtGetLVAttrValueListt    enumerateR    tCalcAttrDict_TypetGetStarAttrIDListtGetStarAttrValueListRŠt__calcStarEffAttrByIDRBtGetGubaoResonanceCounttGetGubaoResonanceByIndextGetResonanceIDtGetGubaoIDListRtvaluestGetIpyGameDataListtNonetGetResonanceStartGetResonanceAttrIDListtGetResonanceAttrValueListtSetCalcAttrListValueRtDef_CalcAttrFunc_GubaotDef_CalcAttrFunc_GubaoResonance("RRnt allAttrListtallAttrListResonanceR€RERIRRRRRlRžtlvAttrTypeListtlvAttrValueListtitattrIDt    attrValueR‘tstarAttrIDListtstarAttrValueListR’t effAttrInfoR1t resonanceIDt gubaoIDListt gubaoStarDicttminStartattrIpyDataListtresonanceAttrIpyDatat attrIpyDatat resonanceStartresonanceAttrIDListtresonanceAttrValueList((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pyt CalcGubaoAttr¡s~      
 
 
 
cECsÏtjd|ƒ}|sdS|jƒ}|jƒ}|jƒ}|jƒ}|jƒ}    |jƒ}
|
dkrtdS|dkrÛtj    |t
j ƒd} | j diƒ} |} | | krÁdSt ||| | |
ƒnð |dkrBtj|ƒ}t|||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËn‰ |dkr©tj|ƒ}t|||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËn" |d    krtj    |t
jƒd}|j d
iƒ}|} | |krödSt |||| |
ƒn» |d krwtj|ƒ}t|||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËnT |d kr†nE |d krítj    |t
jƒd}|j diƒ}|}||krÓdSt |||||
ƒnÞ |dkrTtj    |t
jƒd}|j diƒ}|}||kr:dSt |||||
ƒnw |dkr»tj    |t
jƒd}|j diƒ}|}||kr¡dSt |||||
ƒn |dkr"tj    |t
jƒd}|j diƒ}|}||krdSt |||||
ƒn©
|dkr‰tj    |t
jƒd}|j diƒ}|}||krodSt |||||
ƒnB
|dkrðtj|ƒ}t|||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËnÛ    |dkrWtj|ƒ} t| ||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËnt    |dkrútj    |t
jƒd}|j diƒ}!|}||!kr¤dS|!|}"t|"||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËnÑ|dkrtj    |t
jƒd}|j diƒ}#|}||#krGdS|#|}$t|$||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËn.|dkr@tj    |t
jƒd}|j diƒ}%|}||%krêdS|%|}&t|&||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËn‹|dkrãtj    |t
jƒd}|j d iƒ}'|}||'krdS|'|}(t|(||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËnè|d!kr†tj    |t
jƒd}|j d"iƒ})|}||)kr0dS|)|}*t|*||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËnE|d#kr_    tj    |t
jƒd}+|+j d$iƒ},|}||,krÓdS|,|}-d}.x-|-jƒD]}/|/|krð|.d%7}.qðqðWt|.||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËnl|d&krÆ    tj |ƒ}0t|0||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËn|d'kr:
|}1|j!t
j"|1ƒ}2t|2||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËn‘|d(kr­
tj    |t
j#ƒd}3|3j d)iƒ}4|j!t
j$ƒ}5t|5||
ƒ}6t |||4|6ƒn|d*kr, t%j&|ƒ}7|}8|7j |8dƒ}9t|9||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËnŸ|d+kr« t'j(|ƒ}:|} |:j | dƒ};t|;||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËn |d,kr tj)|ƒ}<t|<||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËn¹|d-kr¡ tj    |t
j*ƒd}=|=j d.iƒ}>t+|>ƒ}?t|?||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËn*|d/kr6 tj    |t
j*ƒd}=|=j d.iƒ}>t,|>jƒƒ}@t|@||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËn•|t-krª |j!t
j.||fƒ}At|A||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËn!|d0kr÷ tj    |t
j/ƒd}B|Bj d1iƒ}Ct |||C|
ƒnÔ|d2kra|j!t
j0ƒ}Dt|D||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËnj|d3krË|j!t
j$ƒ}5t|5||
ƒ}|    dkrË|dkrË|j |    dƒ|||    <qËndS(4s$ ¼ÆËã¹Å±¦ÌØÊâЧ¹ûID¶ÔÓ¦ÌáÉýÊôÐÔ
    R‰Nii
itpetQualityAttrInfoi i i thorseSkinQualityAttrInfoiiitclassBaseAttrDictPlusitclassBaseAttrDictStoneitclassBaseAttrDictStaritclassBaseAttrDictWashitclassBaseAttrDictEnchantiiitclassPlusLVDictitclassStoneLVDictitclassStarLVDictitclassWashLVDictitclassEnchantLVDictitclassEquipColorDictii i)i*tfaQiAllAttrInfoi+i,i-i.tshentongSkillInfoi/i9thorseBaseAttrInfoi:i;(1R8R9R‹RŒt GetEffCond2t GetEffCond3t GetEffAttrIDRR    tGetCalcAttrListValueRtDef_CalcAttrFunc_PetR(t__addStarEffFuncAttrt    PlayerPett GetTotalPetLVRtGetTotalPetCounttDef_CalcAttrFunc_HorseSkint PlayerHorsetGetHorseSkinActCounttDef_CalcAttrFunc_PlustDef_CalcAttrFunc_StonetDef_CalcAttrFunc_StartDef_CalcAttrFunc_WashtDef_CalcAttrFunc_Enchantt
PlayerDogztGetFightDogzTotalPlusLvt
PlayerRunetGetRuneTotalLVtDef_CalcAttrFunc_EquipR²tGetTotalLingGenPointRtDef_PDict_GodWeaponLVtDef_CalcAttrFunc_FaQitDef_PDict_FaQiLVtPlayerDienstgradt GetDienstgradActiveTypeCountInfot
PlayerCoattGetCoatQualityLVInfot
GetCharmLVtDef_CalcAttrFunc_ShentongtlentsumtGubaoEffAttrIypeListR{tDef_CalcAttrFunc_HorsetDef_PDict_HorserLV(ERRR1RÄRIR„R”teffCond2teffCond3RÀR•tcustomAttrDictPetRÐRlt
totalPetLVt addAttrValuet totalPetCounttcustomAttrDictSkinRÑthorseSkinActCounttcustomAttrDictPlusRÒtclassLVtcustomAttrDictStoneRÓtcustomAttrDictStarRÔtcustomAttrDictWashRÕtcustomAttrDictEnchantRÖtfightDogzTotalPlusLvt runeTotalLVR×t totalPlusLVRØt totalStoneLVRÙt totalStarLVRÚt totalWashLVRÛttotalEnchantLVtcustomAttrDictEquipRÜtequipColorDictt equipColorCntt    itemColorttotalLingGenPointtgwTypetgwLVtcustomAttrDictFaQiRÝtfaQiLVtaddPertactiveTypeCountDicttdTypet activeCounttcostQualityLVDicttlvTotaltcharmLVtcustomAttrDictShentongRÞt
skillCountt skillLVTotalteffValuetcustomAttrDictRßthorseLV((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pyR­÷sº                                  
   
   
   
   
   
                         c    CsÀ| s|dkrdS|jƒ}|jƒ}xŠ|jƒD]|\}}|r`||kr`q<n|r}t||dƒ}n|}|dkr<|dkr<|j|dƒ|||<q<q<WdS(NigY@(tGetIsPertGetEffFuncAttrIDListRBRR((    RIRÄt funcAttrInfoR•tisPert effAttrIDListRÀRÁR    ((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pyRå@s  !c Cs¸|tkr|tkrdSt}tjƒ}xpt|jƒƒD]\}|j|ƒ}|jƒ}t    ||ƒ\}}    |    sƒqAntj
d||    ƒ}
|
s¤qAn|
j ƒ} xê| D]â} tj
d| ƒ} | sÛq·n|| j ƒkróq·n|j tj||fƒ}t||tjƒ}tj|tj||f|ƒtjd|| ||||f|jƒƒt|||tƒ|tkr·t}q·q·WqAW|r´t|ƒndS(NRRR‰s\¸üйű¦ÎïÆ·Ð§¹ûÀàÐͽø¶ÈÖµ: gubaoID=%s,effID=%s,effType=%s,effValue=%s,addCnt=%s,updValue=%s(tGubaoEffTtemIypeListRRR8RvRwRxRyRzRR9RŠR‹RRR{RRR    R
RR)RRRRD(RR„taddCnttisAttrR€RERIRRnRR‘R’R1R“R-tupdValue((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pytAddGubaoItemEffValuePs>         #  c Csgt||ƒ\}}|sdStjd||ƒ}|s>dS|jƒ}tj|ƒ}| sl||kr“tjd|||f|jƒƒdStjd|ƒ}|s¯dS|jƒ}    |    t    krñtjd||||    f|jƒƒdS|j
ƒ}
|j ƒ} |
s| rdS|j t j||    fƒ} | |
} | dkr}tjd||||    | |
f|jƒƒdSg}| dkrÌx@| D]/\}}}|j|t|| ƒ|gƒq–Wn| }| |
}tj|t j||    f|ƒt|||    tƒtjd||||    | |
| ||f    |jƒƒtj||d    d
tigƒdS( NRRsC¹Å±¦ÎïÆ·Ð§¹ûÁì½±! ¸ÃÐǼ¶²»´æÔÚ¸ÃЧ¹ûID! gubaoID=%s,star=%s,effID=%sR‰sH¹Å±¦ÎïÆ·Ð§¹ûÁì½±! ·ÇÎïÆ·Ð§¹ûÀàÐÍ! gubaoID=%s,star=%s,effID=%s,effType=%sisa¹Å±¦ÎïÆ·Ð§¹ûÁì½±! Î´´ïµ½Áì½±Ìõ¼þ! gubaoID=%s,star=%s,effID=%s,effType=%s,effValue=%s,condValue=%sis¹Å±¦ÎïÆ·Ð§¹ûÁì½±: gubaoID=%s,star=%s,effID=%s,effType=%s,effValue=%s,condValue=%s,getTimes=%s,updValue=%s,awardItemTotalList=%steventR3(RR8R9RŠRtToIntDefR)RR‹R5RŒtGetEffItemAwardListRRR{R&RR    R
RRt ItemControlertGivePlayerItemOrMailR(RRteffIDStrRnRR‘R’R1R“R„t    condValuet awardItemListR-tgetTimestawardItemTotalListR-R.t isAuctionItemR8((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pytGetGubaoItemEffAwardrsT             
     # '
     ,c Cs+|dkr`g}tjƒ}xEt|jƒƒD](}|j|ƒ}|j|jƒƒq1Wn|}g}xw|D]o}t||ƒ\}}    | r®|     r®|dkr®qsnt    j
ƒ}
||
_ ||
_ |    |
_ |j|
ƒqsW|sðdSt    jƒ} || _t| jƒ| _tj|| ƒdS(N(R´R8RvR¦RxRyR&RzRtChPyNetSendPackt
tagMCGubaoR7R˜RRttagMCGubaoInfot GubaoInfoListRtCountt NetPackCommont SendFakePack( RRÆt
syncIDListR€RERIt gubaoInfoListRRRtgubaot
clientPack((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pyR  s0                     c CsIg}|sZtjƒ}xHt|jƒƒD](}|j|ƒ}|j|jƒƒq+Wn    |g}|rr|gnt}g}    xƒ|D]{}xr|D]j}|jt    j
||fƒ}
|
rÈ| rÈq’nt j ƒ} || _ || _|
| _|    j| ƒq’Wq…W|    sdSt jƒ} |    | _t| jƒ| _tj|| ƒdS(N(R8RvR¦RxRyR&RztNeedGubaoItemEffValueTypeListRRR{RFttagMCGubaoItemEffR7tEffTypetEffValuettagMCGubaoItemEffInfotItemEffInfoListRRJRKRL( RRR„tforceRMR€RERItsyncEffTypeListtitemEffInfoListR-teffRP((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pyR¿s4                         c Cs|dkr`g}tjƒ}xEt|jƒƒD](}|j|ƒ}|j|jƒƒq1Wn|}g}xh|D]`}|jt    j
|ƒ}| r¨|dkr¨qsnt j ƒ}    ||    _ ||    _|j|    ƒqsW|sádSt jƒ}
||
_t|
jƒ|
_tj||
ƒdS(N(R´R8RvR¦RxRyR&RzRRRRFttagMCGubaoPieceR7R[ttagMCGubaoPieceInfot PieceInfoListRRJRKRL( RRÆRMR€RERIt pieceInfoListRRRORP((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pyRás.                 (9RRóR@R    R8RFRKR>RêRñRæRR=RúR`RütGubaoEffType_FamilyWartGubaoEffType_ElderBattlefieldtGubaoEffType_CrossBattlefieldtGubaoEffType_CrossYaomoBosstGubaoEffType_CrossFamilyFlagwarRtGubaoEffType_ActivityPlacetGubaoEffType_ArenatGubaoEffType_KillWorldBosstGubaoEffType_KillBossHomet!GubaoEffType_KillCrossPenglaiBosst#GubaoEffType_KillCrossDemonLandBosstGubaoEffType_KillSealDemonBosstGubaoEffType_CrossRealmPKR5tGubaoEffType_RealmLVAddLinggentGubaoEffFreePointTypeListRQRR RRR R2RQRtR RuR R£RDRÏR­RåR9RER´R RRR(((sjD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Player\PlayerGubao.pyt<module>st                                                               <    R $    '    8             V    ÿJ        "    . "