Beispiel #1
0
 def _init_res_gem(self, objs):
     """珠宝"""
     for obj in objs:
         obj.parts = str2list(obj.parts)
         self.gem[obj.id] = obj
         q_gem = self.q_gem.setdefault(obj.quality, [])
         q_gem.append(obj)
Beispiel #2
0
 def init_monster(self, wpcid, extend_boss_hp=None):
     """ 初始化本场战斗的怪物数据 """
     res_war_npcs = Game.res_mgr.awar_npc_configs_bykey.get(wpcid)
     if res_war_npcs is None:
         return False, errcode.EC_NORES
     pids = self.war_mgr.room.pids[:]
     #获取参与玩家的信息
     a_level, a_cbe = self.player_average()
     for res_war_npc in res_war_npcs:
         if res_war_npc.bid:
             self.b_npcid = res_war_npc.id
         else:
             self.m_npcids.append(res_war_npc.id)
         data = {}
         #计算出每个怪物的属性
         res_mlids = common.str2list(res_war_npc.mlids, vtype=float)
         res_mlids = map(int, res_mlids)
         for res_mlid in res_mlids:
             m_attr = self.init_monster_attr(int(res_mlid), len(pids),
                                             a_level, a_cbe)
             data[res_mlid] = m_attr
             if res_war_npc.bid and not extend_boss_hp:
                 self.mboss_hp = self.boss_hp = m_attr['HP']
         self.moster2mattr[res_war_npc.id] = data
     return True, None
Beispiel #3
0
 def _init_res_gem(self, objs):
     """珠宝"""
     for obj in objs:
         obj.parts = str2list(obj.parts)
         self.gem[obj.id] = obj
         q_gem = self.q_gem.setdefault(obj.quality, [])
         q_gem.append(obj)
Beispiel #4
0
 def init_strong_map(self):
     """ 初始化降龙战势力地图 """
     res_strong_map = Game.res_mgr.awar_strong_maps
     dic = {}
     for id, o in res_strong_map.iteritems():
         try:
             smid = float(o.smids)
             smids = [int(smid)]
         except:
             smids = common.str2list(o.smids)
         dic[id] = smids
     return dic
Beispiel #5
0
 def init_strong_map(self):
     """ 初始化降龙战势力地图 """
     res_strong_map = Game.res_mgr.awar_strong_maps
     dic = {}
     for id, o in res_strong_map.iteritems():
         try:
             smid = float(o.smids)
             smids = [int(smid)]
         except:
             smids = common.str2list(o.smids)
         dic[id] = smids
     return dic
Beispiel #6
0
 def handle_setting(cls):
     """ 处理修改资源表 """
     cls.setting_data = {}
     res_cost = Game.setting_mgr.setdefault(ROLEUP_COST_ITEM, ROLEUP_COST_ITEM_V)
     cls.setting_data[ROLEUP_COST_ITEM] = common.str2list(res_cost)
     #银币培养
     res_coin1 = Game.setting_mgr.setdefault(ROLETRAIN_COIN1, ROLETRAIN_COIN1_V)
     cls.setting_data[ROLETRAIN_COIN1] = common.str2dict2(res_coin1)
     #元宝培养
     res_coin2 = Game.setting_mgr.setdefault(ROLETRAIN_COIN2, ROLETRAIN_COIN2_V)
     cls.setting_data[ROLETRAIN_COIN2] = common.str2dict2(res_coin2)
     res_locklevel = Game.setting_mgr.setdefault(ROLETRAIN_LOCKLEVEL, ROLETRAIN_LOCKLEVEL_V)
     cls.setting_data[ROLETRAIN_LOCKLEVEL] = res_locklevel
Beispiel #7
0
 def boss_hurt_boat(self):
     """ boss袭击天舟 """
     sc, hurt = common.str2list(self.war_per_config.hurts, vtype=str)
     sc = int(sc)
     n = 1
     sleep(sc)
     while self.war_data.boss_hp > 0 and not self.war_data.war_end:
         boss_data = eval(hurt)
         n += 1
         self.boat.hard -= boss_data
         if self.boat.hard < 0:
             self.boat.hard = 0
         self.boat.hard_broad(boss_data=boss_data)
         sleep(sc)
Beispiel #8
0
 def boss_hurt_boat(self):
     """ boss袭击天舟 """
     sc, hurt = common.str2list(self.war_per_config.hurts, vtype=str)
     sc = int(sc)
     n = 1
     sleep(sc)
     while self.war_data.boss_hp > 0 and not self.war_data.war_end:
         boss_data = eval(hurt)
         n += 1
         self.boat.hard -= boss_data
         if self.boat.hard < 0:
             self.boat.hard = 0
         self.boat.hard_broad(boss_data=boss_data)
         sleep(sc)
Beispiel #9
0
 def init_monster(self, wpcid, extend_boss_hp=None):
     """ 初始化本场战斗的怪物数据 """
     res_war_npcs = Game.res_mgr.awar_npc_configs_bykey.get(wpcid)
     if res_war_npcs is None:
         return False, errcode.EC_NORES
     pids = self.war_mgr.room.pids[:]
     #获取参与玩家的信息
     a_level, a_cbe = self.player_average()
     for res_war_npc in res_war_npcs:
         if res_war_npc.bid:
             self.b_npcid = res_war_npc.id
         else:
             self.m_npcids.append(res_war_npc.id)
         data = {}
         #计算出每个怪物的属性
         res_mlids = common.str2list(res_war_npc.mlids, vtype=float)
         res_mlids = map(int, res_mlids)
         for res_mlid in res_mlids:
             m_attr = self.init_monster_attr(int(res_mlid), len(pids), a_level, a_cbe)
             data[res_mlid] = m_attr
             if res_war_npc.bid and not extend_boss_hp:
                 self.mboss_hp = self.boss_hp = m_attr['HP']
         self.moster2mattr[res_war_npc.id] = data
     return True, None
Beispiel #10
0
 def train_cost(self, type):
     """ 培养消耗 """
     res_cost = self.player._game.setting_mgr.setdefault(ROLETRAIN_COST, ROLETRAIN_COST_V)
     res = common.str2list(res_cost)
     return res[type]