Exemplo n.º 1
0
 def run(self):
     global FirstTime, Times
     logger.info('zengzanThread start')
     if Delay_Time > 0:
         logger.info('I will start zengzan at ' + util.next_time(Delay_Time))
         time.sleep(Delay_Time)
     while True:
         ni = self.getNpcInfo()
         remain_times = ni.getNumber()
         if remain_times > 0:
             time.sleep(2)
             res = self.zengzan(Npc_String, remain_times + 100)
             if res.has_key('exception'):
                 msg = res['exception']['message']
                 logger.info('zengzan exception: %s'%(msg))
                 if msg == 'waittingOrder':
                     gi = GeneralInfo()
                     sp = util.get_sleep_time(gi.get_mobility_CDTime(), gi.get_localTime()-gi.get_serverTime())
                     logger.info('I will sleep for mobility CD to %s'%(util.next_time(sp)))
                     time.sleep(sp)
                     FirstTime = True
                     continue
                 elif msg == 'lessMobility':
                     return
                 else:
                     time.sleep(2)
                     FirstTime = True
                     continue
         nrt = util.get_next_refresh_time(ni.getServerTime())
         sp = util.get_sleep_time(nrt, ni.getLocalTime()-ni.getServerTime()) + 1
         logger.info('I will sleep till time %s'%(util.next_time(sp)))
         time.sleep(sp)
Exemplo n.º 2
0
 def run(self):
     global g_previous_armyid
     logger.info('pozen Thread start, will pozen campaign %s'%(str(Campaign)))
     if Delay_Time > 0:
         logger.info('I will start pozen at ' + util.next_time(Delay_Time))
         time.sleep(Delay_Time)
     #self.bianzhen('yanxing')
     time.sleep(2)
     for campaignid in Campaign:
         while True:
             try:
                 #res = self.get_pozen_info(2)
                 #print json.dumps(res, sort_keys = False, indent = 4)
                 #return
                 armyid = self.get_next_id(campaignid)
                 if armyid is None:
                     logger.info('pozen network error')
                     time.sleep(2)
                     continue
                 elif armyid == -1:
                     logger.info('pozen %d finished'%(campaignid))
                     break
                 elif armyid == g_previous_armyid:
                     logger.info('pozen %d falied, %d lose'%(campaignid,  armyid))
                     return
                 g_previous_armyid = armyid
                 time.sleep(2)
                 logger.info('pozen army %d'%(armyid))
                 res = self.do_pozen(armyid)
                 if res.has_key('exception'):
                     logger.error('Got Exception "%s"'%(res['exception']['message']))
                     if 'waittingOrder' == res['exception']['message']:
                         gi = GeneralInfo()
                         sp = util.get_sleep_time(gi.get_mobility_CDTime(), gi.get_localTime()-gi.get_serverTime())
                         logger.info('I will sleep for mobility CD to %s'%(util.next_time(sp)))
                         time.sleep(sp)
                         g_previous_armyid = 0
                         continue
                     return
                 time.sleep(2)
             except:
                 logger.info(traceback.format_exc())
                 time.sleep(10)