# -*- coding: GBK -*-
|
# ÔÚÏ߻ظ´AI
|
# author: Alee
|
# Date: 2011.9.1
|
# history: 2011.9.1 Created
|
|
from AI.AIBase import *
|
from Protocol.PacketsSend import tagCOnlineReturn
|
import logging
|
|
import time
|
|
#ÔÚÏ߻ظ´¼ä¸ô(Second)
|
OnlineReplyPeriod = 30
|
|
class AIOnlineReply(AIBase):
|
#ËùÓÐAI±ØÐë²ÉÓÃÕâÖй̶¨µÄ³õʼ»¯ÔÐÍ£¬ÒÔ±ãAIMgr×Ô¶¯¼ÓÔØ
|
def __init__(self, robot ):
|
AIBase.__init__(self, robot, OnlineReplyPeriod, True, True )
|
self.lastTime = 0
|
def _Process( self ):
|
return
|
#=======================================================================
|
# if time.time() - self.lastTime < OnlineReplyPeriod:
|
# return
|
#
|
# # Çå³ýûÓÐÐÄÌø°üµÄ»úÆ÷ÈË
|
# logging.info("clear no heart robot")
|
# self.robot.SetIsLoginOK(False)
|
# from Robot import RobotMgr
|
# RobotMgr.GetRobotMgr().DisconnectServer(self.robot)
|
# pass
|
#=======================================================================
|
|
def _RegisterPacket(self, aiMgr):
|
#//01 13 ·þÎñÆ÷ÐÄÌø°ü#tagServerHeart
|
aiMgr.RegNetMsg(0x0113, self.OnHeart, False)
|
#//01 11 ÔÚÏß»ØÓ¦»Ø±¨#tagOnlineReply
|
#aiMgr.RegNetMsg(0x0111, self.OnHeartReply, False)
|
|
|
def OnHeart(self, pack):
|
onlineR = tagCOnlineReturn()
|
self.robot.Send( onlineR )
|
self.lastTime = time.time()
|
#print "------»Ø¸´0113ÐÄÌø°ü"
|
|
|
def OnHeartReply(self, pack):
|
print "--------------------------ÏìÓ¦ÐÄÌø"
|