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
…ü[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#dd„Z%d„Z&d„Z'd„Z(d„Z)d„Z*d„Z+d„Z,d„Z-d„Z.d„Z/dS(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((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\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;((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\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((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\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<((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pytOnLoginGFPassiveµs(                         cCsDtƒj|ƒtƒj|ƒtƒj|ƒtƒj|ƒdS(N(R*tRegistPassiveEffR+tRegistPassiveBufftRegistPassiveEffDogz(R2((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pytOnLoadMapGFPassiveåscCsdtƒj|jƒtjfƒx>tddƒD]-}tƒj|jƒd|tjfƒq/WdS(Niii
(R*tRemovePassiveEfftGetIDt IPY_GameWorldt    gotPlayertrangetgotNPC(R2RC((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pytOnPlayerLeaveMap s+cCs´iCtjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd    6tjd
6tj    d 6tj
d 6tj d 6tj d6tjd6tj d6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd 6tjd!6tjd"6tjd#6tjd$6tjd%6tjd&6tjd'6tj d(6tj!d)6tj"d*6tj#d+6tj$d,6tj%d-6tj&d.6tj'd/6tj(d06tj)d16tj*d26tj+d36tj,d46tj-d56tjd66tj.d76tj/d86tj0d96tj1d:6tj2d;6tj3d<6tjd=6tj4d>6tj5d?6tj6d@6tj#dA6tjdB6tj7dC6}|j8|dDƒS(ENi 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ÿÿÿÿ(9RtTriggerType_BuffStatetTriggerType_TagBuffStatetTriggerType_AddDamagePertTriggerType_AttackOvertTriggerType_AttackAddSkillPertTriggerType_SuperHittTriggerType_SuperHitValuetTriggerType_HurtObjAddBufftTriggerType_ReduceCDtTriggerType_SuperHitSkillPertTriggerType_AttackAddFinalValuetTriggerType_HappenStatetTriggerType_AbsorbShieldtTriggerType_BounceHPtTriggerType_BuffDisappeartTriggerType_BuffTimetTriggerType_BounceHPPertTriggerType_AddSingleSkillPertTriggerType_SkillOverNoAttacktTriggerType_BeAttackOvertTriggerType_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_ProDefValuetget(teffectIDttdict((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pytGetTriggerTypeByEffectIDsŠ
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 cCsitjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd    6tj    d
6tj
d 6tj d 6tj d 6tj d6tj d6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6tjd6}|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ÿÿÿÿ(RR]R^RmR\Rgt TriggerType_Buff_AddSuperHitRatetTriggerType_Buff_AttackSubLayert!TriggerType_Buff_BeAttackSubLayerR…tTriggerType_Buff_MustBeHitRdRRntTriggerType_ChangeHurtToHPRptTriggerType_ForbidenCureRrR†tTriggerType_BloodShieldR‘(R’R“((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pytGetBuffTriggerTypeByEffectIDhs4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 t
PassiveEffcBs_eZd„Zd„Zd„Zdd„Zd„Zd„Zd„Zd„Z    dd    „Z
RS(
cCs1||_i|_i|_i|_i|_dS(N(tgameObjtAffectBuffDicttAffectSkillDicttAffectPassiveSkillSetDicttAffectDogzSkillDict(tselfRž((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\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((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\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§((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pyt DelBuffInfo©s     icCs|jj|dfiƒS(Ni(RŸR‘(R£R§t
useSkillID((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\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((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\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((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\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((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\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((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pytAddPassiveSkill-s*      !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((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pytGetPassiveSkillsByTriggerTypeKs"""""%( t__name__t
__module__R¤RªR±R³R½R¿RÃRÆRÊ(((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pyRŠs                              %    tPassiveEffManagercBs\eZd„Zd„Zd„Zd„Zdd„Zd„Zd„Zd„Z    d    „Z
RS(
cCs i|_dS(N(tpassiveEffClassDict(R£((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pyR¤[scCs+|jƒ|jƒf}|jj|dƒS(N(RTtGetGameObjTypeRÎR‘R    (R£RžR8((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pyt GetPassiveEff_scCsH|jƒ|jƒf}||jkr=t|ƒ|j|<n|j|S(N(RTRÏRÎR(R£RžR8((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pytInitObjPassiveEffescCs)|jƒ|jƒf}||j|<dS(N(RTRÏRÎ(R£Ržt
passiveEffR8((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pyt AddPassiveEffksicCsz|j|ƒ}| s| r`|r1|jƒdSt|ƒ}|jƒsMdS|j||ƒn|rv|j|ƒndS(N(RÐRÃRRÓRÆ(R£RžRMRÒ((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pyROps
  cCsR|j|ƒ}|sDt|ƒ}|jƒs1dS|j||ƒn
|jƒdS(N(RÐRR¿RÓ(R£RžRÒ((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pyR+‡s  
cCsR|j|ƒ}|sDt|ƒ}|jƒs1dS|j||ƒn
|jƒdS(N(RÐRR½RÓ(R£RžRÒ((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\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Ò((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pyRP¢s2$     
     "cCs&||jkr"|jj|ƒndS(N(RÎR®(R£R8((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pyRSÇs( RËRÌR¤RÐRÑRÓROR+RQRPRS(((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pyRÍYs                              %cCstjstƒt_ntjS(N(t
PyGameDatatg_PassiveEffManagerRÍ(((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\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((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pytGetPassiveDefenderò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.%stCheckCanHappeni(tFindRealAttackertFalseR RµtisPassiveSkilltTruetGetUsingPassiveSkillRRZR*RÐR·RÊRôt AttackCommontGetBattleRelationTypeR tFindSkillBySkillTypeIDtDef_SkillFuncType_GiftSkilltGetSkillEffectByEffectIDtRefreshSkillRemainTimetGetSkillBattleTypetCheckBattleRelationTypeRt GetExecFuncRtSetUsingPassiveSkillR¸tUsePassiveTriggerSkillt SetRemainTimetadd(RïRðt    connSkillR§R1tisEnhanceSkillt
skillIDSettstopPassiveSkillRÒR¼RBtresulttbattleRelationTypeR»R’RºR¦tskillBattleTypetpyNametcallFunc((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pytOnPassiveSkillTrigger    sb        
 cCs‡|jƒtjkr|S|jƒ}|tjtjtjgkrW|jƒrS|SdS|tjkrj|Stj    tj
|ƒ}|SdS(N( RÏRURXtGetTypetntPettntElftntFairyt    GetIsBosst    NPCCommontGetSummonNPCOwnerRV(RïtnpcType((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\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ûRüRt GetGameWorldtGetTickR RýR RRþtGetCoolDownTimeRRÿRRRRR    tSetSkillRemainTime(RïRðRR§R RÒR¼RBR R1tcurValueR»R’RºR¦RRR((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pyt!GetPassiveSkillValueByTriggerTypeusV      
  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ûRüR RýRÿRRRRRRA(RïRðRR§RÒR¼RBR RÉR»R’RºR¦RRR((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pytGetPassiveSkillByTriggerType¶s@  
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ûRüR RýRµRÿRRRRRRRR¸tDoLogic_UseEnhanceSkillRùR÷(RïRðRR§R1RÒR¼RBR R»R’RºR¦RRR((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\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ûRüRµRRR«RR¥RRRRù(RïRðttagSkillR§R1RÒtbuffDictR Rt
tagSkillIDRMt
effectListt passiveEffectRR((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pytOnPassiveBuffHappens:       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ûRüR«RR¥RRÄRÅRRþRRRRRR¸RtAfterUsePassiveSkill(RïRðR+R§R1R RÒR&R R²RMR(R)RRºRR¯R((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pytOnPassiveBuffTriggerDs`          cCs=tjtd|dfƒ}|s&dS|||||ƒdS(Ns%s.%sR-(RRR(RRïRðR)R1R((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pyR-Œ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+R(RöR÷RµRøRùR*RÐR³RûRüRRR«RRRÄRÅR RRþR¥RRR    R Rˆ(RïRðR+R§R RÒR&R RR²RRMR(RºR)RR((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pyt GetValueByPassiveBuffTriggerType–sN        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«RAtDebugLogtDeleteSkillBySkillIDR÷tsortRÄRÅt GetSkillTypetDef_SkillType_AttrSkillNoLearntLearnSkillByIDR*RQ(
R2t
dogzSkillst
ipyDataMgrRCtipyDatat delDogzSkillsR¾RºRMR¯((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pytPlayerDogzSkillÖs8    
 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º((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pyR´s (0RUt ReadChConfigRRRRRµt    BuffSkillR¸R R&R$t    PlayerVipRûRæRRëR-RRÚRt    ImportAllR=R?RERNRRRYR”RœtobjectRRÍR*RôR÷R    RRöR R!R#R*R.R-R/R@R´(((sT.\\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\PassiveBuffEffMng.pyt<module>sX                         P            0    '        T    "Ït    %    T        A    1    1    ,    H    
    @    -