当前位置: 首页>>代码示例>>Python>>正文


Python Formation.sync_slots方法代码示例

本文整理汇总了Python中core.formation.Formation.sync_slots方法的典型用法代码示例。如果您正苦于以下问题:Python Formation.sync_slots方法的具体用法?Python Formation.sync_slots怎么用?Python Formation.sync_slots使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在core.formation.Formation的用法示例。


在下文中一共展示了Formation.sync_slots方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: start

# 需要导入模块: from core.formation import Formation [as 别名]
# 或者: from core.formation.Formation import sync_slots [as 别名]
    def start(self, dungeon_id, formation_slots=None):
        grade_conf = ConfigDungeonGrade.get(dungeon_id)
        if not grade_conf:
            raise GameException(ConfigErrorMessage.get_error_id("DUNGEON_NOT_EXIST"))

        map_name = ConfigDungeon.get(grade_conf.belong).map_name

        club_level = get_club_property(self.server_id, self.char_id, 'level')
        if grade_conf.need_level > club_level:
            raise GameException(ConfigErrorMessage.get_error_id("DUNGEON_CLUB_LEVEL_NOT_ENOUGH"))

        f = Formation(self.server_id, self.char_id)
        if formation_slots:
            f.sync_slots(formation_slots)

        Energy(self.server_id, self.char_id).check(ConfigDungeon.get(grade_conf.belong).cost)

        ri = TimesInfo(self.server_id, self.char_id, grade_conf.belong)
        if not ri.remained_match_times:
            # 购买
            self.buy_times(grade_conf.belong)

        club_one = Club(self.server_id, self.char_id)
        club_two = ConfigNPCFormation.get(grade_conf.npc)
        msg = ClubMatch(club_one, club_two, 6, f.get_skill_sequence(), {}).start()
        msg.key = str(dungeon_id)
        msg.map_name = map_name
        return msg
开发者ID:yueyoum,项目名称:dianjing,代码行数:30,代码来源:dungeon.py

示例2: start

# 需要导入模块: from core.formation import Formation [as 别名]
# 或者: from core.formation.Formation import sync_slots [as 别名]
    def start(self, challenge_id, formation_slots=None):
        config = ConfigChallengeMatch.get(challenge_id)
        if not config:
            raise GameException(ConfigErrorMessage.get_error_id("CHALLENGE_NOT_EXIST"))

        if config.condition_challenge:
            doc = MongoChallenge.db(self.server_id).find_one(
                {'_id': self.char_id},
                {'challenge_star.{0}'.format(config.condition_challenge): 1}
            )

            if str(config.condition_challenge) not in doc['challenge_star']:
                raise GameException(ConfigErrorMessage.get_error_id("CHALLENGE_NOT_OPEN"))

        rt = RemainedTimes(self.server_id, self.char_id, challenge_id)
        if not rt.remained_match_times:
            raise GameException(ConfigErrorMessage.get_error_id("CHALLENGE_WITHOUT_TIMES"))

        f = Formation(self.server_id, self.char_id)
        if formation_slots:
            f.sync_slots(formation_slots)

        Energy(self.server_id, self.char_id).check(config.energy)

        club_one = Club(self.server_id, self.char_id)
        club_two = ChallengeNPCClub(challenge_id)
        match = ClubMatch(club_one, club_two, 6, f.get_skill_sequence(), {})
        msg = match.start()
        msg.key = str(challenge_id)
        msg.map_name = config.map_name
        return msg
开发者ID:yueyoum,项目名称:dianjing,代码行数:33,代码来源:challenge.py

示例3: match_start

# 需要导入模块: from core.formation import Formation [as 别名]
# 或者: from core.formation.Formation import sync_slots [as 别名]
    def match_start(self, key, formation_slots=None):
        try:
            friend_id, building_id, event_id = key.split(':')
            friend_id = int(friend_id)
            building_id = int(building_id)
            event_id = int(event_id)
        except:
            raise GameException(ConfigErrorMessage.get_error_id("BAD_MESSAGE"))

        f = Formation(self.server_id, self.char_id)
        if formation_slots:
            f.sync_slots(formation_slots)

        config = ConfigTerritoryEvent.get(event_id)
        npc_club = ConfigNPCFormation.get(config.npc)
        my_club = Club(self.server_id, self.char_id)

        match = ClubMatch(my_club, npc_club, 6, f.get_skill_sequence(), {})
        msg = match.start()
        msg.key = "{0}:{1}:{2}".format(friend_id, building_id, event_id)
        msg.map_name = GlobalConfig.value_string("MATCH_MAP_TERRITORY_FRIEND")
        return msg
开发者ID:yueyoum,项目名称:dianjing,代码行数:24,代码来源:territory.py

示例4: match

# 需要导入模块: from core.formation import Formation [as 别名]
# 或者: from core.formation.Formation import sync_slots [as 别名]
    def match(self, formation_slots=None):
        sweep_end_at = self.doc.get('sweep_end_at', 0)
        if sweep_end_at:
            raise GameException(ConfigErrorMessage.get_error_id("TOWER_IN_SWEEP_CANNOT_OPERATE"))

        level = self.get_current_level()
        if not level:
            raise GameException(ConfigErrorMessage.get_error_id("TOWER_ALREADY_ALL_PASSED"))

        f = Formation(self.server_id, self.char_id)
        if formation_slots:
            f.sync_slots(formation_slots)

        config = ConfigTowerLevel.get(level)

        club_one = Club(self.server_id, self.char_id)
        if config.talent_id:
            club_one.add_talent_effects([config.talent_id])

        club_two = config.make_club()

        if not club_one.formation_staffs:
            club_one.load_staffs()
        if not club_two.formation_staffs:
            club_two.load_staffs()

        club_one.add_tower_temporary_talent_effects()
        club_one.make_temporary_staff_calculate()

        club_two.add_tower_temporary_talent_effects()
        club_two.make_temporary_staff_calculate()

        club_match = ClubMatch(club_one, club_two, 6, f.get_skill_sequence(), {})
        msg = club_match.start()
        msg.key = str(level)
        msg.map_name = config.map_name
        return msg
开发者ID:yueyoum,项目名称:dianjing,代码行数:39,代码来源:tower.py

示例5: match

# 需要导入模块: from core.formation import Formation [as 别名]
# 或者: from core.formation.Formation import sync_slots [as 别名]
    def match(self, formation_slots=None):
        doc = MongoArena.db(self.server_id).find_one(
            {'_id': str(self.char_id)},
            {'rival': 1}
        )

        rival_id = doc['rival']

        if not rival_id:
            raise GameException(ConfigErrorMessage.get_error_id("ARENA_MATCH_NO_RIVAL"))

        f = Formation(self.server_id, self.char_id)
        if formation_slots:
            f.sync_slots(formation_slots)

        self.check_and_buy_times()

        club_one = Club(self.server_id, self.char_id)
        club_two = ArenaClub(self.server_id, rival_id)
        club_match = ClubMatch(club_one, club_two, 6, f.get_skill_sequence(), {})
        msg = club_match.start()
        msg.key = rival_id
        msg.map_name = GlobalConfig.value_string("MATCH_MAP_ARENA")
        return msg
开发者ID:yueyoum,项目名称:dianjing,代码行数:26,代码来源:arena.py


注:本文中的core.formation.Formation.sync_slots方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。