xdh
2019-02-21 607215ae749819ad901b5f76ae60e9e3a3397be5
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
•CZc@sªddlTddlmZddlmZddlZddlZddlZddlZddlZdZ    dZ
dZ dZ dZ d Zd Zd
efd „ƒYZdS(iÿÿÿÿ(t*(ttagCPlayerBaseAttack(t    tagCGMCMDNs2012-08-30 16:30iièi¸ itAISetMapToAutoFightcBsàeZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z    d„Z
d    „Z d
„Z d „Z d „Zd „Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„ZRS(cCsªt|_||_tj||dttƒ|jj|_d|_    t|_
t|_ d|_ d|_ d|_d|_d|_d|_d|_g|_t|_dS(Ng{®Gáz„?i(ii(ii(tFalsetisDoAItrobottAIBaset__init__tTruetrunObjtplayerMoveInfotPlayerMoveInfotobjIdt isFirstAttacktisSendPackAttacktrecevidPackAttackTimetmoveTargetPosTimetSendPackAttackTimetplayerDoSkillTimet willMovePost nextMovePostsendPackToChangeMapteventNpcIdList(tselfR((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyR1s                                                     cCsà|jd|jtƒ|jd|jtƒ|jd|jtƒ|jd|jtƒ|jd|jtƒ|jd|jtƒ|jd|jtƒ|jd|jtƒ|jd    |j    tƒ|jd
|j
tƒdS( Niiiiiiiiii    ( t    RegNetMsgtOnObjMoveChangeR    tOnObjBaseAttacktOnRoleMoveFailtOnPlayerResetPostOnObjInfoRefreshtOnPlayerLoginLoadOKRtOnPlayerRebornt OnPlayerDie(RtaiMgr((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyt_RegisterPacketKscCs|jj|ƒdS(N(R
R(RtpackData((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyRfscCs|jj|ƒdS(N(R
R(RR$((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyRnscCs|jj|ƒdS(N(R
R(RR$((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyRvscCs|jj|ƒdS(N(R
R(RR$((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyR~scCs?|j|jjƒjƒkr"dS|jj|ƒt|_dS(N(tPlayerIDRt GetPlayerInfot GetPlayerIDR
RR    R(RR$((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyR ‡scCs?|j|jjƒjƒkr"dSt|_|j|jƒdS(N(R%RR&R'RRt    ClearInfo(RR$((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyR!’s    cCsm|jj|_d|_t|_t|_d|_d|_    d|_
d|_ d|_ d|_ d|_dS(Ni(ii(ii(R
R R R R    RRRRRRRRRR(RR((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyR(žs                                    cCs†|js dS|jjƒtkr&dS|jdkrC|jƒdS|jƒ}||jtkrfdS|jƒr‚|j    |ƒndS(Ni(
RRt GetIsLoginOKRRtMoveToTargetPostGetTicktBeginToAttackTimet SetAttackIdt    AttackNpc(Rttick((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyt_Process°s    
  cCs¯d\}}}|jjƒjƒ}|jjƒjƒ\}}|||fdkrg|jƒ|_dS|||f|||fkr˜|jƒ|_dS|j|||ƒdS(Ni(iii(iii(RR&tGetMapIDtGetPosR+RtSendPackSetMapPos(Rt targetMapIdt
targetPosXt
targetPosYt playerMapIdt curPlayerPosXt curPlayerPosY((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyR*ÍscCsŠ|jdkr,|jƒ|jtkr,dStƒ}|jƒd|||f|_t|jƒ|_|jj    |ƒ|jƒ|_dS(NisSetWorldPos %s %s %s(
RR+tSendPackToSetMapTickRtCleartCmdtlentCmdLenRtSend(RtmapIDtposXtposYttagGMSetMapPos((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyR3äs    
cCs–|j}|j}|j}|jjƒjƒ}||kr@dS|jƒ|_|tkr_dS|jƒ|_    ||j
kr‰t |_ n    t |_ dS(N(t
AttackerIDtObjIDtObjTypeRR&R'R+RtNpcTypeRR RRR    (RR$tattackIdR tobjTypetplayerId((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyRøs               cCs=|dkrtS|jƒ}|s&tS|j|ƒs9tStS(Ni(RtGetRoundNpcDictthas_keyR    (RR tnpcDict((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyt    IsHaveNpcs  cCs§|jƒ}|stS|j|jƒr,tS|jƒ}|sBtS||_y|j|jƒ\}}WntSX||f|_|jƒt|_    |j
ƒ|_ tS(N( RKRRNR R    tGetNearestNpcIdtgetRtSetwillMovePosRR+R(RRMt selectObjIdtmovePosXtmovePosY((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyR-+s$      
    cCs+|jjƒjƒ}|s'd|_n|S(Ni(RR&RKR (Rt roundNpcDict((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyRKRs c CsØg}|jƒ}|sdS|jjƒjƒ\}}x~|jƒD]p\}}||jkreqDn|dkrwqDn|\}}|j||||ƒ}    |    |g}
|j|
ƒqDW|j    ƒ|sÌdS|ddS(Nii(
RKtNoneRR&R2titemsRt GetDistancetappendtsort( RtnpcListRUtcurPosXtcurPosYtnpcIdtnpcPostnpcPosXtnpcPosYtdistancetnpcInfo((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyRO^s$    
cCs+tjt||dƒt||dƒƒS(Ni(tmathtsqrttpow(RtsrcXtsrcYtdestXtdestY((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyRX‚scCsr|j}||jkrdS|j|jƒr2dSy"|jƒj|jƒ\}}WndSX||f|_dS(N(RER RNRKRPR(RR$R RSRT((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyRŠs    "cCs‹|j|jƒsdS|jƒ}||jtkr9dS|j|jkr{|jƒj|jƒ\}}||f|_n |j|_dS(N(    RNR R+RtChangeTagetPosTimeRRRKRP(RtcurtimeRSRT((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyRQ¢s cCsw|j|jƒstS|jdkr)tS|jjƒjƒ}|j\}}|jj|||ƒsitS|j    ƒt
S(Ni(ii( RNR RRRR&R1R
t    MoveToPosRQR    (RR7RSRT((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyt    MoveToNpc¼s
cCsË|jdkrdS|jƒs#dS|jr0dS||jtkrGdS|j|jƒ|jrl||_nt|j|jƒt    krÇ|j|j
kr°|j
j |jƒnd|_|j ƒdSdS(Ni( R RnRRt AttackDisTimetSendPackAttackNpcRRtabstRecevidAttackPackMaxTimeRRYR-(RR/((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyR.×s"              
cCs„|jjƒjƒ\}}tƒ}|jƒt|_||_||_||_    |jj
|ƒ|j ƒ}||_ t |_dS(N(RR&R2RR;RGRFREtPosXtPosYR?R+RRR(RR R8R9R.R/((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyRpÿs    
                     cCs,tjjƒjƒ}tj|ƒd}|S(Niè(tdatetimettodayt    timetuplettimetmktime(Rt    timeTupleR/((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyR+s(t__name__t
__module__RR#RRRRR R!R(R0R*R3RRNR-RKRORXRRQRnR.RpR+(((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyR+s0                                                                  '         $                    (    i Ni N(t    AI.AIBasetProtocol.PacketsSendRRtloggingtrandomRxRdRutVERRGRoRkR,RrR:RR(((s).\\Robot\AI\AIFile\AISetMapToAutoFight.pyt<module>s