hwj35
2 天以前 8326668cd16a084cd30d82e844284d1beb6cbe0f
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
;ƒ¹\c@s¡ddlZddlmZddlZddlZddlmZddlZddl    Z    defd„ƒYZ
dd
d„ƒYZ da d„Zd    „ZdS( iÿÿÿÿN(t ProjectRobot(tThreadtAIThreadcBs#eZd„Zd„Zd„ZRS(cCstj|ddd|ƒ||_g|_tjjƒ}|jƒ|_    |j
ƒ|_ d|_ d|_ d|_d|_dS(Ns AIThreadPy_%sii(Rt__init__tNonetrobotMgrtAIListtConfigurationReadertConfigIniReadert    GetConfigtGetTJGLimitCntt tjgLimitCnttGetPlayerOffTimetoffTimetlastTimet badRobotCnttProcessFindTJGTimet lastLoginTime(tselfRtindextconfig((s.\\Tool\Robot\Robot\RobotMgr.pyRs                    c CsÀtjd|jƒƒx¢tr»yTtjƒ}|jr½||j|jkr½tjd|jƒ|j    j
ƒ|jkr|j    j j ƒn||_|j    j ƒ}|j    j jƒ}g}x±tt|ƒƒD]}|jƒ}|d}||krdG|GHqÐn|j    j|ƒ}|dkr>|||jkr>qÐn|j    j|ƒ}    |j|    ƒ|dkrÐPqÐqÐWxI|D]>}    |    sŠqxn|    jƒ rx|    jƒdkrx|    jƒqxqxWnxst|j    j
ƒƒD]\}
|
|j    j
ƒkròPny|j    j|
ƒ}    WnPnX|    sqÓn|    jƒjƒqÓW|jsH||_ntjdƒx·t|j    j
ƒƒD] }
y|j    j|
ƒ}    WnPnX|    sÀd    GH|j    j|    ƒ|jd7_Pn|    jƒrkd
GHtjd |    j ƒƒ|j    j|    ƒ|jd7_PqkqkWtjƒ}||j!d krsd |j    j
ƒ|j    j"ƒfGH||_!|jrsd|jGHqsnWqt#k
r·} tj$dt%| ƒƒtj$dt&j'ƒƒqXqWdS(Nsthread %s startsself.tjgLimitCnt %s isÕýÔڵǼÖÐ------ii
ig{®Gáz”?s====ûÓлúÆ÷ÈËs ++++++±»´Ý»ÙsGetNeedDestroy __peer:0x%08X i sÍÑ»ú¹ÒÍæ¼ÒÊýÁ¿: %s - %ss²Î¿¼-ÀúÊ·Òì³£ÍÑ»ú¹Ò´ÎÊý£º%ss AIThread: %s((tloggingtinfotgetNametTruettimeRRtdebugR Rt GetRobotCounttdbRobott
ClearTokentGetRobotAccIDListt GetTokenListtxrangetlentpoptGetNoteLastTimeByAccIDR tAddRobottappendt IsConnectedtGetReconnectCountt ReCreateRobottGetRobottGetAIMgrt    ProcessAItsleeptRemoveRtGetNeedDestroyt GetPeerValueRtGetLoginOKRobotCountt    Exceptionterrortstrt    tracebackt    print_exc( RtnowTimet logoningListt    tokenListt    robotListtit    tokenInfotaccIDRtrobotRte((s.\\Tool\Robot\Robot\RobotMgr.pyt    runThreadsˆ          
                !        cCs|j}|ƒdS(N(R?(RtrunM((s.\\Tool\Robot\Robot\RobotMgr.pytruns    (t__name__t
__module__RR?RA(((s.\\Tool\Robot\Robot\RobotMgr.pyRs         atRobotMgrcBs}eZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z    d„Z
d    „Z d
„Z d „Z d „ZRS( cCs\||_d|_g|_g|_||_i|_i|_t|dƒ}|jƒdS(Ni(    t_RobotMgr__asioMgrt_RobotMgr__robotNumt_RobotMgr__robotst_RobotMgr__robotAccIDsRtTeamMgrt LoginHistoryRtstart(RtasioMgrRtth((s.\\Tool\Robot\Robot\RobotMgr.pyRˆs                            cCstjƒ|j|<dS(N(RRJ(RR<((s.\\Tool\Robot\Robot\RobotMgr.pyt NoteHistoryšscCs|jj|dƒS(Ni(RJtget(RR<((s.\\Tool\Robot\Robot\RobotMgr.pyR#scCs>g|_x+|jD] }|jj|jƒdƒqW|jS(Ni(RHRGR%tGetRobotConfig(RR=((s.\\Tool\Robot\Robot\RobotMgr.pyR¡s    cCsQtjƒ|j|d<tjd|fƒt|j|ƒ}|jj|ƒ|S(NisCreate Robot index:%s.....(RRJRRRRERGR%(RR;R=((s.\\Tool\Robot\Robot\RobotMgr.pyR$§s
cCs t|jƒS(N(R!RG(R((s.\\Tool\Robot\Robot\RobotMgr.pyR³scCs7d}x*|jD]}|jƒr|d7}qqW|S(Nii(RGR&(RtnR=((s.\\Tool\Robot\Robot\RobotMgr.pytGetConnectedRobotCount·s
 cCsMd}x@|jD]5}|jƒr/|d7}qtjd|jƒƒqW|S(Niis!!!not login :0x%08X(RGt GetIsLoginOKRRR/(RRQR=((s.\\Tool\Robot\Robot\RobotMgr.pyR0¿s   cCs |j|S(N(RG(RR((s.\\Tool\Robot\Robot\RobotMgr.pyR)ÉscCs.|jj|ƒtjdt|jƒƒdS(NsRemove robot Ê£Óà: %s(RGtremoveRRR!(RR=((s.\\Tool\Robot\Robot\RobotMgr.pyR-ÎscCsP|jƒjƒ}tjd|ƒ|jƒ||jkrL|j|ƒndS(NsDisconnectServer for %s(t GetPlayerInfotGetAccIDRRt DestroyRobotRGR-(RR=R<((s.\\Tool\Robot\Robot\RobotMgr.pytDisconnectServerÓs
 
cCs.tjd|ƒ|j|ƒ}|s*tSdS(NsStartAI for %d(RRR)tFalse(RRR=((s.\\Tool\Robot\Robot\RobotMgr.pytStartAIÝscCs.tjd|ƒ|j|ƒ}|s*tSdS(Ns StopAI for %d(RRR)RY(RRR=((s.\\Tool\Robot\Robot\RobotMgr.pytStopAIés(RBRCRRNR#RR$RRRR0R)R-RXRZR[(((s.\\Tool\Robot\Robot\RobotMgr.pyRD†s                                 
            
     cCstst||ƒandS(N(t __gRobotMgrRD(RLR((s.\\Tool\Robot\Robot\RobotMgr.pytCreateRobotMgrscCstS(N(R\(((s.\\Tool\Robot\Robot\RobotMgr.pyt GetRobotMgrs((RtProjectBinding.ProjectRobotRt&ConfigurationReader.RobotsConfigReaderRt#ConfigurationReader.ConfigIniReadert    threadingRR4RRRDRR\R]R^(((s.\\Tool\Robot\Robot\RobotMgr.pyt<module>s     vŒ