Example #1
0
    def doZhangJie(self,zhangjieid):
        '''章节战斗
        @param zhangjieid: int 章节的
        '''
        if zhangjieid>self.currentZJ:
            return {'result':False,'message':u'当前章节未被激活'}
        from app.scense.core.fight.fight_new import Fight
        zhanjieInfo = db_zhanyi.ALL_ZHANGJIE_INFO.get(self.currentZJ)
        levelrequired = zhanjieInfo.get('levelrequired')
        if self._owner.level.getLevel()<levelrequired:
            return {'result':False,'message':u'当前等级不足'}
        ruleInfo = eval(zhanjieInfo.get('mconfig'))
        temlist,rule = ruleInfo[0],ruleInfo[1]
        i = 100
        challengers = BattleSide([self._owner])
        deffen = []
        for tem in temlist:
            i+=1 
            monser = Monster(id = i,templateId = tem)
            deffen.append(monser)
        defenders = BattleSide(deffen,state = 0)
        defenders.setMatrixPositionBatch(rule)
        data = Fight( challengers, defenders, 600)
        data.DoFight()
        if data.battleResult == 1 and zhangjieid==self.currentZJ:#如果战斗胜利
#            self._owner.quest.cleanZhanYi(zhangjieid)#通知战役通关任务
            zhanyilist = ZYManage().zhanyiSet.keys()
            zhanyilist.sort()
            zy = ZYManage().getZhanYiInfoById(self.currentZY)
            zhangjielist = zy.zhangjieSet.keys()
            zhangjielist.sort()
            index = zhangjielist.index(self.currentZJ)
            if index>=len(zhangjielist)-1:
                zhanyiindex = zhanyilist.index(self.currentZY)
                if zhanyiindex<len(zhanyilist)-1:
                    zhanyiindex = zhanyilist.index(self.currentZY)
                    self.currentZY = zhanyilist[zhanyiindex+1]
                    zy = ZYManage().getZhanYiInfoById(self.currentZY)
                    zhangjielist = zy.zhangjieSet.keys()
                    zhangjielist.sort()
                    self.currentZJ = zhangjielist[0]
            else:
                self.currentZJ = zhangjielist[index+1]
        if data.battleResult == 1:
            self._owner.quest.cleanZhanYi(zhangjieid)#通知战役通关任务
        return {'result':True,'data':{'fight':data}}
Example #2
0
 def getZhanYiInfo(self,index):
     '''获取角色的当前战役信息
     '''
     zhanyilist = ZYManage().zhanyiSet.keys()
     zhanyilist.sort()
     if index ==-1:
         zid = self.currentZY
     else:
         zid = zhanyilist[index]
     
     nowindex = zhanyilist.index(zid)
     maxpage = len(zhanyilist)
     zy = ZYManage().getZhanYiInfoById(zid)
     zyinfo = zy.formatInfo(self.currentZY,self.currentZJ)
     info = {'index':nowindex,
             'maxpage':maxpage,
             'zyinfo':zyinfo}
     return info
def initAlldata():
    '''初始化常用数据,从数据库读入到内存中
    '''
    dbaccess.All_ShieldWord = dbaccess.getAll_ShieldWord()
    dbaccess.tb_mallitem_Column_name = dbaccess.getTablecolumnName(
        'tb_item_template') + [
            'item_templateid', 'tag', 'promotion', 'gold', 'coupon',
            'restrict', 'cheapstart', 'cheapend', 'discount', 'up', 'down',
            'onoff'
        ]
    dbaccess.tb_mallitem_Column_name1 = dbaccess.getTablecolumnName(
        'tb_mall_item')
    dbaccess.tb_mall_restrict_Column_name = dbaccess.getTablecolumnName(
        'tb_mall_restrict')
    dbaccess.tb_mall_log_Column_name = dbaccess.getTablecolumnName(
        'tb_mall_log')
    dbaccess.tb_instanceinfo_Columen_name = dbaccess.getTablecolumnName(
        'tb_instanceinfo')
    dbaccess.tb_instance_activation_Columen_name = dbaccess.getTablecolumnName(
        'tb_instance_activation')
    dbaccess.tb_instance_close_Columen_name = dbaccess.getTablecolumnName(
        'tb_instance_close')
    dbaccess.tb_instance_record_Columen_name = dbaccess.getTablecolumnName(
        'tb_instance_record')
    dbaccess.tb_profession_Columen_name = dbaccess.getTablecolumnName(
        "tb_profession")
    dbDropOut.tb_dropout_Column_name = dbaccess.getTablecolumnName(
        'tb_dropout')
    dbaccess.tb_marix_Columen_name = dbaccess.getTablecolumnName(
        "tb_matrix")  #获取阵法表中所有的阵法数据
    dbDrinkery.tb_drinkery_Column_name = dbaccess.getTablecolumnName(
        'tb_drinkery')  #存储数据库中酒店表中的所有字段
    dbChat.tb_chat_astrict_name = dbaccess.getTablecolumnName(
        'tb_chat_astrict')

    dbaccess.tb_Profession_Config = dbaccess.getProfession_Config(
    )  #初始化职业成长配置表
    dbaccess.tb_Experience_config = dbaccess.getExperience_Config(
    )  #初始化经验成长配置表
    dbaccess.all_ItemTemplate = dbaccess.getAll_ItemTemplate()  #获取所有的物品模板信息
    dbaccess.all_marix_info = dbaccess.getAllMarix_Info()  #获取所有的阵法信息

    dbEffect.ALL_EFFECT_INFO = dbEffect.getAllEffectInfo()  #获取所有的效果信息
    dbBuff.ALL_BUFF_INFO = dbBuff.getAllBuffInfo()  #获取所有的buff信息
    instance_app.allInfo = dbInstanceInfo.getAllInfo()  #获取所有副本信息
    guild.AllCharacterGuildInfo = dbGuild.getAllCharacterGuildInfo(
    )  #获取所有角色与行会对应关系
    dropout.alldrop = dbDropOut.getAll()  #获取所有掉落信息
    instanceColonizeChallenge.allColonizeChallenge = dbInstanceColonizeChallenge.getAllColonizeChallenge(
    )
    instanceColonizeChallenge.allMosterNameByinstance = dbInstanceColonizeChallenge.getAllMosterName(
    )

    dbtask.ALL_MAIN_TASK = dbtask.getAllMainTask()
    dbtask.ALL_EXTEN_TASK = dbtask.getAllExtedTask()
    dbInstance_d.instance_dAll = dbInstance_d.getInstance_dAll()  #副本掉落tip
    dbTeamInstance.getAll()  #设置所有多人副本数据
    dbTeamInstanceDrop.getAll()  #设置所有多人副本掉落数据
    dbNobility.getAll()  #获取所有爵位信息
    dbPetShopConfigure.getAll()  #获取所有宠物商店推荐宠物组合信息
    dbPublicscene.getAllInfo()
    dbSkill.getAllSkill()
    dbSkill.getBuffAddition()
    dbSkill.getBuffOffsetInfo()
    dbMonster.getAllMonsterInfo()
    dbCharacterPet.getPetTrainConfig()
    dbCharacterPet.getAllPetTemplate()
    dbCharacterPet.getPetExp()
    dbCharacterPet.getAllPetGrowthConfig()
    dbMail.getAllLevelMail()
    dbGuild.getAllTechnology()
    dbGuild.getTechnologyLimit()
    dbVIP.getAllVIPPer()
    dbVIP.getVIPExp()
    dbVIP.getAllLibao()
    dbfightfail.getAllFightFail()
    dbCharacterFate.getAllFateTemplate()
    dbtower.initAllTowerInfo()
    dbfigure.getAllFigureInfo()
    db_zhanyi.getAllZhanYiInfo()  #获取所有的战役信息
    db_zhanyi.getAllZhangJieInfo()  #获取所有的战役信息
    InstanceGroupManage()
    #    ColonizeManage()
    FortressManager()
    ZYManage()
    configure.shuxingbianliang()