def checkParticipants(players, guild): guild = guild.id for player in players: isbanned = "{} забанен в группе".format(player.name) not_in_guild = "{} не состоит в гильдии".format(player.name) if not player.inguild: raise GMError(not_in_guild) # FIX, WHERE DID U GET THESE? elif player.guild != guild.id: raise GMError(not_in_guild) # FIX, WHERE DID U GET THESE? elif player.id in ban_list: raise GMError(isbanned) # FIX, WHERE DID U GET THESE?
def checkIfHeadsVicesInGuild(guild): heads = guild['head'].split(" ") vices = guild['vice'].split(" ") for player in guild['players']: player_id = str(player.id) if player_id in heads: heads.remove(player_id) elif player_id in vices: vices.remove(player_id) if len(heads) or len(vices): raise GMError("Не все заместители/главы находятся в составе гильдии.")
def checkWaves(achi, waves): wave_count = len(achi.wave_pics) - 1 if wave_count < waves: raise GMError("Слишком много волн")
def checkAchi(achi): if not achi.exists: raise GMError("Такого испытания не существует")
def checkGuild(guild): if not guild.exists: raise GMError("Такой гильдии не существует")
def checkName(name): if Achi(name=name).exists: raise GMError("<<{}>> уже существует.".format(name))
def checkIfAchiIsActive(): if achi_is_active: raise GMError("Невозможно добавлять испытания во время сезона.")
def checkPlayerUniqueness(player): old_player = Player(name=player.name) if old_player.exists and old_player.id != player.id: raise GMError("Игрок с ником {} уже [id{}|существует]".format( player.name, old_player.id))
def checkNumberOfPlayers(players): if len(players) < 5: raise GMError("В гильдии меньше 5 игроков.")
def checkGuildName(guild_name): pattern = r"^[\[\]A-Za-z_\d ]+$" if search(pattern, guild_name) is None: raise GMError("Название гильдии содержит недопустимые символы.") elif Guild(name=guild_name).exists: raise GMError("Гильдия с таким названием уже существует.")
def checkIfPlayerInBan(player): if player.id in ban_list: raise GMError("{} забанен в группе.".format(player))
def checkIfPlayerHasGuild(hyperlink): player = Player(id=hyperlink.id) if player.rank > 0: raise GMError("{} уже состоит в гильдии {}".format( hyperlink, player.guild.name))