public static void SelectCharacter(Network.WorldClient client, string packet) { if (client.Character == null) { int id = int.Parse(packet.Substring(2)); Database.Records.CharacterRecord character = client.Account.Characters.FirstOrDefault(x => x.ID == id); if (character != null) { if (character.FirstConnection) { // Database.Cache.WorldItemCache.LoadItemsForCharacter(character); character.FirstConnection = false; } StringBuilder selectPacket = new StringBuilder("ASK|"); selectPacket.Append(character.ID).Append("|").Append(character.Nickname).Append("|").Append(character.Level).Append("|") .Append(character.Breed).Append("|").Append(character.Look).Append("|").Append(character.Color1) .Append("|").Append(character.Color2).Append("|").Append(character.Color3).Append("||"); character.Items.Items.ForEach(x => selectPacket.Append(x.DisplayItem + ";")); selectPacket.Append("|"); client.Character = character; character.SetPlayer(client); client.Send(selectPacket.ToString()); client.Send("BAPCrystal"); } } }
public GuildMember(Database.Records.CharacterRecord character, Guild guild) { this.OwnGuild = guild; this.Character = character; this.ID = character.ID; this.Rank = (GuildRank)character.GuildRank; character.GuildRights.Split(',').ToList().FindAll(x => x != "").ForEach(x => this.Rights.Add(int.Parse(x))); this.CharacterName = character.Nickname; this.SetOffline(); }
public static void DeleteCharacter(Network.WorldClient client, string packet) { if (client.Character == null) { string[] data = packet.Substring(2).Split('|'); int id = int.Parse(data[0]); Database.Records.CharacterRecord character = Helper.AccountHelper.GetCharacter(id); character.Items.Items.ForEach(x => x.DeleteAndFlush()); Database.Cache.CharacterCache.Cache.Remove(character); client.Account.Characters.Remove(character); character.Delete(); Communication.Realm.Communicator.Server.MainRealm.SendMessage (new Communication.Realm.Packet.PlayerDeletedCharacterMessage(character.Nickname)); SendCharacterList(client, packet); } }
public StatsEngine(Database.Records.CharacterRecord character) { _character = character; }
public SpellBook(Database.Records.CharacterRecord character) { this._character = character; }
public static void CreateCharacter(Network.WorldClient client, string packet) { string[] data = packet.Substring(2).Split('|'); if (!Helper.AccountHelper.ExistName(data[0])) { if (client.Account.Characters.Count < ConfigurationManager.GetIntValue("MaxCharacterPerServer")) { if (data[0].Length > 4 && data[0].Length < 15 && HasValidNickname(data[0]) && int.Parse(data[1]) > 0 && int.Parse(data[1]) < 13 && int.Parse(data[2]) > -1 && int.Parse(data[2]) < 2) { Database.Records.CharacterRecord character = new Database.Records.CharacterRecord() { Nickname = data[0], Breed = int.Parse(data[1]), Gender = int.Parse(data[2]), Color1 = int.Parse(data[3]), Color2 = int.Parse(data[4]), Color3 = int.Parse(data[5]), Scal = ConfigurationManager.GetIntValue("StartScal"), Kamas = ConfigurationManager.GetIntValue("StartKamas"), Direction = ConfigurationManager.GetIntValue("StartDir"), CaractPoint = (ConfigurationManager.GetIntValue("StartLevel") * ConfigurationManager.GetIntValue("RateCapitalPoints")) - 5, SpellPoint = (ConfigurationManager.GetIntValue("StartLevel") * ConfigurationManager.GetIntValue("RateSpellPoints")) - 1, Owner = client.Account.ID, }; if (client.Account.Vip == 1) { character.Level = 1500; } else { character.Level = ConfigurationManager.GetIntValue("StartLevel"); } character.Experience = Helper.ExpFloorHelper.GetCharactersLevelFloor(character.Level).Character; if (Utilities.ConfigurationManager.GetBoolValue("EnableBreedsOriginalStartMap")) { Database.Records.OriginalBreedStartMapRecord originalMap = Helper.MapHelper.GetOriginalBreedStartMap(character.Breed); character.MapID = originalMap.MapID; character.CellID = originalMap.CellID; character.SaveMap = originalMap.MapID; character.SaveCell = originalMap.CellID; } else { character.MapID = ConfigurationManager.GetIntValue("StartMap"); character.CellID = ConfigurationManager.GetIntValue("StartCell"); character.SaveMap = ConfigurationManager.GetIntValue("StartMap"); character.SaveCell = ConfigurationManager.GetIntValue("StartCell"); } character.FirstPlay = true; character.Spells.LearnBaseSpell(); character.CurrentLife = character.Stats.MaxLife; character.Look = Helper.AccountHelper.GetDefaultLook(character); /* Add character */ character.SaveAndFlush(); Database.Cache.CharacterCache.Cache.Add(character); client.Account.Characters.Add(character); Communication.Realm.Communicator.Server.MainRealm.SendMessage (new Communication.Realm.Packet.PlayerCreatedCharacterMessage(character)); SendCharacterList(client, packet); Utilities.ConsoleStyle.Infos("'" + client.Account.Username + "' has created the character '" + character.Nickname + "'"); } else { client.Send("AAEe"); } } } else { client.Send("AAEa"); } }
public PlayerCreatedCharacterMessage(Database.Records.CharacterRecord character) : base(Protocol.ForwardPacketTypeEnum.PlayerCreatedCharacterMessage) { Writer.Write(character.Owner); Writer.Write(character.Nickname); }
public ItemEngine(Database.Records.CharacterRecord character) { _character = character; }
public FactionEngine(Database.Records.CharacterRecord character) { this.Character = character; }
public CharacterPattern(Database.Records.CharacterRecord character) { this._character = character; }
public static int GetDefaultLook(Database.Records.CharacterRecord character) { return(int.Parse(character.Breed.ToString() + character.Gender.ToString())); }