cehua_lyf
2019-03-06 3c8ee0a8a524a6251d7d5aae2372e76fd8a99b9c
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
=3Ü[c@shddlZddlTddlZddlZddlmZddlmZmZddl    m
Z
ddl    m Z ddl    m Z ddl    m Z dd    l    mZdd
l    mZmZmZmZmZdd lmZdd lmZmZmZmZmZmZdd lmZddlmZddl Z ddl!Z!dZ"dZ#de$fd„ƒYZ%dS(iÿÿÿÿN(t*(tConfigIniReader(tMapEventPointReadert ChinMapReader(ttagCClientVersion(ttagCRoleLoginAsk(t tagCInitMapOK(t tagCNPCAnswer(ttagCCancelEvent(ttagCPlayerLoginttagCWorldTransfert tagCLeaveTeamttagCPlayerLogOutt
tagCExitFB(t
PlayerData(ttagCMLoginStatettagCMSightZoomt tagCMTJGnpcttagCGAutoMatchTeamttagCGCreateTeamttagCMWorldTick(t tagCMTJGDead(t
DataDefines2012-08-30 16:30i't
AILoginoutcBsà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<tj||dttƒ|jtƒd|_t|_dS(Ni(tAIBaset__init__tFalset    SetActivetTruetMapIDt
RandMapYet(tselftrobot((s.\\AILoginout.pyR3s     cCsN|jd|jtƒ|jd|jtƒ|jd|jtƒ|jd|jtƒ|jd|jtƒ|jd|jtƒ|jd|j    tƒ|jd|j
tƒ|jd    |j tƒ|jd
|j tƒ|jd |j tƒ|jd |jtƒ|jd |jtƒ|jd|jtƒ|jd|jtƒdS(Niiii    iiiiiii    §i    i    i¹i (t    RegNetMsgtOnServerPreparedRtOnAskClientVersiontOnShowLoginFrmRtOnServerPrepareOKtOnNeedCreateRolet OnCDBPlayertOnPlayerMapInittOnPlayerLoginLoadOKtOnServerDisconnecttOnAttrt
OnAttrListt    LeaveTeamt    PlayerDiet TeamRefresht MissionDict(RtaiMgr((s.\\AILoginout.pyt_RegisterPacket@scCstƒ}|jj|ƒdS(N(RR tSendMapServerPYPack(RtpacktsendPack((s.\\AILoginout.pyR.Ss    cCs„|j|jjƒjƒkrJ|jjƒjƒdkrF|jƒndS|jjƒjdƒ|jjƒjdƒ|jƒdS(Nii(tPlayerIDR t GetPlayerInfot GetPlayerIDtGetTeamMemberLVtJoinTeamt    SetTeamIDtSetTeamMemberLV(RR4((s.\\AILoginout.pyR-\s 
cCsŒtjd|jjƒjƒƒ|jjƒj|jƒxL|jD]A}|j|jjƒjƒkrC|jjƒj    |j
ƒPqCqCWdS(NsTeamRefresh----%s( tloggingtdebugR R7R8R;tTeamIDt
MemberListR6R<tMemberLV(RR4tmember((s.\\AILoginout.pyR/hs cCsm|j|jjƒjƒkr"dS|jdkr5dSx1t|jƒD] }|j|}|j|ƒqEWdS(Ni(    tObjIDR R7R8tObjTypetxrangetCountt RefreshTypetCalcAttr(RR4titlpack((s.\\AILoginout.pyR,rs cCsF|j|jjƒjƒkr"dS|jdkr5dS|j|ƒdS(Ni(RCR R7R8RDRH(RR4((s.\\AILoginout.pyR+€s  cCs¬|jtjkrJ|jjƒj|jƒ|jjƒr¨|jƒq¨n^|jtj    krx|jjƒj
|jƒn0|jtj kr¦|jjƒj |jƒn|jtj krü|jjƒj|jƒ|jdkr¨|jjƒjdƒq¨n¬|jtjkrL|jjƒj|jƒ|jjƒr¨|j|jƒq¨n\|jtjkrz|jjƒj|jƒn.|jtjkr¨|jjƒj|jƒndS(Ni(RGRtCDBPlayerRefresh_LVR R7t SetPlayerLVtValuet GetIsLoginOKt RefreshPointtCDBPlayerRefresh_DEFt
SetDefensetCDBPlayerRefresh_GoldtSetGoldtCDBPlayerRefresh_TeamIDR;R<tCDBPlayerRefresh_HappyPointt
SetTJGTimetTJGLeavetCDBPlayerRefresh_Tickt SetWorldTicktCDBPlayerRefresh_FBIDtSetFBID(RR4((s.\\AILoginout.pyRHŠs(cCsV|dkrdStƒ}|jj|ƒtƒ}|jj|ƒ|jjtƒdS(Ni(R R tSendR t SetIsLoginOKR(RttjgTimeR5((s.\\AILoginout.pyRW£s         cCs|jjƒjƒdkrdS|jdkr2dS|jdkrEdS|j}tjƒj|jjƒj    ƒ|ƒ}|jjƒj
|ƒdS(NiitOpenMap( R R7t GetMaxMapIDt    MissionIDtDictKeyt    DictValueRtGetChinMapDatat FindMaxMapIDt GetPlayerLVt SetMaxMapID(RR4tmaxfbIDtmaxMapID((s.\\AILoginout.pyR0±s    'cCsvtjd|jjƒjƒ|jfƒ|jjtƒ|jj|jƒddl    m
}|j ƒj |jƒdS(Ns.RobotCheckTT   serverdisconnect, %s reason:%s iÿÿÿÿ(tRobotMgr( R=tinfoR R7tGetAccIDtReasonR]RtSetLastDisconnectReasontRobotRjt GetRobotMgrtDisconnectServer(RtpackOnServerDisconnectRj((s.\\AILoginout.pyR*Çs )cCs|jƒrdSdS(N(t IsTokenLogOn(RtpackOnServerPrepared((s.\\AILoginout.pyR"Ôs cCsõ|jjƒdjdƒ\}}}tƒ}d|_||_|jjƒd|_tjƒj    ƒ|_
d|_ |jjƒd|_ |jjƒd|_ t|dƒ|_|jjƒd|_t|ƒ|_||_|jj|ƒtS(Nis@iiÿiii(R tGetRobotConfigtsplitR    tIDTypetAccIDtPasswordRt    GetConfigt GetVersionNotVersiontLineNOtMACtAppIDtinttServerIDtAdulttlentExtraLentExtraR\R(RtaccIDtspIDtsidt cAccessLogin((s.\\AILoginout.pyRsês%                    cCsmtƒ}tjƒjƒ|_t|jƒ|_tjd|j    j
ƒ|j|jfƒ|j    j |ƒdS(Ns2RobotCheckTT  peer:0x%08X OnAskClientVersion %s,%d( RRRztGetClientVersionR|Rƒt
VersionLenR=R>R t GetPeerValueR\(RtpackOnAskClientVersiontClientVersionPack((s.\\AILoginout.pyR#s         cCs¢|jdkrOtƒ}d|_tjd|jjƒƒ|jj|ƒdS|jdkržtƒ}d|_tjd|jjƒƒ|jj|ƒdSdS(Nis*RobotCheckTT  peer:0x%08X OnShowLoginFrm 1is*RobotCheckTT  peer:0x%08X OnShowLoginFrm 2(tTypeRR=R>R RŒR\(RtpackOnShowLoginFrmR4((s.\\AILoginout.pyR$,s                cCs{tƒ}|j|_|jj|ƒtƒ}d|_|jj|ƒ|jjƒjiƒt    j
d|jj ƒƒdS(Nis+RobotCheckTT  peer:0x%08X OnServerPrepareOK( RRR R\RtStateR3R7tSetRoundNpcDictR=R>RŒ(RtpackOnServerPrepareOKR4t
loginState((s.\\AILoginout.pyR%Bs             cCstjd|jjƒƒdS(Ns*RobotCheckTT  peer:0x%08X OnNeedCreateRole(R=R>R RŒ(RtpackOnNeedCreateRole((s.\\AILoginout.pyR&Wsc
Csÿ|j|_|jjt|j|j|j|j|j|ji|j    ƒƒ|jj
ƒj |j ƒ|jj
ƒj |jƒ|jj
ƒj|jƒ|jj
ƒj|jƒ|jj
ƒj|jƒ|jj
ƒj|j    ƒ|jj
ƒj|jƒdS(N(RR t SetPlayerInfoRRxR6t
PlayerNametPosXtPosYtJobR7RLtLVRStGoldt    SetLineIDtLineIDRVt
HappyPointR[tFBIDtSetJobt SetPlayerID(RtpackOnCDBPlayer((s.\\AILoginout.pyR'as      "cCsutjd|jjƒƒ|j|_|jjƒj|jƒ|jjƒj|jƒ|jjƒj    |j
ƒdS(Ns.RobotCheckTT  peer:0x%08X ÈËÎïËùÔڵij¡¾°³õʼ»¯( R=R>R RŒRR7tSetMapIDtSetPosXR˜tSetPosYR™(RtpackOnPlayerMapInit((s.\\AILoginout.pyR(|s  cCstjd|jjƒƒ|jjtƒ|jjƒtƒ}|jj|ƒt    ƒ}d|_
|jj|ƒt j ƒj |jjƒjƒƒ}|jjƒjƒdkrÂ|jdƒdS|rô|jdkrôtƒ}|jj|ƒdS|jƒdS(Ns.RobotCheckTT  peer:0x%08X tagPlayerLoginLoadOKi(R=R>R RŒR]RtClearDisconnectReasonRR3RtSightRRdt FindMapByIDR7tGetMapIDt
GetTJGTimeRWt    MapFBTypeR R\RO(RtpackOnPlayerLoginLoadOKR5t    sightPacktmapData((s.\\AILoginout.pyR)‰s"             $     cCstjƒj|jƒ|jjƒjƒ}|s5dS|\}\}}}|dkrw|dkrwtjd|ƒdS|jjƒjƒ|krÑt    j
|||jjƒj ƒ|jjƒj ƒƒdkrÑnÔ|j rò|jjƒjƒ}ntjddƒ}t|_ tƒ}d|_||_|tjddƒ|_|tjddƒ|_||_|jj|ƒ|jjƒj|jƒ|jjƒj|jƒtƒ}||_|jj|ƒ||jjƒjƒkr tjd||jjƒjƒfƒdS|jƒdS(Nis¹Ò»úµã±í´íÎ󣡣¡£¡ npcID = %si
i    iisµØÍ¼Çл»¹Ò»ú----%s-%s( RtGetMapEventPointtFindNPCR R7t GetTJGPointR=RkR«tCommFunctGetDisttGetPosXtGetPosYRtGetFBIDtrandomtrandintRR
RRR˜R™t    ExtField1R\R¥R¦RtNPCIDR3R>R:(RtpointtmapIDtposXtposYtnpcIDtlineNOR5((s.\\AILoginout.pyROªs@<                                &
cCs¬|jjƒjƒdkrdS|jjƒs2dStjd|jjƒjƒƒtƒ}|jj|ƒt    ƒ}d|_
d|_ d|_ d|_ |jj|ƒdS(Nis×é¶ÓÉêÇë----%si(R R7t    GetTeamIDRNR=R>R8RtSendGameServerPYPackRtTagMapIDtTagMapExtReqMinLVtReqMaxLV(RR5((s.\\AILoginout.pyR:Þs                         cCs9tƒ}|jƒd|_d|_|jj|ƒdS(NitOK(RtCleart    AnswerLentAnswerR R\(Rt    NPCAnswer((s.\\AILoginout.pytSendEventAnswerós
    
        cCs0tƒ}|jƒd|_|jj|ƒdS(Ni(RRÊRR R\(Rt    ExitEvent((s.\\AILoginout.pytSendExitEventAnswers    
    (t__name__t
__module__RR2R.R-R/R,R+RHRWR0R*R"RsR#R$R%R&R'R(R)ROR:RÎRÐ(((s.\\AILoginout.pyR-s2                          
        
                         4                
             !    4            (&tbase64t    AI.AIBaseR=tostConfigurationReaderRt
DataReaderRRtProtocol.PacketsSendRRRRRR    R
R R R tRobot.PlayerDataRtProtocol.PacketsSendPYRRRRRRRRoRR¹R´tVERtDef_First_MapIDRR(((s.\\AILoginout.pyt<module>s( 
  (.