示例#1
0
    def checkOpt(self,ckey,optId,optKey,para):

        if optId == 888888:
            result = Gcore.reload()
            print 'Gcore.reload()'
            msg = '<font color=green>Reload Success!</font>' if result is True else "<font color=red>"+str(result)+"</font>"
            response = Gcore.out(optId,{'Result':msg})
            self.Send(ckey,response)
        elif 10001<=optId<=10005: #帐户相关: 10001登录,10002创建帐号,10003随机姓名,10004推荐阵营,10005检查帐户名是否合法
            self.checkLogin(ckey,optId,optKey,para)
        else:
            if optId == 8888: #测试
                #print 'Gcore.getDB(uid)>',Gcore.getDB(uid)
                self.mqPush(ckey,optId,optKey,para)
            else:
                uid = self.Clients[ckey]['uid']
                if uid==0:
                    response = Gcore.error(optId,-88888888) 
                    self.Send(ckey,response) 
                    print 'Please login first'
                    return
                response = proManager.checkOpt(uid, optId, para)
                if type(response) is not dict:
                    #print 'type(response)',type(response),response
                    response = Gcore.error(optId,-33333333) #协议号未定义 或返回出错
                    
                response['opt_key'] = optKey
                self.Send(ckey,response)
示例#2
0
    def checkOpt(self, ckey, optId, optKey, para):

        if optId == 888888:
            result = Gcore.reload()
            print 'Gcore.reload()'
            msg = '<font color=green>Reload Success!</font>' if result is True else "<font color=red>" + str(
                result) + "</font>"
            response = Gcore.out(optId, {'Result': msg})
            self.Send(ckey, response)
        elif 10001 <= optId <= 10005:  #帐户相关: 10001登录,10002创建帐号,10003随机姓名,10004推荐阵营,10005检查帐户名是否合法
            self.checkLogin(ckey, optId, optKey, para)
        else:
            if optId == 8888:  #测试
                #print 'Gcore.getDB(uid)>',Gcore.getDB(uid)
                self.mqPush(ckey, optId, optKey, para)
            else:
                uid = self.Clients[ckey]['uid']
                if uid == 0:
                    response = Gcore.error(optId, -88888888)
                    self.Send(ckey, response)
                    print 'Please login first'
                    return
                response = proManager.checkOpt(uid, optId, para)
                if type(response) is not dict:
                    #print 'type(response)',type(response),response
                    response = Gcore.error(optId, -33333333)  #协议号未定义 或返回出错

                response['opt_key'] = optKey
                self.Send(ckey, response)
示例#3
0
 def checkOpt(self,ckey,optId,optKey,para):
     #print 'checkOpt',ckey,optId,optKey,para
     response = False
     strExcept = ''
     if optId == 888888:
         Gcore.reload()
         response = Gcore.out(optId,{'Result':'Reload Success!'})
         self.Send(ckey,response) 
         print 'Gcore.reload()'
     elif optId == 10001: #登录
         self.checkLogin(ckey,optId,optKey,para)
     else:
         startTime = time.time()
         
         try:
             uid = self.Clients[ckey]['uid']
             if uid==0:
                 #self.Clients[ckey]['Channel'].close() #关闭socket连接
                 response = Gcore.error(optId,-88888888) #未登录
                 
             elif optId>90000 and optId<=90999: #开始战役
                 if optId == 90001: #开启战斗
                     response = self.BM.createWar(uid,para) 
                 else:
                     response = self.BM.doBattle(uid, optId, para) #暂未使用
                     
             elif optId>91000 and optId<=91999: #战役信息(开始战役战斗前)
                 response = proManager.checkOpt(uid, optId, para)
                 
             elif optId>93000 and optId<=93999: #攻城
                 if optId == 93001: #攻城入口
                     response = self.BM.findSiege(uid,para) #para: {storyBattleId:1} 任务战斗id
                 elif optId == 93002: #开始攻城
                     response = self.BM.startSiege(uid,para) 
                 elif optId == 93003: #离开攻城
                     response = self.BM.leftSiege(uid,para) 
                 elif optId == 93004: #同步  PVE PVC PVG
                     response = self.BM.synBattle(uid,para) 
                 elif optId == 93009: #结束战斗
                     response = self.BM.endBattle(uid,para) 
                 else:
                     response = self.BM.doWBattle(uid, optId, para)
             elif optId>94000 and optId<=94999: #比武
                 if optId == 94001: #开启比武
                     response = self.BM.createRankFight(uid,para) 
             else:
                 response = Gcore.error(optId,-33333333) #协议号未定义 
         except Exception,e: #错误日志
             try:
                 import traceback
                 strExcept = traceback.format_exc()
                 print >>sys.stderr, 'Time:' + time.strftime('%Y-%m-%d %H:%M:%S') + '\n' \
                         + 'UserId:' + str(uid) + '\n' \
                         + 'OptId:' + str(optId) + '\n' \
                         + 'Para:' + str(para) + '\n' \
                         + strExcept
                 sys.stderr.flush()
             except:
                 pass
             
             strExcept = ' >> '+str(e)
             response = False
         finally: