/// <summary> /// Creates a new tournament team. /// </summary> /// <param name="tournament">The tournament team.</param> /// <param name="id">The id.</param> /// <param name="name">The name.</param> /// <param name="x">The x coordinate.</param> /// <param name="y">The y coordinate.</param> public TournamentTeam(ITournamentBase tournament, int id, string name, ushort x, ushort y) { Members = new ConcurrentDictionary <uint, Models.Entities.Player>(); Tournament = tournament; Id = id; Name = name; X = x; Y = y; Team = this; }
/// <summary> /// Handles the sign up validation for a player. /// </summary> /// <param name="tournament">The tournament.</param> /// <param name="player">The player.</param> /// <returns>The response.</returns> public static TournamentSignUpResponse SignUp(ITournamentBase tournament, Client.GameState player) { string _message = string.Empty; if (player.Entity.Level < tournament.RequiredLevel) { _message = TournamentMessage.TOURNAMENT_LEVEL_TOO_LOW; } if (player.Entity.Reborn < tournament.RequiredReborns) { _message = TournamentMessage.TOURNAMENT_REBORNS_TOO_LOW; } if (tournament.RequiredToBeVIP && player.Entity.VIPLevel == 0) { _message = TournamentMessage.TOURNAMENT_NOT_VIP; } if (tournament.RequiredToBeFemale && !player.Entity.IsFemale) { _message = TournamentMessage.TOURNAMENT_NOT_FEMALE; } else if (tournament.RequiredToBeMale && !player.Entity.IsMale) { _message = TournamentMessage.TOURNAMENT_NOT_MALE; } if (tournament.RequiredGuild && player.Entity.GuildID == null) { _message = TournamentMessage.TOURNAMENT_NO_GUILD; } else if (tournament.RequiredGuild) { if (tournament.RequiredGuildLeader && tournament.RequiredDeputyLeader && player.Entity.GuildRank != (ushort)Enums.GuildMemberRank.GuildLeader && player.Entity.GuildRank != (ushort)Enums.GuildMemberRank.DeputyLeader) { _message = TournamentMessage.TOURNAMENT_NOT_GUILD_LEADER_OR_DEPUTY_LEADER; } else if (tournament.RequiredGuildLeader && player.Entity.GuildRank != (ushort)Enums.GuildMemberRank.GuildLeader) { _message = TournamentMessage.TOURNAMENT_NOT_GUILD_LEADER; } else if (tournament.RequiredDeputyLeader && player.Entity.GuildRank != (ushort)Enums.GuildMemberRank.DeputyLeader) { _message = TournamentMessage.TOURNAMENT_NOT_DEPUTY_LEADER; } } bool _success = string.IsNullOrWhiteSpace(_message); if (_success) { _message = TournamentMessage.TOURNAMENT_SIGNED_UP; } return(new TournamentSignUpResponse { Message = _message, Success = _success }); }
/// <summary> /// Handles the sign up validation for a player. /// </summary> /// <param name="tournament">The tournament.</param> /// <param name="player">The player.</param> /// <returns>The response.</returns> public static TournamentSignUpResponse SignUp(ITournamentBase tournament, Models.Entities.Player player) { string msg = string.Empty; if (player.Level < tournament.RequiredLevel) { msg = "TOURNAMENT_LEVEL_TOO_LOW"; } if (tournament.RequiredJob != Enums.Job.Unknown && Tools.JobTools.GetBaseJob(player.Job) != tournament.RequiredJob) { msg = "TOURNAMENT_INVALID_JOB"; } if (player.Reborns < tournament.RequiredReborns) { msg = "TOURNAMENT_REBORNS_TOO_LOW"; } if (tournament.RequiredToBeVIP && player.VIPLevel == 0) { msg = "TOURNAMENT_NOT_VIP"; } if (tournament.RequiredToBeFemale && !player.IsFemale) { msg = "TOURNAMENT_NOT_FEMALE"; } else if (tournament.RequiredToBeMale && !player.IsMale) { msg = "TOURNAMENT_NOT_MALE"; } if (tournament.RequiredGuild && player.Guild == null) { msg = "TOURNAMENT_NO_GUILD"; } else if (tournament.RequiredGuild) { if (tournament.RequiredGuildLeader && tournament.RequiredDeputyLeader && player.GuildMember.Rank != Enums.GuildRank.GuildLeader && player.GuildMember.Rank != Enums.GuildRank.DeputyLeader) { msg = "TOURNAMENT_NOT_GUILD_LEADER_OR_DEPUTY_LEADER"; } else if (tournament.RequiredGuildLeader && player.GuildMember.Rank != Enums.GuildRank.GuildLeader) { msg = "TOURNAMENT_NOT_GUILD_LEADER"; } else if (tournament.RequiredDeputyLeader && player.GuildMember.Rank != Enums.GuildRank.DeputyLeader) { msg = "TOURNAMENT_NOT_DEPUTY_LEADER"; } } if (tournament.MinimumTeamMembers > 0 && (player.Team == null || player.Team.GetMembers().Count < tournament.MinimumTeamMembers)) { msg = "TOURNAMENT_TEAM_TOO_SMALL"; } bool success = string.IsNullOrWhiteSpace(msg); if (success) { msg = "TOURNAMENT_SIGNED_UP"; } return(new TournamentSignUpResponse { Message = msg, Success = success }); }