cehua_lgq
2018-08-10 0dbedbc2c2023bb8d4fb7f9da675dfe256a72c42
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
x¨åZc@s dZddlZddlZddlZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z d„Z d„Z dd„Zd„Zddd    „Zd
„Zd „Zd „Zd „Zd„Zd„Zd„Zd„ZdS(sVersion = 2016-11-22 21:00iÿÿÿÿNcCs_tj}tj|ƒr$tj}ntj|ƒtjkrHtj}n|jƒj    |ƒdS(N(
tChConfigtDef_NormalNPCAngryCountt
IsGameBosstDef_SuperFBBossAngryCountt    NPCCommontGetDropOwnerTypetDropOwnerType_MaxAngrytDef_SuperBossAngryCountt GetNPCAngrytInit(tcurNPCt
angryCount((sl.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\NPC\NPCAI\AIType_186.pytDoInit.s      cCsKtj|ƒ}|jƒtjks6|jƒtkrR|j|ƒdkrRdSn|jƒr‡|j    |ƒt
j |ƒdkr‡dSn|jƒ}|tj krË|j ƒtjkrËtj||ƒdSt||ƒ}|jƒ sî| r$|tjkr |j|ƒ r tj||ƒndSt|||ƒ|jtjdƒdS(Ni(Rt
NPCControlt GetCurActiont IPY_GameWorldtlaNPCDietIsAlivetTruetDieTickt    GetIsBosstRefreshBuffStatetGameObjtGetHPt    laNPCMovetGetCurMoveTypetmtRuntAICommontNormalNPCFast_Movet__RefreshDropOwnertGetIsNeedProcesst    laNPCNulltProcessHPRestoretNormalNPCFree_Movet
__NPCFightt DoHPPerLogicRtDef_NPCHurtTypeAll(R
ttickt
npcControlt curNPCActionttagObj((sl.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\NPC\NPCAI\AIType_186.pyt    ProcessAI>s('   $i¸ cCs­tj|ƒ}d}d\}}tj|ƒ}|tjkrÁ|j||ƒ}|rÁ|jƒ|jƒ}}|tj    kr”t
|||ƒ}q¾|tj kr¾t j |tjƒ}q¾qÁn|s“d\}    }
|j||dtƒ|jƒ} | r(| jƒ} | jƒ}    t j | |    ƒ}
n|
}|tjkr“|    tjkr“|
r“|
jƒ} | rwtj    | }}qtj |
jƒ}}q“nt|||||ƒ|S(Nit
isUpdAngry(ii(NN(RR tNoneRRtDropOwnerType_MaxHurttRefreshHurtListt GetValueTypet
GetValueIDtDef_NPCHurtTypeTeamt__GetMaxHurtTeamPlayertDef_NPCHurtTypePlayert    GameWorldtGetObjRt    gotPlayertRefreshAngryListRtGetMaxAngryTagtGetObjIDt
GetObjTypeRt    GetTeamIDt GetPlayerIDt__RefreshBossDropOwnerObjBuff(R
R%trefreshIntervalR&R(t    ownerTypetownerIDt dropOwnerTypet
maxHurtObjt angryObjTypet maxAngryObjtmaxAngrytangryIDtteamID((sl.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\NPC\NPCAI\AIType_186.pyR_s8     $ cCsÄtjƒj|ƒ}|rÀ|j|jƒƒ}xt|jƒƒD]v}|j|ƒ}|dksC|j    ƒdkr|qCn|j
ƒdkr”qCn|j |j ƒ|j ƒ|ƒrC|SqCWndS(Ni(R3tGetTeamManagertFindTeamtGetRefreshPosAttGetCurRefreshPointIndextxrangetGetMemberCountt    GetMemberR+R;RtGetIsInRefreshPointtGetPosXtGetPosY(R
R&RFtcurTeamt refreshPointtit curTeamPlayer((sl.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\NPC\NPCAI\AIType_186.pyR1…s! ic CsW|jƒ}tj|ƒ}|tjtjgkr7dS|jtjƒ}|jtjƒ}|r¬||ksy||kr¬t    j
d||||fƒt ||||ƒn|j tj|ƒ|j tj|ƒ|tj krt    j|tjƒ}    |    rSt|    ||ƒqSnA|tjkrSt    jƒj|ƒ}
|
s@dS|j|jƒƒ} xût|
jƒƒD]ä} |
j| ƒ} | dksh| jƒdkr¡qhn| jƒt    jƒjƒkr|j| jƒ| j ƒ| ƒrt!j"| |t#ƒrt| ||ƒqht$j%| tj&|d|ƒ}|rht    j
d|| jƒfƒqhqhWndS(NsU¹éÊô±ä¸ü, Çå³ý¾É¹éÊô! ownerType=%s,ownerID=%s,lastDropOwnerType=%s,lastDropOwnerID=%sit    buffOwners'ɾ³ý¹éÊô¶ÓÔ±buff: teamID=%s,playerID=%s('tGetNPCIDRRRR,Rt GetDictByKeytDef_NPC_Dict_LastDropOwnerIDtDef_NPC_Dict_LastDropOwnerTypeR3tDebugLogt__DelBossDropOwnerBufftSetDictR2R4RR5t__AddBossDropOwnerPlayerBuffR0RGRHRIRJRKRLRMR+R;t GetCopyMapIDt GetGameWorldRNRORPt AttackCommontCheckKillNPCByCnttFalset    BuffSkilltDelBuffBySkillIDtDef_SkillID_DropOwnerBuff(R
R&R%R>R?tnpcIDR@tlastDropOwnerIDtlastDropOwnerTypet    curPlayerRQRRRSRTtisOk((sl.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\NPC\NPCAI\AIType_186.pyR<”sB     !'cCsYtj|tjƒd}|sUtj|tj|d|ƒtjd|jƒƒndS(NiRUsÌí¼Ó¹éÊôbuff: playerID=%s(t SkillCommont FindBuffByIDRRetAddBuffBySkillType_NoRefurbishR3RZR;(RiR%R
tfindBuff((sl.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\NPC\NPCAI\AIType_186.pyR]Äs
cCs|tjkr^tj|tjƒ}|s.dStjd|ƒtj|tj    |d|ƒn®|tj
kr tj ƒj |ƒ}|sŒdStjd|ƒxlt |jƒƒD]U}|j|ƒ}|dks°|jƒdkréq°ntj|tj    |d|ƒq°WndS(Nsɾ³ý¹éÊôÍæ¼Òbuff: playerID=%sRUsɾ³ý¹éÊô¶ÓÎébuff: teamID=%si(RR2R3R4RR5RZRcRdReR0RGRHRKRLRMR+R;(R
R>R?R%RiRQRSRT((sl.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\NPC\NPCAI\AIType_186.pyR[Ës"#cCsô|jtjƒ}|jtjƒ}|tjkrbtj|tjƒ}|sRdSt    ||ƒnŽ|tj
krðtj ƒj |ƒ}|sdSx]t |jƒƒD]F}|j|ƒ}|dks£|jƒdkrÜq£nt    ||ƒq£WndS(s ÑÓ³ÙbossµôÂä¹éÊôbuffÏûʧʱ¼ä Ni(RWRRXRYR2R3R4RR5t#__SetBossDropOwnerBuffDisappearTimeR0RGRHRKRLRMR+R;(R
R?R>RiRQRSRT((sl.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\NPC\NPCAI\AIType_186.pyt__DelayBossDropOwnerBuffàs"c Cstjƒjtjƒ}|s"dStj|ƒ}tj||ƒ}|dkrSdSd}tjƒj    ƒ}|d}xt
|j ƒƒD]‰}|j |ƒ}    |    j ƒ}
|
jƒtjkrÄqˆn|jƒ|    jƒkràPn|    j|ƒ|    j|ƒ|j||    jƒƒPqˆWdS(Ni'i((R3t GetGameDatatGetSkillBySkillIDRReRkt GetBuffTypetGetBuffManagerByBuffTypeR_tGetTickRKt GetBuffCounttGetBufftGetSkilltGetSkillTypeIDtGetIDt
GetOwnerIDtSetCalcStartTickt SetRemainTimetSync_RefreshBufft GetRemainTime( RiR
t    findSkilltbuffTypet    buffTuplet
RemainTimeR%tbuffStateManagertindextcurBufft    buffSkill((sl.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\NPC\NPCAI\AIType_186.pyRo÷s, 
   cCs,|jƒtjkr(tj||ƒndS(N(tGetGameObjTypeRR5t PlayerStatetSetBossStateTick(tatkObjR
tskillR%((sl.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\NPC\NPCAI\AIType_186.pyt
OnAttacked scCs6tjƒjƒ}tj||ƒt||dƒdS(Ni(R3R_RuR‰RŠR(R
RiRŒR%((sl.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\NPC\NPCAI\AIType_186.pytOnAttackDieByPlayer&scCstj|ƒt|ƒdS(N(RtDoNPCUseSkillOnDieRp(R
tHurtTypetHurtID((sl.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\NPC\NPCAI\AIType_186.pytOnDie4s 
cCsBtj||ƒrdStj|ƒtj|ƒ}|jƒtkrR|jƒdS|dksst    j
|ƒdkrwdSt j |j ƒ|jƒ|j ƒ|jƒƒ}tj||||ƒrÃdS||jƒkræ|j|ƒdS||jƒ|jƒkrdS|j|j ƒ|jƒƒr(dStj||d|ƒdS(Ni(RtDoNPCSkillWarningProcessRtSetNPCInBattleStateR tIsInRefreshAreaRtMoveBackR+RRR3tGetDistRORPtDoAutoUseSkillt
GetAtkDisttMoveToObj_Detelt GetAttackTicktGetAtkIntervalt    FixTagPost
BaseAttacktAttack(R
tcurTagR%R&ttagDist((sl.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\NPC\NPCAI\AIType_186.pyR"@s* 
!0 (t__doc__RRRRR`R3RžR‰RkRcRR R)RR1R<R]R[RpRoRRŽR’R"(((sl.\ProjectSServer\ServerPython\ZoneServerGroup\map1_8G\MapServer\MapServerData\Script\NPC\NPCAI\AIType_186.pyt<module>s0                   ! &    0                )