cehua_ZWJ
2019-01-30 6afaa4408f4e09e3e95dbd92f0d1cd5a1fb2942b
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
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
’ÛG\c@s&ddlZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZddlZejddƒd„Zd„Zd„Zd„Zd„Zd    „Zd
„Zd „Zd efd „ƒYZdefd„ƒYZ d„Z!d„Z"e#d„Z$d„Z%d„Z&d„Z'e#dd„Z)d„Z*d„Z+d„Z,d„Z-d„Z.d„Z/d„Z0d„Z1d„Z2d „Z3dS(!iÿÿÿÿNs Script\Skill\t PassiveBuffcCs–tjƒj|ƒ}d}|jdkrh|jƒj|jƒ}|sLdS|jƒtj    krhdSnt
j ddƒ}|j |krdSt
j ddƒ}|j |kr²dSt
jddƒ}t|j ƒ}||krÆxä||jƒD]Ï\}    }
|    dkr|jƒ|
krdS|    dkrC|jƒ|
krCdSn|    dkrktj|ƒ|
krkdSn|    d    krðtj|ƒ} | sdStdt|ƒƒ| jd    ƒ@dkr¿dSqðqðWntj|tj|j |j f|jtjƒtjƒ} |j | _ |j | _ |j| _t j!|| ƒ|j"tj#dtjƒ} |j | kr…t$ƒj%|ƒtj|ƒj&ƒnt'j(|ƒdS(
NitPassSkillEquipLimitiiitleveltvipLvtMountLvtOpenSkillSlots()t    GameWorldtGetPlayerManagertGetPlayerByIndextNonetSkillIDtGetSkillManagertFindSkillBySkillIDt GetFuncTypetChConfigt Def_SkillFuncType_FbPassiveSkillt IpyGameDataPYt
GetFuncCfgtIndextPagetGetFuncEvalCfgtstrtitemstGetLVtGetVIPLvt PlayerHorset GetHorseSumLVt QuestCommontGetCommonMissiontpowtintt GetPropertyt PlayerControltNomalDictSetPropertytDef_PDict_GFPassiveIndextDef_PDictType_GFPassivetChPyNetSendPackttagMCPassiveSetAnswert NetPackCommont SendFakePacktNomalDictGetPropertytDef_PDict_GFPassivePagetGetPassiveEffManagertRegistPassiveEffSettRefreshPlayerAttrStatet
EventShelltEventRespons_PassiveSet(tindext
clientDatattickt    curPlayert    findSkilltholeCnttpageCntttmpDicttstrIndextkeytvaluet    mission_1tsendPacktpage((s.\\PassiveBuffEffMng.pyt OnPassiveSet>s^    (    
     cCs¨tjƒj|ƒ}tjddƒ}|j|kr:dStj|tj    |jtj
ƒt j ƒ}|j|_t j||ƒtƒj|ƒtj|ƒjƒdS(NRi(RRRRRRR R!RR)R#R$ttagMCPassivePageR&R'R*R+R,(R/R0R1R2R5R;((s.\\PassiveBuffEffMng.pyt OnPassivePageŽs    
  cCs’|jtjdtjƒ}tjddƒ}g}xXt|ƒD]J}|jtj||fdtjƒ}|dkr}q@n|j|ƒq@W|S(NiRi(    R(RR)R#RRtxrangeR"tappend(R2R<R4tskillstit findSkillID((s.\\PassiveBuffEffMng.pytFindUsePassiveSkills§s  c    Cs'tjddƒ}tjddƒ}tjƒ}||_g|_xŽt|ƒD]€}tjƒ}||_g|_    xIt|ƒD];}|j
t j ||fdt j ƒ}|j    j|ƒq€W|jj|ƒqOWtj||ƒ|j
t jdt j ƒ}tjƒ}||_tj||ƒdS(NRiii(RRR$ttagMCPassiveSettPageCntt PassiveSkillsR@ttagMCPassiveSkillstCountt SkillIDListR(RR"R#RAR&R'R)R>R(    R2R4R5R;RCRBtjtskillIDR<((s.\\PassiveBuffEffMng.pytOnLoginGFPassiveµs(                         cCsDtƒj|ƒtƒj|ƒtƒj|ƒtƒj|ƒdS(N(R*tRegistPassiveEffR+tRegistPassiveBufftRegistPassiveEffDogz(R2((s.\\PassiveBuffEffMng.pytOnLoadMapGFPassiveåscCsdtƒj|jƒtjfƒx>tddƒD]-}tƒj|jƒd|tjfƒq/WdS(Niii
(R*tRemovePassiveEfftGetIDt IPY_GameWorldt    gotPlayertrangetgotNPC(R2RC((s.\\PassiveBuffEffMng.pytOnPlayerLeaveMap s+cCsæiHtjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd    6tj    d
6tj
d 6tjd 6tj d 6tj d6tj d6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd 6tjd!6tj d"6tjd#6tjd$6tjd%6tjd&6tjd'6tj d(6tjd)6tj!d*6tj"d+6tj#d,6tj$d-6tj%d.6tj&d/6tj'd06tj(d16tj)d26tj*d36tj+d46tj,d56tj-d66tj.d76tj/d86tjd96tj0d:6tj1d;6tj2d<6tj3d=6tj4d>6tj5d?6tj!d@6tj6dA6tj7dB6tj8dC6tj%dD6tjdE6tj9dF6tjdG6tj:dH6}|j;|dIƒS(JNi6i8i9i i¡i¢i£i¤i¥i¦i§i¨i©iªi«i­i®i¯i°i±i²i³i´iµi¶i·i¸i¹iºi»i¼i½i¾i¿iÀiÁiÂiÃiÄiÅiÆiÇiÈiÉiÊiËiÌiÍiÎiÏiÐiÑiÒiÓiÔiÕiÖi×iØiÙiÚiÛiÜiÝiÞißiàiáiâiãiäiåiÿÿÿÿ(<RtTriggerType_BeAttackOvertTriggerType_LockHPtTriggerType_BeLuckyHittTriggerType_BuffStatetTriggerType_TagBuffStatetTriggerType_AddDamagePertTriggerType_AttackOvertTriggerType_AttackAddSkillPertTriggerType_SuperHittTriggerType_SuperHitValuetTriggerType_HurtObjAddBufftTriggerType_ReduceCDtTriggerType_SuperHitSkillPertTriggerType_AttackAddFinalValuetTriggerType_HappenStatetTriggerType_AbsorbShieldtTriggerType_BounceHPtTriggerType_BuffDisappeartTriggerType_BuffTimetTriggerType_BounceHPPertTriggerType_AddSingleSkillPertTriggerType_SkillOverNoAttacktTriggerType_AddIceAtkPertTriggerType_AddIceAtktTriggerType_DebuffOfftTriggerType_AttackKilltTriggerType_WillDeadtTriggerType_BuffBoomt!TriggerType_Success_Buff_SkillPertTriggerType_BeBoomSeedtTriggerType_AttackCnttTriggerType_SuperHitOneByOnetTriggerType_AttackOverPassivetTriggerType_BeSuperHittTriggerType_AddExpRatetTriggerType_DamageReducetTriggerType_DamageReducePVPtTriggerType_MissPertTriggerType_SkillDisttTriggerType_ReduceHurtHPPertTriggerType_TimeCalctTriggerType_MissSkilltTriggerType_MissSuccessPertTriggerType_OneDamagetTriggerType_LuckyHittTriggerType_Buff_SuckBloodPertTriggerType_AddLayertTriggerType_StormAttackReduceCDtTriggerType_PassiveBuffValuetTriggerType_AttackKillHappentTriggerType_AddBuffOvertTriggerType_StormAttackOneByOnetTriggerType_StormAttackOvertTriggerType_AttackAddFinalPertTriggerType_SummonDietTriggerType_GiftReduceCDtTriggerType_ProDefValuetTriggerType_ZhongjiZhanshatget(teffectIDttdict((s.\\PassiveBuffEffMng.pytGetTriggerTypeByEffectIDs”
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 cCsitjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd    6tj    d
6tj
d 6tj d 6tj d 6tj d6tj d6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6}|j|dƒS(Ni”i•i–i—i˜iši›iœi¢iižiŸi i¡i£i¤i¥i¦i§i¨i©i#i&i'i(iÿÿÿÿ(RR`RaRZR_Rjt TriggerType_Buff_AddSuperHitRatetTriggerType_Buff_AttackSubLayert!TriggerType_Buff_BeAttackSubLayerR‡tTriggerType_Buff_MustBeHitRgRRptTriggerType_ChangeHurtToHPRrtTriggerType_ForbidenCureRtRˆtTriggerType_BeLuckyHitSubPertTriggerType_BloodShieldR”(R•R–((s.\\PassiveBuffEffMng.pytGetBuffTriggerTypeByEffectIDns6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 t
PassiveEffcBs_eZd„Zd„Zd„Zdd„Zd„Zd„Zd„Zd„Z    dd    „Z
RS(
cCs1||_i|_i|_i|_i|_dS(N(tgameObjtAffectBuffDicttAffectSkillDicttAffectPassiveSkillSetDicttAffectDogzSkillDict(tselfR¢((s.\\PassiveBuffEffMng.pyt__init__“s
                cCsœ|jƒ}t|ƒ}|dkr(dSd}||f}||jkrYi|j|<n||j|kr€g|j||<n|j||j|ƒdS(Niÿÿÿÿi(t GetEffectIDR R£RA(R§teffectRMR•t triggerTypetreleaseSkillIDtkeyTuple((s.\\PassiveBuffEffMng.pytAddBuffInfoByEffectœs    cCsÍ|s
dS|jƒ}d}xªtd|jƒƒD]“}|j|ƒ}|jƒ}t|ƒ}|dkrqq2n||f|jkrŒq2n||j||fkr«q2n|j||fj|ƒq2WdS(Niiÿÿÿÿ(t
GetSkillIDRWtGetEffectCountt    GetEffectR©R R£tpop(R§t    skillDataRMR¬RCt    curEffectR•R«((s.\\PassiveBuffEffMng.pyt DelBuffInfo±s     icCs|jj|dfiƒS(Ni(R£R”(R§R«t
useSkillID((s.\\PassiveBuffEffMng.pytGetBuffsByTriggerTypeÌsc
Cs i|_t|jƒ}xë|D]ã}tj|ƒs:qn|jƒ}tj|ƒ}xªt|j    ƒƒD]–}|j
|ƒ}|j ƒ}|dkr›qhnt |ƒ}|dkr¹qhn||f}    |    |jkräg|j|    <n|j|    j ||fƒqhWqW|jS(Niiÿÿÿÿ(R¦tFindDogzBattleSkillsR¢t SkillCommontisPassiveTriggerSkilltGetSkillTypeIDt
SkillShelltGetConnectSkillIDR@R°R±R©R—RA(
R§RBtcurSkillt skillTypeIDt connSkillIDRCR´R•R«R8((s.\\PassiveBuffEffMng.pytRefreshDogzBattleSkillÑs(           "c Cs"i|_|jjƒ}t|jƒ}xñ|D]é}|j|ƒ}|sOq.n|jƒ}tj|ƒ}xªt|j    ƒƒD]–}|j
|ƒ}|j ƒ}    |    dkr°q}nt |    ƒ}
|
dkrÎq}n|
|f} | |jkrùg|j| <n|j| j ||    fƒq}Wq.W|jS(Niiÿÿÿÿ(R¥R¢R RER R»R¼R½R@R°R±R©R—RA( R§t skillManagerRBRMR¾R¿RÀRCR´R•R«R8((s.\\PassiveBuffEffMng.pytRefreshPassiveSkillSetðs,           "c
Cs[i|_|jjƒ}x9td|jƒƒD]"}|j|ƒ}|sOq.ntj|ƒsdq.n|jƒt    j
t    j gkrˆq.n|j ƒ}t j|ƒ}xªt|jƒƒD]–}|j|ƒ}|jƒ}|dkréq¶nt|ƒ}|dkrq¶n||f}    |    |jkr2g|j|    <n|j|    j||fƒq¶Wq.W|jS(Niiÿÿÿÿ(R¤R¢R RWt GetSkillCounttGetSkillByIndexR¹RºR RRtDef_SkillFuncType_DogzR»R¼R½R@R°R±R©R—RA(
R§RÂRCR¾R¿RÀR´R•R«R8((s.\\PassiveBuffEffMng.pytRefreshPassiveSkills4          "c
Cstjƒj|ƒ}|sdStj|ƒs2dS|jƒ}tj|ƒ}xÆt|j    ƒƒD]²}|j
|ƒ}|j ƒ}|dkr“q`nt |ƒ}|dkr±q`n||f}    |    |j krÜg|j |    <n||f|j |    kr`|j |    j||fƒq`q`W|j S(Niiÿÿÿÿ(Rt GetGameDatatGetSkillBySkillIDR¹RºR»R¼R½R@R°R±R©R—R¤RA(
R§RMR¾R¿RÀRCR´R•R«R8((s.\\PassiveBuffEffMng.pytAddPassiveSkill5s*      !cCsôg}|j|jj||fgƒƒ|j|jj||fgƒƒ|j|jj||fgƒƒ|dkrð|tjkrð|j|jj|dfgƒƒ|j|jj|dfgƒƒ|j|jj|dfgƒƒn|S(Ni(textendR¤R”R¥R¦RtDef_SkillID_Somersault(R§R«RÀt    skillList((s.\\PassiveBuffEffMng.pytGetPassiveSkillsByTriggerTypeSs"""""%( t__name__t
__module__R¨R®RµR·RÁRÃRÇRÊRÎ(((s.\\PassiveBuffEffMng.pyR¡’s                              %    tPassiveEffManagercBs\eZd„Zd„Zd„Zd„Zdd„Zd„Zd„Zd„Z    d    „Z
RS(
cCs i|_dS(N(tpassiveEffClassDict(R§((s.\\PassiveBuffEffMng.pyR¨cscCs+|jƒ|jƒf}|jj|dƒS(N(RTtGetGameObjTypeRÒR”R    (R§R¢R8((s.\\PassiveBuffEffMng.pyt GetPassiveEffgscCsH|jƒ|jƒf}||jkr=t|ƒ|j|<n|j|S(N(RTRÓRÒR¡(R§R¢R8((s.\\PassiveBuffEffMng.pytInitObjPassiveEffmscCs)|jƒ|jƒf}||j|<dS(N(RTRÓRÒ(R§R¢t
passiveEffR8((s.\\PassiveBuffEffMng.pyt AddPassiveEffssicCsz|j|ƒ}| s| r`|r1|jƒdSt|ƒ}|jƒsMdS|j||ƒn|rv|j|ƒndS(N(RÔRÇR¡R×RÊ(R§R¢RMRÖ((s.\\PassiveBuffEffMng.pyROxs
  cCsR|j|ƒ}|sDt|ƒ}|jƒs1dS|j||ƒn
|jƒdS(N(RÔR¡RÃR×(R§R¢RÖ((s.\\PassiveBuffEffMng.pyR+s  
cCsR|j|ƒ}|sDt|ƒ}|jƒs1dS|j||ƒn
|jƒdS(N(RÔR¡RÁR×(R§R¢RÖ((s.\\PassiveBuffEffMng.pyRQs  
c CswxptjtjtjtjtjtjgD]D}|tjkrm|jƒtjkrmt    j
|ƒsmq+qmnt j ||ƒ}|dkr‘q+n|d}xÑt |jƒƒD]½}|j|ƒ}|jƒ}|sÛq®nxtd|jƒƒD]v}|j|ƒ}    |    jƒ}
|
dkr$qñnt|
ƒ} | dkrBqñn|j|ƒ} | j|    |jƒƒqñWq®Wq+WdS(Niiÿÿÿÿ((RUtbfBufftbfDeBufft bfProcessBufft btPassiveBuft bfActionBufftbfProcessDeBuffRÓRXt
PetControltIsPetR¹tGetBuffManagerByBuffTypeR@t GetBuffCounttGetBufftGetSkillRWR°R±R©R RÕR®R¯( R§R¢tbuffTypet    buffTuplet buffManagerRCtcurBufft    buffSkillt effectIndexR´R•R«RÖ((s.\\PassiveBuffEffMng.pyRPªs2$     
     "cCs&||jkr"|jj|ƒndS(N(RÒR²(R§R8((s.\\PassiveBuffEffMng.pyRSÏs( RÏRÐR¨RÔRÕR×ROR+RQRPRS(((s.\\PassiveBuffEffMng.pyRÑas                              %cCstjstƒt_ntjS(N(t
PyGameDatatg_PassiveEffManagerRÑ(((s.\\PassiveBuffEffMng.pyR*Õs    cCs•|r||kr|S|jƒtjkr/dS|jƒ}|jƒ}tj||ƒ}|rc|Stjƒ}|sydStj|j    ƒ|j
ƒƒS(N( RÓRURVtGetUseSkillTagIDtGetUseSkillTagTypeRtGetObjt
BaseAttacktGetFirstHurtObjtGetObjIDt
GetObjType(tattackertdefendert useSkillTagIDtuseSkillTagTypetcurHurt((s.\\PassiveBuffEffMng.pytGetPassiveDefenderús   cCs=t|ƒ}|sdSt}|rM|jƒs2dStj|ƒrMt}qMntj|ƒrt|tjkrtt}nt    ƒj
|ƒ}|sdS|r¢|j ƒnd}|j ||ƒ}    |    sÄdSt ||ƒ}tj||ƒ}
d} d} x?|    D]7\} }|| krqøn|jƒj| ƒ}|s7qøn|rX|jƒtjkrXqøntj||ƒ}|svqøntj||ƒrŽqøntj|ƒ}tj||
ƒsµqønd|}tjtd|dfƒ}|sçqøn|||||ƒsqøn|jdƒ| krø|jdƒ} | } qøqøW| | fS(    NisPassiveSkill_%ss%s.%stCheckCanHappen(ii(ii(ii(ii(tFindRealAttackertFalseR R¹tisPassiveSkilltTruetGetUsingPassiveSkillRR]R*RÔR»RÎRøt AttackCommontGetBattleRelationTypeR tFindSkillBySkillTypeIDtDef_SkillFuncType_GiftSkilltGetSkillEffectByEffectIDtRefreshSkillRemainTimetGetSkillBattleTypetCheckBattleRelationTypeRt GetExecFuncRtGetEffectValue(RóRôt    connSkillR«R1tisEnhanceSkilltstopPassiveSkillRÖRÀRBtbattleRelationTypet lockHPPerMaxt lockHPSkillIDR¿R•R¾RªtskillBattleTypetpyNametcallFunc((s.\\PassiveBuffEffMng.pytOnPassiveSkillLockHPs`        
 c
CsÎ|jƒtjkrdSt|||||ƒ\}}|jƒjƒ}|r§t|||||ƒ\}}    ||    dkrdS|    |kr§|jtj|ƒ|    Sn|dkr·dS|jtj|ƒ|S(Ni(    RÓRURVRt    GetPetMgrt GetFightPettSetDictRtDef_PlayerKey_LockHPSkillID(
RóRôR    R«R1RR trolePettlockHPSkillIDPettlockHPPerMaxPet((s.\\PassiveBuffEffMng.pytOnObjsPassiveSkillLockHP[s  cCs |jƒtjkrdS|jtjƒ}|s|jƒjƒ}|sMdS|jtjƒ}|sidS|}tj    dƒn|j
tjdƒ|j ƒj |ƒ}|s±dStj    d|ƒt j|dƒtj||||ƒs t j|tj|ƒ||ƒnt j|dƒdS(Ns#DelayUsePassiveTriggerSkill-----petis.DelayUsePassiveTriggerSkill-----skillTypeID-%si(RÓRURVt GetDictByKeyRRRRRtDebugLogRR RR¹tSetUsingPassiveSkillR¼tUsePassiveTriggerSkilltSetSkillRemainTimeR tGetReduceSkillCDPer(RóR¾RôR1R¿R((s.\\PassiveBuffEffMng.pytDelayUsePassiveTriggerSkillvs,"cCsU|jƒtjkrdS|jƒjƒ}|dkr;dSt|||||ƒdS(N(RÓRURVRRR    tOnPassiveSkillTrigger(RóRôR    R«R1R((s.\\PassiveBuffEffMng.pytOnPetPassiveSkillTrigger™s  c
Csft|ƒ}|stSt}|rM|jƒs2tStj|ƒrMt}qMntj|ƒrt|tjkrtt}nt    ƒj
|ƒ}|stS|r¢|j ƒnd}    |j ||    ƒ}
|
sÄtSt ||ƒ}t} tj||ƒ} xt|
D]l\} }|    | krqòn|jƒj| ƒ}|s1qòn|rR|jƒtjkrRqòntj||ƒ}|spqòntj||ƒrˆqònt} tj|ƒ}tj|| ƒsµqònd|}tjtd|dfƒ}|rý|||||ƒ rýqòntj|dƒtj|||||ƒrN|rN|jdƒ|j| ƒqNntj|dƒqòW| S(NisPassiveSkill_%ss%s.%sRùi(RúRûR R¹RüRýRþRR]R*RÔR»RÎRøRÿRR RRRRRRRRRRR¼Rt SetRemainTimetadd(RóRôR    R«R1R
t
skillIDSetR RÖRÀRBtresultR R¿R•R¾RªRRR((s.\\PassiveBuffEffMng.pyR"¦sb        
 cCs‡|jƒtjkr|S|jƒ}|tjtjtjgkrW|jƒrS|SdS|tjkrj|Stj    tj
|ƒ}|SdS(N( RÓRURXtGetTypetntPettntElftntFairyt    GetIsBosst    NPCCommontGetSummonNPCOwnerRV(RótnpcType((s.\\PassiveBuffEffMng.pyRúús  c
Cs=t|ƒ}|sdSt}|r:tj|ƒr:t}ntƒj|ƒ}|sVdS|rh|jƒnd}|j||ƒ}|sŠdSt    j
||ƒ}t j ƒj ƒ}    d}
x‚|D]z\} } || krÙq»n|jƒj| ƒ} | súq»n|r| jƒtjkrq»n| jƒr?tj| |    ƒr?q»ntj| | ƒ}|s]q»ntj| ƒ}t    j||ƒs„q»nd| }t jtd|dfƒ}|rÌ||||| ƒ rÌq»nt jtd|dfƒ}|dkrúq»n|
||||ƒ7}
| jƒr»tj| d|    |ƒq»q»W|
S(NisPassiveSkill_%ss%s.%sRùtGetValue(RúRûR¹RüRýR*RÔR»RÎRÿRRt GetGameWorldtGetTickR RR RRtGetCoolDownTimeRRRRRRR    R(RóRôR    R«R RÖRÀRBR R1tcurValueR¿R•R¾RªRRR((s.\\PassiveBuffEffMng.pyt!GetPassiveSkillValueByTriggerTypesV      
  cCst|ƒ}|sgS|r/tj|ƒr/gStƒj|ƒ}|sKgS|r]|jƒnd}|j||ƒ}|sgStj||ƒ}g}xá|D]Ù\}    }
||    kr¼qžn|j    ƒj
|    ƒ} | sÝqžntj | |
ƒ} | sûqžntj | ƒ} tj | |ƒs"qžnd|
}tjtd|dfƒ}|rj|||| | ƒ rjqžn|j| ƒqžW|S(NisPassiveSkill_%ss%s.%sRù(RúR¹RüR*RÔR»RÎRÿRR RRRRRRRRA(RóRôR    R«RÖRÀRBR RÍR¿R•R¾RªRRR((s.\\PassiveBuffEffMng.pytGetPassiveSkillByTriggerTypeSs@  
cCsªt|ƒ}|sdStƒj|ƒ}|s2dS|rD|jƒnd}|j||ƒ}|sfdSt||ƒ}tj||ƒ}x|D]\}    }
||    kr¬qŽn|jƒj    |    ƒ} | sÍqŽnt
j | |
ƒ} | sëqŽnt
j | |ƒrqŽnt
j | ƒ} tj| |ƒs*qŽnd|
}tjtd|dfƒ}|ru|||| | |ƒ ruqŽnt
j| d||ƒtj||| |ƒtSWtS(NisPassiveSkill_%ss%s.%sRù(RúR*RÔR»RÎRøRÿRR RR¹RRRRRRRRR¼tDoLogic_UseEnhanceSkillRýRû(RóRôR    R«R1RÖRÀRBR R¿R•R¾RªRRR((s.\\PassiveBuffEffMng.pytOnPassiveSkillHappen„sD  
cCsmt|ƒ}|stStƒj|ƒ}|s2tS|j|ƒ}|sKtStj||ƒ}tj|ƒ}tj    ||ƒs‚dS|r”|j
ƒnd}    xÌ|j ƒD]¾\}
} |    |
krÅq§nx| D]•} d| j ƒ} t jtd| dfƒ}|s
qÌn|||| |ƒs%qÌnt jtd| dfƒ}|r`|||| ||
ƒntSWq§WtS(NisPassiveBuff_%ss%s.%sRùtDoLogic(RúRûR*RÔR·RÿRR¹RRR¯RR©RRRRý(RóRôttagSkillR«R1RÖtbuffDictR Rt
tagSkillIDRMt
effectListt passiveEffectRR((s.\\PassiveBuffEffMng.pytOnPassiveBuffHappenµs:       c
Csjt|ƒ}|sdSt}|rM|jƒs2dStj|ƒrMt}qMntj|ƒret}ntƒj|ƒ}|sdS|j    |ƒ}|sšdSt
||ƒ}t j ||ƒ}|rÍ|j ƒnd}    x|jƒD]‚\}
} |
|    krþqànxa| D]Y} d| jƒ} tjƒj|
ƒ}|s<qn|r]|jƒtjkr]qntjtd| dfƒ}|s…qn|||| |
d|ƒs¦qntjtd| dfƒ}|sÎqn|| ƒ}|sæqntj|ƒ}t j||ƒs qntj|dƒtj||||ƒrNt| ||| |ƒntj|dƒqWqàWdS(NisPassiveBuff_%ss%s.%sRùtuseSkillt GetSkillDatai(RúRûR R¹RüRýRþR*RÔR·RøRÿRR¯RR©RRÈRÉRRRRRRRR¼RtAfterUsePassiveSkill(RóRôR@R«R1R RÖR;R R¶RMR=R>RR¾RR³R((s.\\PassiveBuffEffMng.pytOnPassiveBuffTriggerás`          cCs=tjtd|dfƒ}|s&dS|||||ƒdS(Ns%s.%sRB(RRR(RRóRôR>R1R((s.\\PassiveBuffEffMng.pyRB)s
c Cst|ƒ}|sdSt}|r:tj|ƒr:t}ntƒj|ƒ}|sVdS|j|ƒ}|sodStj    ||ƒ}tj
|ƒ}tj ||ƒs¦dS|r¸|j ƒnd}    d}
x8|j ƒD]*\} } | |    krïqÑntjƒj| ƒ} | sqÑnxè| D]à}|r>| jƒtjkr>qnd|jƒ}tjtd|dfƒ}|svqn||||| d|ƒs—qntjtd|dfƒ}|dkrÅqn|
t||| tjƒ7}
|
||||ƒ7}
qWqÑW|
S(NisPassiveBuff_%ss%s.%sRùR@R0(RúRûR¹RüRýR*RÔR·RÿRRRR¯RRRÈRÉR RRR©RRR    R5RŠ(RóRôR@R«R RÖR;R RR¶R4RMR=R¾R>RR((s.\\PassiveBuffEffMng.pyt GetValueByPassiveBuffTriggerType3sN        c
Cs”g}tjƒ}xZt|jƒƒD]F}|j|ƒ}tj|tj|ƒsXq%n|j    |j
ƒƒq%Wg}|j ƒ}x]t|j ƒƒD]I}|j |ƒ}|jƒtjkrÄq”n|jƒ}|j|ƒq”Wtjd||fƒx|D]}|j|tƒqÿW|jƒxZ|D]R}tjƒj|ƒ}    |    sQq*n|    jƒtjkrlq*n|j|tƒq*Wtƒj|ƒdS(NsPlayerDogzSkill:%s - É¾³ý%s(RtIPY_DataR@t GetDogzCounttGetDogzByIndexRtGetDictValueByBitRtDef_PDict_DogzFightStateRËtGetHelpBattleSkillsR RÄRÅR RÆR¯RARtDeleteSkillBySkillIDRûtsortRÈRÉt GetSkillTypetDef_SkillType_AttrSkillNoLearntLearnSkillByIDR*RQ(
R2t
dogzSkillst
ipyDataMgrRCtipyDatat delDogzSkillsRÂR¾RMR³((s.\\PassiveBuffEffMng.pytPlayerDogzSkillss8    
 cCsg}|jƒtjkr|S|jƒ}x]t|jƒƒD]I}|j|ƒ}|s_q>n|jƒtj    krzq>n|j
|ƒq>W|S(N( RÓRURVR R@RÄRÅR RRÆRA(R¢RBRÂRCR¾((s.\\PassiveBuffEffMng.pyR¸ s (4RUt ReadChConfigRRRRR¹t    BuffSkillR¼R R&R$t    PlayerVipRÿRêRRïR-R-RÞRt    ImportAllR=R?RERNRRRYR—R tobjectR¡RÑR*RøRûRRR!R#R    R"RúR5R6R8R?RCRBRDRTR¸(((s.\\PassiveBuffEffMng.pyt<module>s`                         P            0    '        Z    $Ït    %     I        #     T        A    1    1    ,    H    
    @    -