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
ÏõÐhc@sddlZddlZddlZddlZddlZddlZddlZddlZejddƒd„Z    dde d„Z dde d„Z de dd„Ze d    „Zdd
„Zde dd „Zd „Zd „Zd„Zde d„Zdd„ZdS(iÿÿÿÿNs Script\Skill\t    TurnBuffscCs?tjtd|jƒdfƒ}|s,gS|||||ƒS(NsBuffAtkType_%d.%st CalcBuffValue(t    GameWorldt GetExecFuncRt
GetAtkType(t    turnFighttattackertdefendertcurSkilltcallFunc((sfD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\TurnBuff.pytGetAddBuffValues"c Cs¤|s
dStjd|ƒ}|s&dS|r8|jƒnd}|g}tjƒ}    |    jtj||ƒ}
|
j|ƒt    |||
|||ƒ} |    j
|
ƒ| S(NtSkilli( t IpyGameDataPYtGetIpyGameDatatGetIDtObjPoolt
GetPoolMgrtacquiret    BattleObjtPySkillt SetTagObjListt    OnAddBufftrelease( RtbatObjtskillIDt    buffOwnertbySkillt
afterLogict skillIpyDatatownerIDt
tagObjListtpoolMgrtuseSkilltisOK((sfD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\TurnBuff.pytDoAddBuffBySkillID#s       c Csþ|jƒ}|s|jƒn|}|r6|jƒnd}|jƒ}|sW|}n|jƒ}    |jƒtjtjgkr´|jtjƒr´t    j
d|||    |fƒt S|jƒtjkrt j |||tj|ƒrt    j
d|||    ||jƒ|jƒfƒt Snt||||ƒ}
t    j
d|||jƒ|
|    |fƒ|jƒ} |jƒ} |jƒ} |jtjƒ}|r²t    j|jƒ| ƒ} n|jƒ}| dkr±|jƒ}|rÕ|j| ƒ}t|ƒ|kr®d}xZ|D]R}|sq
n|jƒ|    kr4q
n| sS|j ƒ|j ƒkr
|}q
q
W|r«t    j
d|j!ƒ|    |j ƒfƒt"||||||ƒq«q®qÕn$| dkrH|j#ƒ}x    t$|j%ƒƒddd…D]X}|j&|ƒ}|j'ƒ}|r(|j#ƒ|kr(qént"||||||ƒqéWn|j| ƒ}x{|D]s}|spq^n|jƒ|    krˆq^n|j!ƒ}|j(ƒ}t    j
d    || |    | fƒ| }| d
kr|jƒ}|| }|r||kr|}nt    j
d || |fƒn t    j
d ƒ|j)|j*ƒƒ|j+|j,ƒƒ|j-|ƒ|j.|
ƒ|r•|r•|j/tj0|||gƒnt1||||d t2ƒ||krÐt3|||t ƒnt2SWt4|||||
|||d| ƒt2S(NisFÎÞµÐ״̬ÏÂÃâÒ߸Ãbuff: curID=%s,skillID=%s,ownerID=%s,relatedSkillID=%ssVѪÁ¿µÍÓÚ°Ù·ÖxʱÃâÒß¿ØÖÆbuff: curID=%s,skillID=%s,ownerID=%s,relatedSkillID=%s,hp:%s/%ssWOnAddBuff: curID=%s,skillID=%s,atkType=%s,buffValueList=%s,ownerID=%s,relatedSkillID=%sis8ɾ³ý¶ÀÁ¢²ã¼¶¶àÓàbuff: buffID=%s,ownerID=%s,remainTime=%siiÿÿÿÿsE    ÒѾ­´æÔÚ¸Ãbuff: buffID=%s,skillTypeID=%s,ownerID=%s,buffRepeat=%sis>        µþ¼Ó²ã¼¶: nowLayerCnt=%s,addLayerCnt=%s,updLayerCnt=%ss        Ä¬Èϸ²¸ÇtisNewAddt setLayerCnt(5t
GetSkillIDt
GetBySkillRt GetSkillTypetChConfigtDef_SkillType_LstDepBufftDef_SkillType_Actiont CheckInStatetBatObjState_WudiRtDebugLogtFalset TurnPassivetGetTriggerEffectValuetPassiveEff_ImmuneControlBufftGetHPtGetMaxHPR
RtGetSkillTypeIDt GetBuffRepeatt GetLayerCntt GetEffectByIDtPassiveEff_AddBuffLayerByWeighttGetResultByWeightListtGetEffectValuestGetBuffManagert GetLayerMaxtFindBuffListBySkillTypeIDtlentNonet
GetOwnerIDt GetRemainTimet    GetBuffIDt    DoBuffDeltGetCurBuffStatetranget GetBuffCounttGetBuffByIndext GetSkillDatatGetLayert SetCalcTimet getTimelinet SetRemainTimet GetLastTimetSetLayertSetBuffValueListt AddAfterLogictAfterLogic_AddBufftSyncBuffRefreshtTruetRefreshBuffEffectt __addNewBuff(RRt    buffSkillRRRRtrelatedSkillIDtcurIDRt buffValueListt skillTypeIDt
buffRepeatt addLayerCntt addLayerEfftbuffMgrt maxLayerCnttbuffListtdelBufftbufft    buffStatetindext    skillDatatbuffIDt nowLayerCntt updLayerCnt((sfD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\TurnBuff.pyR5s                &             &%  &       
         %ic    Csk|jƒ}    |jƒ}
|j|
ƒ} | sEtjd|
|    ƒdS|rW|jƒnd} |jƒ} | jƒ}tjd||
| | |jƒf|    ƒ| j| ƒ| j|jƒƒ| j    |j
ƒƒ| j |ƒ| j |ƒ|j ƒ}|r|j||ƒn|r;|r;|jtj|| |gƒnt||| | dtƒt||| tƒdS(Ns    Ìí¼Óbuffʧ°Ü! skillID=%sisO    __addNewBuff. buffID=%s,skillID=%s,ownerID=%s,relatedSkillID=%s,timeline=%sR#(RR%tAddBuffRR-RBRKt
SetOwnerIDRJRLRMRNRORDt AddBuffStateRPR(RQRRRSRT(RRR^RVRYRRRR$RXRRbRWRRft curBuffState((sfD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\TurnBuff.pyRU¤s0              c
Csãt}|jƒ}|jƒ}x«td|jƒƒD]”}|j|ƒ}|jƒ}    |    dkrgq4n|jƒr°|jƒt    j
t    j gkrÈ|rÈ|j |||ƒqÈq4|    t    j kr4t}q4q4W|rßt|ƒndS(Ni(R.RHtGetPassiveEffManagerREtGetEffectCountt    GetEffectt GetEffectIDt GetTriggerWayt GetTriggerSrcR(tTriggerSrc_SkilltTriggerSrc_SkillSelftAddBuffPassiveEffectt
AttrIDListRStRefreshBuffAttr(
RRtcurBufft    isNewBufft isRefreshAttrRet passiveEffMgrt effectIndext    curEffectteffectID((sfD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\TurnBuff.pyRTÂs      $  cCsr|dkr[|j|ƒ|r+|jƒnd}t||||ƒt|||tƒdSt||||ƒdS(Ni(RNR%RRRTR.RC(RRRxtupdLayert relatedSkillRW((sfD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\TurnBuff.pytDoBuffLayerChangeÜs  c    Cs t}t}|r|jƒnd}|r?|r?t}t}nt}    t}
|jƒ} |jƒ} |jƒ} |jƒ}|jƒ}|r | j|| ƒn| j    | |ƒ|rÌt
|| | |ƒn|r|r|rê|jƒn| }|j t j | ||gƒnxÆtd|jƒƒD]¯}|j|ƒ}|jƒ}|sRq%n|jƒ}|r¼|t jkr’tj||t jd|ƒn|jƒt jt jgkrÔt}
qÔq%|t jkr%t}    q%q%W|
rô|jƒj| ƒn|    rt|ƒndS(s±É¾³ýbuff
    @param relatedSkill: ¹ØÁªµÄ¼¼ÄÜ
    @param afterLogic: ÊÇ·ñÐèÒªÔÚ¹ØÁª¼¼ÄÜ´¦ÀíÍê±Ïºó²Å´¦Àíɾ³ýºóÐøÂß¼­£¬Èç֪ͨ£¬´¥·¢±»¶¯µÈ
    @param tagObj: ÓÉË­ÒýÆðµÄbuffɾ³ý
    itconnBuffN(RSR%R.RR;RBRHRDt DelBuffStatetDelBufft SyncBuffDelRPR(tAfterLogic_DelBuffRERnRoRpRqtTriggerWay_BuffDelR/tOnTriggerPassiveEffectRrRsRtRvRmtDelBuffPassiveEffectRw(RRRxR€RttagObjRtisSyncRWRzthaveBuffPassiveEfft    buffObjIDR^RfReRlttagObjIDR|R}R~t
triggerWay((sfD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\TurnBuff.pyRCçsN                cCsH|r|jƒnd}t|||jƒ|ƒtjƒj|ƒdS(Ni(R%R…RBRRR(RRRxR€RW((sfD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\TurnBuff.pytDoBuffDelAfterLogicOver#scCsK|jƒ}tjtd|jƒdfƒ}|rG||||ƒndS(NsBuffAtkType_%d.%st DoBuffProcess(RHRRRR(RRRxReR    ((sfD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\TurnBuff.pyR‘*s
 "c    Csi|jƒ}|jƒ}|jƒ}|jƒ}tjd||jƒ|jƒ|||fƒi}|jƒ}xït    |j
ƒƒD]Û}|j |ƒ}t d|j ƒƒ}    |jƒ}
x¢t    |
jƒƒD]Ž} |
j| ƒ} | jƒ} | tjkrqÍn| }| jdƒ|    }| jdƒ}|dkrA| }n|j|dƒ|||<qÍWq„Wtjd|ƒ|jƒ}tjjƒ}xŸtjjƒD]Ž\}}||kr½qŸn||}|j|tƒ}|dkrëqŸn|d|d}|j||ƒtjd|||||fƒqŸWxu|jƒD]g\}}||kr\q>n|j|tƒ}||}|j||ƒtjd    ||||fƒq>W|jƒ}|jƒ}||kr|j|tƒ|r||kr|||7}|j|tƒqntjd
||||fƒtjd ||jƒ|jƒ|||jƒfƒd S( sB Ë¢ÐÂbuffÊôÐÔ£¬Èç¹ûÓÐÉæ¼°µ½buffÊôÐÔ±ä¸üµÄ£¬Ö»ÄÜÈ«²¿buffÖØÐÂË¢
    s;RefreshBuffAttr ID:%s,atk=%s,def=%s,hp=%s/%s,batAttrDict=%siiis    buffAttrDict=%si'gˆÃ@s=    attrID=%s(PerID:%s),attrValue=%s(PerValue:%s),updValue=%ss2    attrID=%s,attrValue=%s,addValue=%s,updValue=%ss    befHP=%s/%s, aftHP=%s/%ss,    ×îÖÕÊôÐÔ ID:%s,atk=%s,def=%s,hp=%s/%s,%sN( RR2R3tResetBattleEffectRR-tGetAtktGetDefR;RERFRGtmaxRIRHRnRoRpR(RvtGetEffectValuetgett AttrPerDicttvaluestitemstGetBatAttrValueR.tSetBatAttrValuetSetMaxHPRStSetHPtGetBatAttrDict(RtobjIDtbefHPtbefMaxHPt batAttrDictt buffAttrDictR^RdRbtlayerReteIndexteffectteffIDtattrIDt    attrValuetcalcTypet    perIDListt    attrPerIDt attrPerValuetupdValuetaddValuetaftHPtaftMaxHP((sfD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\TurnBuff.pyRw1sj        &    
"  
 $ 
!   5cCsÎtjƒjtjƒ}|jƒ|_|jƒ|_|j    ƒ|_
||_ |j ƒ|_ |jƒ|_|jƒ|_|jƒ|_|jƒ|_|jƒ|_|r´dnd|_|j|ƒdS(Nii(RRRtChPyNetSendPackttagSCBuffRefreshRtObjIDRBtBuffIDR%tSkillIDtRelatedSkillIDRAtLastTimeRItLayerR@tOwnerIDt    GetValue1tValue1t    GetValue2tValue2t    GetValue3tValue3tIsAddt
addBatPack(Rt    curBatObjRxRWR#t
clientPack((sfD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\TurnBuff.pyRRws     cCsDtjƒjtjƒ}||_||_||_|j|ƒdS(N(    RRRR³t tagSCBuffDelRµR¶R¸RÃ(RR RfRWRÅ((sfD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\TurnBuff.pyR…‡s              (R(RR³R RRRR/t    ImportAllR
R?R.R"RRURTRRCRR‘RwRRR…(((sfD:\SG_ServerCode\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\Skill\TurnBuff.pyt<module>s(            o  <            F