public static void HandleGuildCreationValidMessage(Client client, GuildCreationValidMessage message) { if (client.Character.Guild != null) { return; } var Guilde = new GuildEngine() { Name = message.guildName, Level = 200, Xp = 354658435241, GuildEmblems = message.guildEmblem }; client.Character.Guild = Guilde; client.Character.GuildRank = 1; client.Send(new GuildCreationResultMessage((sbyte)GuildCreationResultEnum.GUILD_CREATE_OK)); client.Character.Guild.AddCharacter(client.Character); client.Send(new GuildJoinedMessage(Guilde.Name, Guilde.GuildEmblems, (uint)client.Character.GuildRank)); /*client.Send(new GuildInformationsMembersMessage(new[] * { * new GuildMember(client.Character.Id, client.Character.Name, client.Character.Level, (sbyte)client.Character.Breed, client.Character.Sex, 1, 0, 5, 1, 1, (sbyte)client.Character.AlignmentSide, (ushort)Functions.ReturnUnixTimeStamp(client.Character.LastUsage.Value)), * }));*/ client.Send(new GuildInformationsMembersMessage(Guilde.GetGuildMembers())); client.Send(new GuildInformationsGeneralMessage(true, (sbyte)Guilde.Level, Guilde.Xp + 120, Guilde.Xp, Guilde.Xp + 120)); }
public static void HandleGuildCreationValidMessage(WorldClient client, GuildCreationValidMessage message) { GuildCreationPanel guildCreationPanel = client.Character.Dialog as GuildCreationPanel; if (guildCreationPanel != null) { guildCreationPanel.CreateGuild(message.guildName, message.guildEmblem); } }
/// <summary> /// Créer le GuildRecord et le CharacterGuildRecord, et les met en cache pour les sauvegarder en db. /// </summary> /// <param name="owner"></param> /// <param name="message"></param> /// <returns></returns> public GuildRecord CreateGuild(Character owner, GuildCreationValidMessage message) { GuildRecord guild = new GuildRecord(GuildRecord.PopNextId(), message.guildName, message.guildEmblem.symbolShape, message.guildEmblem.symbolColor, message.guildEmblem.backgroundShape, message.guildEmblem.backgroundColor, 1, 0, 1); guild.AddElement(); JoinGuild(guild, owner, GuildRightsBitEnum.GUILD_RIGHT_BOSS, (ushort)GuildRightsBitEnum.GUILD_RIGHT_BOSS); return(guild); }
public void ChatClientMultiMessageFrame(WorldClient client, GuildCreationValidMessage guildCreationValidMessage) { if (!Regex.IsMatch(guildCreationValidMessage.guildName, @"^\b[A-Z][A-Za-z\s-']{4,30}\b$", RegexOptions.Compiled) || Regex.IsMatch(guildCreationValidMessage.guildName, @"^\s\s$")) { client.SendPacket(new GuildCreationResultMessage((uint)SocialGroupCreationResultEnum.SOCIAL_GROUP_CREATE_ERROR_NAME_INVALID)); return; } if (client.ActiveCharacter.Guild != null) { client.SendPacket(new GuildCreationResultMessage((uint)SocialGroupCreationResultEnum.SOCIAL_GROUP_CREATE_ERROR_ALREADY_IN_GROUP)); return; } if (GuildRepository.Instance.IsNameAlreadyExist(guildCreationValidMessage.guildName)) { client.SendPacket(new GuildCreationResultMessage((uint)SocialGroupCreationResultEnum.SOCIAL_GROUP_CREATE_ERROR_NAME_ALREADY_EXISTS)); return; } var guild = new Guild() { Id = DatabaseManager.Instance.AutoIncrement <Guild>(GuildRepository.Instance.Collection), Name = guildCreationValidMessage.guildName, OwnerCharacterId = client.ActiveCharacter.Id, Level = 1, Experience = 0, SymbolColor = guildCreationValidMessage.guildEmblem.symbolColor, SymbolShape = (int)guildCreationValidMessage.guildEmblem.symbolShape, BackgroundColor = guildCreationValidMessage.guildEmblem.backgroundColor, BackgroundShape = (int)guildCreationValidMessage.guildEmblem.backgroundShape, CreationDate = (int)(DateTime.Now - new DateTime(1970, 1, 1).ToLocalTime()).TotalSeconds //a patch pas bonne date }; GuildRepository.Instance.Insert(guild); var guildMember = new GuildMember(guild.Id, client.ActiveCharacter.Id) { Id = DatabaseManager.Instance.AutoIncrement <GuildMember>(GuildMemberRepository.Instance.Collection), Role = 1, PossessedRight = 262145, PourcentageXpGiven = 0 }; GuildMemberRepository.Instance.Insert(guildMember); client.SendPacket(new GuildInformationsPaddocksMessage(5, new List <Burning.DofusProtocol.Network.Types.PaddockContentInformations>())); client.SendPacket(new GuildHousesInformationMessage(new List <Burning.DofusProtocol.Network.Types.HouseInformationsForGuild>())); client.SendPacket(new GuildCreationResultMessage((uint)SocialGroupCreationResultEnum.SOCIAL_GROUP_CREATE_OK)); client.SendPacket(new GuildJoinedMessage(client.ActiveCharacter.Guild.GetGuildInformations(), (uint)guildMember.Role)); }
public static void HandleGuildCreationRequest(GuildCreationValidMessage message, WorldClient client) { if (GuildProvider.Instance.HasGuild(client.Character.Id)) { client.Send(new GuildCreationResultMessage((sbyte)GuildCreationResultEnum.GUILD_CREATE_ERROR_ALREADY_IN_GUILD)); return; } if (GuildRecord.CanCreateGuild(message.guildName)) { GuildRecord newGuild = GuildProvider.Instance.CreateGuild(client.Character, message); client.Send(new GuildCreationResultMessage((sbyte)GuildCreationResultEnum.GUILD_CREATE_OK)); } else { client.Send(new GuildCreationResultMessage((sbyte)GuildCreationResultEnum.GUILD_CREATE_ERROR_NAME_ALREADY_EXISTS)); } }
public static void HandleGuildCreationRequest(GuildCreationValidMessage message, WorldClient client) { GuildCreationResultEnum result = GuildProvider.Instance.CreateGuild(client.Character, message.guildName, message.guildEmblem); client.Character.OnGuildCreated(result); }
public static void HandleGuildCreationValidMessage(WorldClient client, GuildCreationValidMessage message) { (client.Character.Dialog as GuildCreationPanel)?.CreateGuild(message.guildName, message.guildEmblem); }