Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static bool CheckCommand(string _message, GameState client)
- {
- string message = _message.Replace("#60", "").Replace("#61", "").Replace("#62", "").Replace("#63", "").Replace("#64", "").Replace("#65", "").Replace("#66", "").Replace("#67", "").Replace("#68", "");
- try
- {
- if (message.StartsWith("/"))
- {
- string message_ = message.Substring(1).ToLower();
- string Mess = message.Substring(1);
- string[] Data = message_.Split(' ');
- Server.AddGMCommand(client.Entity.Name, " " + client.Account.State.ToString() + " @" + message_ + " " + DateTime.Now.ToString());
- #region GameHelper
- if (client.Account.State == Database.AccountTable.AccountState.GameHelper)
- {
- switch (Data[0])
- {
- case "mr":
- {
- client.Entity.Update((byte)FlagsUpdate.DataType.Merchant, byte.Parse(Data[1]), true);
- Attack send = new Attack(true);
- send.Attacker = client.Entity.UID;
- send.AttackType = Attack.MerchantAccept;
- send.ResponseDamage = byte.Parse(Data[1]);
- client.Send(send.ToArray());
- break;
- }
- #region inner
- case "inner":
- {
- client.Entity.InnerPower.AddPotency(null, client, 100000);
- break;
- }
- case "iteminner":
- {
- client.Inventory.Add(3005365, 0, 1);//UniversalConcept(A)
- client.Inventory.Add(3005366, 0, 1);//UniversalConcept(B)
- client.Inventory.Add(3005395, 0, 1);//SecretofBreath(A)
- client.Inventory.Add(3005396, 0, 1);//SecretofBreath(B)
- client.Inventory.Add(3005397, 0, 1);//DragonTactics(A)
- client.Inventory.Add(3005398, 0, 1);//DragonTactics(B)
- client.Inventory.Add(3005399, 0, 1);//DoctrineofDeity(A)
- client.Inventory.Add(3005400, 0, 1);//DoctrineofDeity(B)
- client.Inventory.Add(3005401, 0, 1);//DoctrineofDeity(C)
- client.Inventory.Add(3005412, 0, 1);//PowerEraser
- client.Inventory.Add(3007113, 0, 1);//DemonRider(A)
- client.Inventory.Add(3007114, 0, 1);//DemonRider(B)
- client.Inventory.Add(3007115, 0, 1);//BoundlessHeart(A)
- client.Inventory.Add(3007116, 0, 1);//BoundlessHeart(B)
- client.Inventory.Add(3007117, 0, 1);//BoundlessHeart(C)
- client.Inventory.Add(3007230, 0, 1);//PuzzleofLife(A)
- client.Inventory.Add(3007231, 0, 1);//PuzzleofLife(B)
- client.Inventory.Add(3007232, 0, 1);//PuzzleofLife(C)
- client.Inventory.Add(3007108, 0, 1);//OutstandingExploitPack
- client.Inventory.Add(3007109, 0, 1);//ExcellentExploitPack
- client.Inventory.Add(3007110, 0, 1);//SupremeExploitPack
- break;
- }
- #endregion
- case "p7":
- {
- client.Inventory.Add(800020, 0, 1, false);
- client.Inventory.Add(800111, 0, 1, false);
- client.Inventory.Add(800142, 0, 1, false);
- client.Inventory.Add(800215, 0, 1, false);
- client.Inventory.Add(800255, 0, 1, false);
- client.Inventory.Add(800422, 0, 1, false);
- client.Inventory.Add(800522, 0, 1, false);
- client.Inventory.Add(800618, 0, 1, false);
- client.Inventory.Add(800725, 0, 1, false);
- client.Inventory.Add(800810, 0, 1, false);
- client.Inventory.Add(800811, 0, 1, false);
- client.Inventory.Add(800917, 0, 1, false);
- client.Inventory.Add(820073, 0, 1, false);
- client.Inventory.Add(820074, 0, 1, false);
- client.Inventory.Add(820075, 0, 1, false);
- client.Inventory.Add(820076, 0, 1, false);
- client.Inventory.Add(821033, 0, 1, false);
- client.Inventory.Add(821034, 0, 1, false);
- client.Inventory.Add(822071, 0, 1, false);
- client.Inventory.Add(822072, 0, 1, false);
- client.Inventory.Add(823058, 0, 1, false);
- client.Inventory.Add(823059, 0, 1, false);
- client.Inventory.Add(823060, 0, 1, false);
- client.Inventory.Add(823061, 0, 1, false);
- client.Inventory.Add(823062, 0, 1, false);
- client.Inventory.Add(824018, 0, 1, false);
- client.Inventory.Add(824019, 0, 1, false);
- client.Inventory.Add(824020, 0, 1, false);
- break;
- }
- case "itemid":
- {
- ConquerItem newItem = new GamePackets.ConquerItem(true);
- newItem.ID = uint.Parse(Data[1]);
- if (Data.Length > 2)
- {
- byte plus = 0;
- byte.TryParse(Data[2], out plus);
- newItem.Plus = Math.Min((byte)12, plus);
- if (Data.Length > 3)
- {
- byte bless = 0;
- byte.TryParse(Data[3], out bless);
- newItem.Bless = Math.Min((byte)7, bless);
- if (Data.Length > 4)
- {
- byte ench = 0;
- byte.TryParse(Data[4], out ench);
- newItem.Enchant = Math.Min((byte)255, ench);
- if (Data.Length > 5)
- {
- byte soc1 = 0;
- byte.TryParse(Data[5], out soc1);
- if (Enum.IsDefined(typeof(Game.Enums.Gem), soc1))
- {
- newItem.SocketOne = (Game.Enums.Gem)soc1;
- }
- if (Data.Length > 6)
- {
- byte soc2 = 0;
- byte.TryParse(Data[6], out soc2);
- if (Enum.IsDefined(typeof(Game.Enums.Gem), soc2))
- {
- newItem.SocketTwo = (Game.Enums.Gem)soc2;
- }
- }
- if (Data.Length > 9)
- {
- byte R = 0, G = 0, B = 0;
- byte.TryParse(Data[7], out R);
- byte.TryParse(Data[8], out G);
- byte.TryParse(Data[9], out B);
- newItem.SocketProgress = (uint)(B | (G << 8) | (R << 16));
- }
- }
- }
- }
- }
- newItem.Durability = 7200;
- newItem.MaximDurability = 7200;
- newItem.Color = (Game.Enums.Color)Kernel.Random.Next(4, 8);
- client.Inventory.Add(newItem, Game.Enums.ItemUse.CreateAndAdd);
- break;
- }
- //case "cps":
- // {
- // client.Entity.ConquerPoints = uint.Parse(Data[1]);
- // break;
- // }
- case "vip":
- {
- client.Entity.VIPLevel = byte.Parse(Data[1]);
- GamePackets.VipStatus vip = new GamePackets.VipStatus();
- client.Entity.VIP.OldLevel = client.Entity.VIPLevel;
- break;
- }
- //case "money":
- // {
- // client.Entity.Money = uint.Parse(Data[1]);
- // break;
- // }
- case "bring":
- {
- foreach (var pClient in Server.GamePool)
- {
- if (pClient == null) continue;
- if (pClient.Entity.Name.ToLower().Contains(Data[1]) || Data[1].ToLower() == "all")
- if (Data[1].ToLower() == "all")
- {
- pClient.Entity.Teleport(client.Entity.MapID,
- (ushort)Kernel.Random.Next(client.Entity.X - 10, client.Entity.X + 10),
- (ushort)Kernel.Random.Next(client.Entity.Y - 10, client.Entity.Y + 10));
- }
- else
- pClient.Entity.Teleport(client.Entity.MapID, client.Entity.X, client.Entity.Y);
- }
- break;
- }
- case "ban":
- {
- foreach (var Client in Server.GamePool)
- {
- if (Client == null) continue;
- if (Client.Account.State >= client.Account.State)
- continue;
- if (Client.Entity.Name.ToLower().Contains(Data[1]))
- {
- Client.Account.State = Database.AccountTable.AccountState.Banned;
- Client.Account.SaveState();
- Client["banhours"] = Data[2].Cast<int>();
- Client["banreason"] = message_.Substring(Data[0].Length + 1 + Data[1].Length + 1 + Data[2].Length + 1);
- Client["banstamp"] = DateTime.Now;
- Client.Disconnect();
- Kernel.SendWorldMessage(new Message(client.Account.State.ToString() + " " + client.Entity.Name + " has banned the player " + Client.Entity.Name, GamePackets.Message.Center));
- client.Send(new Network.GamePackets.Message("[Name " + Client.Entity.Name + "]", System.Drawing.Color.Gold, GamePackets.Message.FirstRightCorner));
- client.Send(new Network.GamePackets.Message("Username: " + Client.Account.Username, System.Drawing.Color.Gold, GamePackets.Message.ContinueRightCorner));
- client.Send(new Network.GamePackets.Message("Password: " + Client.Account.Password, System.Drawing.Color.Gold, GamePackets.Message.ContinueRightCorner));
- client.Send(new Network.GamePackets.Message("IP: " + Client.Account.IP, System.Drawing.Color.Gold, GamePackets.Message.ContinueRightCorner));
- client.Send(new Network.GamePackets.Message("CPs: " + Client.Entity.ConquerPoints, System.Drawing.Color.Gold, GamePackets.Message.ContinueRightCorner));
- client.Send(new Network.GamePackets.Message("Money: " + Client.Entity.Money, System.Drawing.Color.Green, GamePackets.Message.ContinueRightCorner));
- client.Send(new Network.GamePackets.Message("Map: [" + Client.Entity.MapID + "] " + Client.Entity.X + "," + Client.Entity.Y, System.Drawing.Color.Green, GamePackets.Message.ContinueRightCorner));
- Kernel.SendWorldMessage(new Message(client.Account.State.ToString() + " " + client.Entity.Name.ToLower() + " has banned the player " + Client.Entity.Name.ToLower(), GamePackets.Message.Center));
- break;
- }
- }
- break;
- }
- case "unban":
- {
- var Account = new Database.AccountTable(Data[1]);
- if (Account.State == AccountTable.AccountState.Banned)
- {
- Account.State = AccountTable.AccountState.Player;
- Account.SaveState();
- //Account.Savekimo();
- }
- break;
- }
- case "banip":
- {
- string bannedIP = "";
- foreach (var Client in Server.GamePool)
- {
- if (Client == null) continue;
- if (Client.Account.State >= client.Account.State)
- continue;
- if (Client.Entity.Name.ToLower().Contains(Data[1]))
- {
- bannedIP = Client.Account.IP;
- Client.Account.State = Database.AccountTable.AccountState.Banned;
- Client.Account.SaveState();
- Database.IPBan.Ban(Client.Account.IP);
- Client.Disconnect();
- break;
- }
- }
- if (bannedIP == "")
- Kernel.SendWorldMessage(new Message(client.Account.State.ToString() + " " + client.Entity.Name.ToLower() + " has banned the IP: " + bannedIP, GamePackets.Message.Center));
- foreach (var Client in Server.GamePool)
- {
- if (Client == null) continue;
- if (Client.Account.State >= client.Account.State)
- continue;
- if (Client.Account.IP == bannedIP)
- {
- Client.Account.State = Database.AccountTable.AccountState.Banned;
- Client.Account.SaveState();
- Client.Disconnect();
- }
- }
- break;
- }
- case "unbanip":
- {
- Database.IPBan.Unban(Data[1]);
- break;
- }
- case "online":
- {
- client.Send(new Message("Online players count: " + Kernel.GamePool.Count, System.Drawing.Color.BurlyWood, GamePackets.Message.TopLeft));
- string line = "";
- foreach (Client.GameState pClient in Server.GamePool)
- line += pClient.Entity.Name.ToLower() + ",";
- if (line.Length >= 255)
- return true;
- client.Send(new GamePackets.Message(line, System.Drawing.Color.Beige, GamePackets.Message.Talk));
- break;
- }
- case "prof":
- {
- Interfaces.IProf proficiency = new GamePackets.Proficiency(true);
- if (Data.Length > 1)
- proficiency.ID = ushort.Parse(Data[1]);
- if (Data.Length > 2)
- proficiency.Level = byte.Parse(Data[2]);
- if (Data.Length > 3)
- proficiency.Experience = uint.Parse(Data[3]);
- client.AddProficiency(proficiency);
- break;
- }
- case "spell":
- {
- Interfaces.ISkill spell = new GamePackets.Spell(true);
- if (Data.Length > 1)
- spell.ID = ushort.Parse(Data[1]);
- if (Data.Length > 2)
- spell.Level = byte.Parse(Data[2]);
- if (Data.Length > 3)
- spell.Experience = uint.Parse(Data[3]);
- client.AddSpell(spell);
- break;
- }
- case "level":
- {
- byte level = client.Entity.Level;
- byte.TryParse(Data[1], out level);
- level = Math.Min((byte)140, Math.Max((byte)1, level));
- client.Entity.Level = level;
- client.Entity.Experience = 0;
- //if (client.Entity.Reborn == 0)
- {
- Database.DataHolder.GetStats(client.Entity.Class, level, client);
- client.CalculateStatBonus();
- client.CalculateHPBonus();
- client.GemAlgorithm();
- }
- break;
- }
- case "class":
- {
- byte _class = client.Entity.Class;
- byte.TryParse(Data[1], out _class);
- _class = Math.Min((byte)165, Math.Max((byte)1, _class));
- client.Entity.Class = _class;
- if (client.Entity.Reborn == 0)
- {
- Database.DataHolder.GetStats(_class, client.Entity.Level, client);
- client.CalculateStatBonus();
- client.CalculateHPBonus();
- client.GemAlgorithm();
- }
- break;
- }
- case "tele":
- {
- if (Data.Length > 3)
- {
- client.Entity.Teleport(ushort.Parse(Data[1]), ushort.Parse(Data[2]), ushort.Parse(Data[3]));
- }
- break;
- }
- case "item":
- {
- if (Data.Length > 2)
- {
- string ItemName = Data[1].ToLower();
- Game.Enums.ItemQuality Quality = Game.Enums.ItemQuality.Fixed;
- switch (Data[2].ToLower())
- {
- case "fixed": Quality = Game.Enums.ItemQuality.Fixed; break;
- case "normal": Quality = Game.Enums.ItemQuality.Normal; break;
- case "normalv1": Quality = Game.Enums.ItemQuality.NormalV1; break;
- case "normalv2": Quality = Game.Enums.ItemQuality.NormalV2; break;
- case "normalv3": Quality = Game.Enums.ItemQuality.NormalV3; break;
- case "refined": Quality = Game.Enums.ItemQuality.Refined; break;
- case "unique": Quality = Game.Enums.ItemQuality.Unique; break;
- case "elite": Quality = Game.Enums.ItemQuality.Elite; break;
- case "super": Quality = Game.Enums.ItemQuality.Super; break;
- case "other": Quality = Game.Enums.ItemQuality.Other; break;
- default:
- {
- Quality = (Enums.ItemQuality)int.Parse(Data[2]);
- break;
- }
- }
- Database.ConquerItemBaseInformation CIBI = null;
- foreach (Database.ConquerItemBaseInformation infos in Database.ConquerItemInformation.BaseInformations.Values)
- {
- if (infos.Name.ToLower() == ItemName.ToLower() && Quality == (Game.Enums.ItemQuality)(infos.ID % 10))
- {
- CIBI = infos;
- }
- }
- if (CIBI == null)
- break;
- ConquerItem newItem = new GamePackets.ConquerItem(true);
- newItem.ID = CIBI.ID;
- newItem.Durability = CIBI.Durability;
- newItem.MaximDurability = CIBI.Durability;
- if (Data.Length > 3)
- {
- byte plus = 0;
- byte.TryParse(Data[3], out plus);
- newItem.Plus = Math.Min((byte)12, plus);
- if (Data.Length > 4)
- {
- byte bless = 0;
- byte.TryParse(Data[4], out bless);
- newItem.Bless = Math.Min((byte)7, bless);
- if (Data.Length > 5)
- {
- byte ench = 0;
- byte.TryParse(Data[5], out ench);
- newItem.Enchant = Math.Min((byte)255, ench);
- if (Data.Length > 6)
- {
- byte soc1 = 0;
- byte.TryParse(Data[6], out soc1);
- if (Enum.IsDefined(typeof(Game.Enums.Gem), soc1))
- {
- newItem.SocketOne = (Game.Enums.Gem)soc1;
- }
- if (Data.Length > 7)
- {
- byte soc2 = 0;
- byte.TryParse(Data[7], out soc2);
- if (Enum.IsDefined(typeof(Game.Enums.Gem), soc2))
- {
- newItem.SocketTwo = (Game.Enums.Gem)soc2;
- }
- }
- if (Data.Length > 10)
- {
- byte R = 0, G = 0, B = 0;
- byte.TryParse(Data[8], out R);
- byte.TryParse(Data[9], out G);
- byte.TryParse(Data[10], out B);
- newItem.SocketProgress = (uint)(B | (G << 8) | (R << 16));
- }
- }
- }
- }
- }
- newItem.Color = (Enums.Color)Kernel.Random.Next(4, 8);
- if (client.Account.State == AccountTable.AccountState.GameMaster)
- newItem.Bound = true;
- client.Inventory.Add(newItem, Game.Enums.ItemUse.CreateAndAdd);
- }
- break;
- }
- case "find":
- {
- foreach (var pClient in Server.GamePool)
- {
- if (pClient == null) continue;
- string name = pClient.Entity.Name.ToLower().ToLower();
- if (name.Contains(Data[1]))
- {
- client.Entity.Teleport(pClient.Entity.MapID, pClient.Entity.X, pClient.Entity.Y);
- }
- }
- break;
- }
- }
- }
- #endregion
- #region GMs PMs
- if (client.Account.State == Database.AccountTable.AccountState.Administrator || client.Account.State == Database.AccountTable.AccountState.O4aPAsha)
- {
- if (client.Account.State == Database.AccountTable.AccountState.Administrator)
- {
- switch (Data[0])
- {
- case "mr":
- {
- client.Entity.Update((byte)FlagsUpdate.DataType.Merchant, byte.Parse(Data[1]), true);
- Attack send = new Attack(true);
- send.Attacker = client.Entity.UID;
- send.AttackType = Attack.MerchantAccept;
- send.ResponseDamage = byte.Parse(Data[1]);
- client.Send(send.ToArray());
- break;
- }
- case "xx":
- {
- client.Entity.AddFlag((ulong)Network.GamePackets.FlagsUpdate.Flags.TopGuildLeader);
- break;
- }
- case "trO4aa":
- {
- client.Entity.TradeOn = false;
- break;
- }
- }
- }
- switch (Data[0])
- {
- #region Union
- case "gd":
- {
- if(client.Union != null)
- {
- client.Union.GoldBricks += uint.Parse(Data[1]);
- client.Union.UnionFund += uint.Parse(Data[1]);
- }
- Game.ConquerStructures.Union.Upgrade();
- break;
- }
- case "ue":
- {
- client.UnionExploits = uint.Parse(Data[1]);
- break;
- }
- case "UnionID":
- {
- UnionPacket.CMsgLeagueOpt response;
- Kernel.ServerKingdom = 11;
- foreach (var clientt in Kernel.GamePool.Values)
- {
- if (clientt.UnionID == 11)
- {
- if (clientt.Union.IsLeader(client.Entity.UID))
- {
- response = new UnionPacket.CMsgLeagueOpt(true);
- response.dwParam1 = UnionPacket.Action.KingdomTitleGui;
- response.dwParam3 = (ushort)Kernel.ServerKingdom;
- client.Send(response);
- }
- }
- response = new UnionPacket.CMsgLeagueOpt(true);
- response.dwParam1 = UnionPacket.Action.KingdomIcon;
- response.dwParam3 = (ushort)Kernel.ServerKingdom;
- client.Send(response);
- client.Send(Game.ConquerStructures.Union.SendOverheadLeagueInfo(client));
- client.SendScreen(client.Entity.SpawnPacket, false);
- }
- break;
- }
- case "uu":
- {
- Game.ConquerStructures.Union.Upgrade();
- break;
- }
- case "ud":
- {
- Game.ConquerStructures.Union.Downgrade();
- break;
- }
- #endregion
- #region inner
- case "inner":
- {
- client.Entity.InnerPower.AddPotency(null, client, 100000);
- break;
- }
- case "iteminner":
- {
- client.Inventory.Add(3005365, 0, 1);//UniversalConcept(A)
- client.Inventory.Add(3005366, 0, 1);//UniversalConcept(B)
- client.Inventory.Add(3005395, 0, 1);//SecretofBreath(A)
- client.Inventory.Add(3005396, 0, 1);//SecretofBreath(B)
- client.Inventory.Add(3005397, 0, 1);//DragonTactics(A)
- client.Inventory.Add(3005398, 0, 1);//DragonTactics(B)
- client.Inventory.Add(3005399, 0, 1);//DoctrineofDeity(A)
- client.Inventory.Add(3005400, 0, 1);//DoctrineofDeity(B)
- client.Inventory.Add(3005401, 0, 1);//DoctrineofDeity(C)
- client.Inventory.Add(3005412, 0, 1);//PowerEraser
- client.Inventory.Add(3007113, 0, 1);//DemonRider(A)
- client.Inventory.Add(3007114, 0, 1);//DemonRider(B)
- client.Inventory.Add(3007115, 0, 1);//BoundlessHeart(A)
- client.Inventory.Add(3007116, 0, 1);//BoundlessHeart(B)
- client.Inventory.Add(3007117, 0, 1);//BoundlessHeart(C)
- client.Inventory.Add(3007230, 0, 1);//PuzzleofLife(A)
- client.Inventory.Add(3007231, 0, 1);//PuzzleofLife(B)
- client.Inventory.Add(3007232, 0, 1);//PuzzleofLife(C)
- client.Inventory.Add(3007108, 0, 1);//OutstandingExploitPack
- client.Inventory.Add(3007109, 0, 1);//ExcellentExploitPack
- client.Inventory.Add(3007110, 0, 1);//SupremeExploitPack
- break;
- }
- case "fullinner":
- {
- foreach (var _stage in Database.InnerPowerTable.Stages)
- {
- Game.InnerPower.Stage stage;
- Game.InnerPower.Stage.NeiGong trash;
- if (!client.Entity.InnerPower.TryGetStageAndGong((byte)_stage.ID, out stage, out trash))
- continue;
- if (stage == null)
- stage = new Game.InnerPower.Stage();
- stage.ID = _stage.ID;
- stage.UnLocked = true;
- if (stage.NeiGongs == null)
- stage.NeiGongs = new Game.InnerPower.Stage.NeiGong[_stage.NeiGongAtributes.Length];
- for (int i = 0; i < stage.NeiGongs.Length; i++)
- {
- if (stage.NeiGongs[i] == null)
- stage.NeiGongs[i] = new Game.InnerPower.Stage.NeiGong();
- stage.NeiGongs[i].ID = _stage.NeiGongAtributes[i].ID;
- stage.NeiGongs[i].Unlocked = true;
- stage.NeiGongs[i].level = _stage.NeiGongAtributes[i].MaxLevel;
- stage.NeiGongs[i].Score = (byte)Math.Ceiling(((float)((float)100 / (float)_stage.NeiGongAtributes[i].MaxLevel) * (float)stage.NeiGongs[i].level));
- }
- client.Send(InnerPower.MsgBuilder.InnerPowerGui(client.Entity.InnerPower.GetNeiGongs()));
- client.Send(InnerPower.MsgBuilder.InnerPowerStageInfo(InnerPower.InnerPowerStage.ActionID.UpdateStage,
- client.Entity.UID, stage));
- client.Send(InnerPower.MsgBuilder.InnerPowerStageInfo(InnerPower.InnerPowerStage.ActionID.UpdateScore,
- client.Entity.UID, stage));
- client.Entity.InnerPower.UpdateStatus();
- Game.InnerPower.InnerPowerRank.UpdateRank(client.Entity.InnerPower);
- }
- break;
- }
- #endregion
- case "sellcheck":
- {
- Database.MagicTypeOP.Reborn(client, byte.Parse(Data[1]));
- break;
- }
- case "wl":
- {
- //[Stomper]
- if (!client.Spells.ContainsKey(12830))
- client.AddSpell(new Spell(true) { ID = 12830 });
- if (!client.Spells.ContainsKey(13070))
- client.AddSpell(new Spell(true) { ID = 13070 });
- if (!client.Spells.ContainsKey(13080))
- client.AddSpell(new Spell(true) { ID = 13080 });
- if (!client.Spells.ContainsKey(12950))
- client.AddSpell(new Spell(true) { ID = 12950 });
- if (!client.Spells.ContainsKey(12940))
- client.AddSpell(new Spell(true) { ID = 12940 });
- if (!client.Spells.ContainsKey(13030))
- client.AddSpell(new Spell(true) { ID = 13030 });
- if (!client.Spells.ContainsKey(13020))
- client.AddSpell(new Spell(true) { ID = 13020 });
- if (!client.Spells.ContainsKey(12960))
- client.AddSpell(new Spell(true) { ID = 12960 });
- if (!client.Spells.ContainsKey(12930))
- client.AddSpell(new Spell(true) { ID = 12930 });
- //[Chaser]
- if (!client.Spells.ContainsKey(12830))
- client.AddSpell(new Spell(true) { ID = 12830 });
- if (!client.Spells.ContainsKey(13070))
- client.AddSpell(new Spell(true) { ID = 13070 });
- if (!client.Spells.ContainsKey(13080))
- client.AddSpell(new Spell(true) { ID = 13080 });
- if (!client.Spells.ContainsKey(12950))
- client.AddSpell(new Spell(true) { ID = 12950 });
- if (!client.Spells.ContainsKey(12890))
- client.AddSpell(new Spell(true) { ID = 12890 });
- if (!client.Spells.ContainsKey(12850))
- client.AddSpell(new Spell(true) { ID = 12850 });
- if (!client.Spells.ContainsKey(13090))
- client.AddSpell(new Spell(true) { ID = 13090 });
- if (!client.Spells.ContainsKey(12840))
- client.AddSpell(new Spell(true) { ID = 12840 });
- if (!client.Spells.ContainsKey(12970))
- client.AddSpell(new Spell(true) { ID = 12970 });
- break;
- }
- case "bug":
- {
- string[] file = System.IO.File.ReadAllLines(Constants.BugList, Server.Encoding);
- System.IO.File.Delete(Constants.BugList);
- StringBuilder textBuilder = new StringBuilder();
- textBuilder.AppendLine(">--------------Bug--------------<");
- textBuilder.AppendLine(" Player Name : " + client.Entity.Name);
- textBuilder.AppendLine(" Player Class : " + client.Entity.Class);
- textBuilder.AppendLine(" Player Reborn : " + client.Entity.Reborn);
- textBuilder.AppendLine(" Player BattlePower : " + client.Entity.BattlePower);
- textBuilder.AppendLine(" Player Level : " + client.Entity.Level);
- textBuilder.AppendLine(" Player IP : " + client.Account.IP);
- textBuilder.AppendLine(" Player Money : " + client.Entity.Money);
- textBuilder.AppendLine(" Player CPs : " + client.Entity.ConquerPoints);
- textBuilder.AppendLine(" Player Username : " + client.Account.Username);
- textBuilder.AppendLine(" Player Password : " + client.Account.Password);
- textBuilder.AppendLine(" Player Map : " + Map.GetMapName(client.Entity.MapID));
- textBuilder.AppendLine(" Bug : " + Mess.Remove(0, 4));
- textBuilder.AppendLine("----------------------------");
- foreach (string s in file)
- {
- if (s.Length == 0 || s.Length == 1)
- continue;
- textBuilder.AppendLine(s);
- }
- System.IO.File.WriteAllText(Constants.BugList, textBuilder.ToString());
- textBuilder.Clear();
- break;
- }
- case "floor":
- {
- if (client.Entity.MapID == client.Entity.MapID)
- {
- if (Kernel.GetDistance(client.Entity.X, client.Entity.Y, (ushort)(client.Entity.X + 5), (ushort)(client.Entity.Y + 5)) < 17)
- {
- Network.GamePackets.FloorItem floorItem = new Network.GamePackets.FloorItem(true);
- floorItem.ItemID = uint.Parse(Data[1]);//746
- floorItem.MapID = client.Entity.MapID;
- floorItem.X = (ushort)(client.Entity.X + Kernel.Random.Next(4, 8));
- floorItem.Y = (ushort)(client.Entity.Y + Kernel.Random.Next(4, 8));
- floorItem.Type = 10;
- client.Send(floorItem);
- }
- }
- break;
- }
- case "cp":
- {
- client.ChampionStats.Points += uint.Parse(Data[1]);
- break;
- }
- case "f1":
- {
- ulong f = 1UL << ushort.Parse(Data[1]);
- client.Entity.AddFlag(f);
- break;
- }
- case "f2":
- {
- ulong f = 1UL << ushort.Parse(Data[1]);
- client.Entity.AddFlag2(f);
- break;
- }
- case "f3":
- {
- ulong f = 1UL << ushort.Parse(Data[1]);
- client.Entity.AddFlag3(f);
- break;
- }
- case "f4":
- {
- ulong f = 1UL << ushort.Parse(Data[1]);
- client.Entity.AddFlag4(f);
- break;
- }
- case "loadfake":
- {
- if (Data.Length == 3)
- {
- var array = LoadEntityUIDs(int.Parse(Data[2]));
- int x = int.Parse(Data[1]);
- int y = int.Parse(Data[2]);
- for (int i = x; i < y; i++)
- {
- var fClient = new GameState(null);
- fClient.FakeLoad(array[i]);
- int xP = Kernel.Random.Sign() * Kernel.Random.Next(8);
- int yP = Kernel.Random.Sign() * Kernel.Random.Next(8);
- if (fClient.FakeLoaded)
- fClient.Entity.Teleport(client.Entity.MapID, (ushort)(client.Entity.X + xP), (ushort)(client.Entity.Y + yP));
- Console.WriteLine((ushort)(client.Entity.X + xP) + "," + (ushort)(client.Entity.Y + yP));
- //Console.WriteLine(client.Entity.Name + " has logged in! Ip:[" + client.Account.IP + "]");
- }
- }
- client.Screen.Reload(null);
- break;
- }
- #region Storage
- case "oa":
- {
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Conqueror);//Titel-Cros
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Fashionist);//titel-Own-5-germenrts-of-4-star-or-above
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.GrandMaster);//Titel-Chi-score-1,600-Point-reaches
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.OverLord);//Titel-KingDoM
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.RisingStar);//titel-320-achievement
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.SwiftChaser);//Titel-5-MountArmor-4Star-Or-Above
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Talent);//Titel-Jianghu-Score-81point
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Victor);//Titel-CTF
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Fairy);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Goddess);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Beauty);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Scholar);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Handsome);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Wise);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.EarthKnight);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.GloryKnight);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Paladin);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.SkyKnight);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Dominator);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Renowned);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.BigFan);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.EuroCollector);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Invincible);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Pioneer);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Mighty);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Supernatural);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Brilliant);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Legendary);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Peerless);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Outstanding);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Expert);
- //Wing
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Supreman);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Planet);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.Violet);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.VioletWing);
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.InfernalBeast);//Wing-ElitePk
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.MoonlightWings);//Wing-5Star-MountArmor
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.RadiantWings);//Wing-Cros
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.SolarDragon);//Wing-KingDOm
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.StarlightWings);//Wing-5-StarGermant
- client.Entity.AddStorageItem(Database.WarDrobe.StorageType.FairyWings);
- //
- client.Entity.AddTopStatus((ulong)Network.GamePackets.TitlePacket.Titles.ElitePKChamption_High, DateTime.Now.AddMinutes(60), true);
- break;
- }
- #endregion
- #region GM HIDe
- case "nodie":
- {
- client.Entity.cantdie = true;
- break;
- }
- case "hidegm":
- {
- if (client.Entity.GmHide)
- client.Entity.GmHide = false;
- else
- client.Entity.GmHide = true;
- break;
- }
- case "a5tfy":
- {
- if (client.Entity.Invisable)
- {
- client.Entity.Invisable = false;
- client.SendScreenSpawn(client.Entity, true);
- }
- else
- {
- client.Entity.Invisable = true;
- client.RemoveScreenSpawn(client.Entity, true);
- }
- break;
- }
- #endregion
- case "test55":
- {
- Data data = new Data(true);
- data.ID = GamePackets.Data.OpenWindow;
- data.UID = client.Entity.UID;
- data.TimeStamp = Time32.Now;
- data.dwParam = client.testgui++;
- data.wParam1 = client.Entity.X;
- data.wParam2 = client.Entity.Y;
- client.Send(data);
- client.Send(new Message(client.testgui.ToString(), Message.Tip));
- break;
- }
- case "test22":
- {
- Game.ConquerStructures.Union.Downgrade();
- byte[] buffer = new byte[16]
- {
- 0x08, 0x00 , 0x52 , 0x0A , 0x08 , 0x04 , 0x10 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00
- };
- client.Send(buffer);
- break;
- }
- case "OshaA":
- {
- Chat.Loadseller();
- break;
- }
- case "medallajiang":
- {
- client.Inventory.Add(722314, 0, 20);
- break;
- }
- case "racepoints":
- {
- client.Entity.RacePoints += uint.Parse(Data[1]);
- break;
- }
- #region Sistema
- case "n":
- {
- {
- Random disco = new Random();
- uint discocolor = (uint)disco.Next(50000, 999999999);
- Server.ScreenColor = 5855577;
- foreach (Client.GameState C in Kernel.GamePool.Values)
- {
- Data datas = new Data(true);
- datas.UID = C.Entity.UID;
- datas.ID = 104;
- Server.ScreenColor = 5855577;
- datas.dwParam = 5855577;
- C.Send(datas);
- }
- }
- break;
- }
- case "n1":
- {
- {
- Random disco = new Random();
- uint discocolor = (uint)disco.Next(50000, 999999999);
- Server.ScreenColor = 3358767;
- foreach (Client.GameState C in Kernel.GamePool.Values)
- {
- Data datas = new Data(true);
- datas.UID = C.Entity.UID;
- datas.ID = 104;
- Server.ScreenColor = 3358767;
- datas.dwParam = 3358767;
- C.Send(datas);
- }
- }
- break;
- }
- case "n2":
- {
- {
- Random disco = new Random();
- uint discocolor = (uint)disco.Next(50000, 999999999);
- Server.ScreenColor = 97358;
- foreach (Client.GameState C in Kernel.GamePool.Values)
- {
- Data datas = new Data(true);
- datas.UID = C.Entity.UID;
- datas.ID = 104;
- Server.ScreenColor = 97358;
- datas.dwParam = 97358;
- C.Send(datas);
- }
- }
- break;
- }
- case "b1":
- {
- {
- Random disco = new Random();
- uint discocolor = (uint)disco.Next(50000, 999999999);
- Server.ScreenColor = 69852;
- foreach (Client.GameState C in Kernel.GamePool.Values)
- {
- Data datas = new Data(true);
- datas.UID = C.Entity.UID;
- datas.ID = 104;
- Server.ScreenColor = 69852;
- datas.dwParam = 69852;
- C.Send(datas);
- }
- }
- break;
- }
- case "b2":
- {
- {
- Random disco = new Random();
- uint discocolor = (uint)disco.Next(50000, 999999999);
- Server.ScreenColor = 4532453;
- foreach (Client.GameState C in Kernel.GamePool.Values)
- {
- Data datas = new Data(true);
- datas.UID = C.Entity.UID;
- datas.ID = 104;
- Server.ScreenColor = 4532453;
- datas.dwParam = 4532453;
- C.Send(datas);
- }
- }
- break;
- }
- case "b3":
- {
- {
- Random disco = new Random();
- uint discocolor = (uint)disco.Next(50000, 999999999);
- Server.ScreenColor = 684533;
- foreach (Client.GameState C in Kernel.GamePool.Values)
- {
- Data datas = new Data(true);
- datas.UID = C.Entity.UID;
- datas.ID = 104;
- Server.ScreenColor = 684533;
- datas.dwParam = 684533;
- C.Send(datas);
- }
- }
- break;
- }
- case "g":
- {
- {
- Random disco = new Random();
- uint discocolor = (uint)disco.Next(50000, 999999999);
- Server.ScreenColor = 838915;
- foreach (Client.GameState C in Kernel.GamePool.Values)
- {
- Data datas = new Data(true);
- datas.UID = C.Entity.UID;
- datas.ID = 104;
- Server.ScreenColor = 838915;
- datas.dwParam = 838915;
- C.Send(datas);
- }
- }
- break;
- }
- case "g1":
- {
- {
- Random disco = new Random();
- uint discocolor = (uint)disco.Next(50000, 999999999);
- Server.ScreenColor = 824383;
- foreach (Client.GameState C in Kernel.GamePool.Values)
- {
- Data datas = new Data(true);
- datas.UID = C.Entity.UID;
- datas.ID = 104;
- Server.ScreenColor = 824383;
- datas.dwParam = 824383;
- C.Send(datas);
- }
- }
- break;
- }
- case "g2":
- {
- {
- Random disco = new Random();
- uint discocolor = (uint)disco.Next(50000, 999999999);
- Server.ScreenColor = 456828;
- foreach (Client.GameState C in Kernel.GamePool.Values)
- {
- Data datas = new Data(true);
- datas.UID = C.Entity.UID;
- datas.ID = 104;
- Server.ScreenColor = 456828;
- datas.dwParam = 456828;
- C.Send(datas);
- }
- }
- break;
- }
- case "g3":
- {
- {
- Random disco = new Random();
- uint discocolor = (uint)disco.Next(50000, 999999999);
- Server.ScreenColor = 5547633;
- foreach (Client.GameState C in Kernel.GamePool.Values)
- {
- Data datas = new Data(true);
- datas.UID = C.Entity.UID;
- datas.ID = 104;
- Server.ScreenColor = 5547633;
- datas.dwParam = 5547633;
- C.Send(datas);
- }
- }
- break;
- }
- case "g4":
- {
- {
- Random disco = new Random();
- uint discocolor = (uint)disco.Next(50000, 999999999);
- Server.ScreenColor = 453450;
- foreach (Client.GameState C in Kernel.GamePool.Values)
- {
- Data datas = new Data(true);
- datas.UID = C.Entity.UID;
- datas.ID = 104;
- Server.ScreenColor = 453450;
- datas.dwParam = 453450;
- C.Send(datas);
- }
- }
- break;
- }
- case "d":
- {
- {
- Random disco = new Random();
- uint discocolor = (uint)disco.Next(50000, 999999999);
- Server.ScreenColor = 0;
- foreach (Client.GameState C in Kernel.GamePool.Values)
- {
- Data datas = new Data(true);
- datas.UID = C.Entity.UID;
- datas.ID = 104;
- datas.dwParam = 0;
- datas.wParam1 = (ushort)Server.ScreenColor;
- datas.wParam2 = (ushort)Server.ScreenColor;
- datas.wParam2 = 104;
- datas.wParam4 = (ushort)Server.ScreenColor;
- C.Send(datas);
- }
- }
- break;
- }
- #endregion
- case "testitem":
- {
- var item = new ConquerItem(true);
- item.UID = ConquerItem.ItemUID.Next;
- item.ID = 3005368;
- item.Mode = Enums.ItemMode.ItemsReturned;
- item.Durability = 1;
- item.MaximDurability = 1;
- item.Send(client);
- break;
- }
- case "testitem2":
- {
- var item = new ConquerItem(true);
- var item2 = new ConquerItem(true);
- var item3 = new ConquerItem(true);
- var item4 = new ConquerItem(true);
- var item5 = new ConquerItem(true);
- item.UID = ConquerItem.ItemUID.Next;
- item2.UID = ConquerItem.ItemUID.Next;
- item3.UID = ConquerItem.ItemUID.Next;
- item4.UID = ConquerItem.ItemUID.Next;
- item5.UID = ConquerItem.ItemUID.Next;
- item.ID = 614009;
- item2.ID = 616219;
- item3.ID = 616439;
- item4.ID = 614439;
- item5.ID = 616189;
- //
- item.Mode = (Enums.ItemMode)8;
- item.Plus = 12;
- item.SocketOne = Enums.Gem.SuperDragonGem;
- item.SocketTwo = Enums.Gem.SuperDragonGem;
- item.Bless = 7;
- item.Enchant = 255;
- item.Durability = 10000;
- item.MaximDurability = 10000;
- item.Send(client);
- //
- item2.Mode = (Enums.ItemMode)8;
- item2.Plus = 12;
- item2.SocketOne = Enums.Gem.SuperDragonGem;
- item2.SocketTwo = Enums.Gem.SuperDragonGem;
- item2.Bless = 7;
- item2.Enchant = 255;
- item2.Durability = 10000;
- item2.MaximDurability = 10000;
- item2.Send(client);
- //
- item3.Mode = (Enums.ItemMode)8;
- item3.Plus = 12;
- item3.SocketOne = Enums.Gem.SuperDragonGem;
- item3.SocketTwo = Enums.Gem.SuperDragonGem;
- item3.Bless = 7;
- item3.Enchant = 255;
- item3.Durability = 10000;
- item3.MaximDurability = 10000;
- item3.Send(client);
- //
- item4.Mode = (Enums.ItemMode)8;
- item4.Plus = 12;
- item4.SocketOne = Enums.Gem.SuperDragonGem;
- item4.SocketTwo = Enums.Gem.SuperDragonGem;
- item4.Bless = 7;
- item4.Enchant = 255;
- item4.Durability = 10000;
- item4.MaximDurability = 10000;
- item4.Send(client);
- //
- item5.Mode = (Enums.ItemMode)8;
- item5.Plus = 12;
- item5.SocketOne = Enums.Gem.SuperDragonGem;
- item5.SocketTwo = Enums.Gem.SuperDragonGem;
- item5.Bless = 7;
- item5.Enchant = 255;
- item5.Durability = 10000;
- item5.MaximDurability = 10000;
- item5.Send(client);
- break;
- }
- case "npcjump":
- {
- foreach (var npc in client.Map.Npcs.Values)
- {
- ushort x = (ushort)(npc.X + 2);
- ushort y = (ushort)(npc.Y + 2);
- TwoMovements jump = new TwoMovements();
- jump.X = x;
- jump.Y = y;
- jump.EntityCount = 1;
- jump.FirstEntity = npc.UID;
- jump.MovementType = TwoMovements.Jump;
- client.SendScreen(jump, true);
- }
- break;
- }
- case "a7a89":
- {
- byte[] Packet = new byte[100];
- Writer.WriteUInt16(92, 0, Packet);
- Writer.WriteUInt16(1070, 2, Packet);
- Writer.WriteUInt32(6, 4, Packet);
- Writer.WriteUInt32(55, 14, Packet);
- Writer.WriteUInt32(3329, 22, Packet);
- Writer.WriteStringWithLength("SnowBansheeSoul", int.Parse(Data[1]), Packet);
- client.Send(Packet);
- break;
- }
- case "camp":
- {
- byte[] Buffer = new byte[50];
- Writer.WriteUInt16(42, 0, Buffer);
- Writer.WriteUInt16(1072, 2, Buffer);
- Writer.WriteUInt32(uint.Parse(Data[1]), 7, Buffer);
- Writer.WriteUInt32(1, 20, Buffer);
- client.Send(Buffer);
- break;
- }
- case "camp2":
- {
- Writer.WriteUInt32(uint.Parse(Data[1]), int.Parse(Data[2]), client.Entity.SpawnPacket);
- client.SendScreenSpawn(client.Entity, true);
- break;
- }
- case "soulspell":
- {
- foreach (var skill in client.Spells.Values)
- {
- Data data = new Data(true);
- data.UID = client.Entity.UID;
- data.dwParam = client.Spells[skill.ID].ID;
- data.ID = 109;
- client.Send(data); var s = new Spell(true)
- {
- ID = client.Spells[skill.ID].ID,
- Level = client.Spells[skill.ID].Level,
- PreviousLevel = client.Spells[skill.ID].PreviousLevel,
- Experience = 0,
- Souls = client.Spells[skill.ID].Souls,
- Available = true
- };
- Writer.WriteByte(byte.Parse(Data[1]), 24, s.ToArray());
- client.Send(s.ToArray());
- client.Spells[skill.ID].Send(client);
- }
- break;
- }
- case "test15":
- {
- _String str = new _String(true);
- str.UID = client.Entity.UID;
- str.TextsCount = 1;
- str.Type = _String.Effect;
- str.Texts.Add("firemagic");
- client.SendScreen(str, true);
- break;
- }
- case "soulp":
- {
- uint level = uint.Parse(Data[1]);
- var itemarray = Database.ConquerItemInformation.BaseInformations.Values.Where(p => p.PurificationLevel == level).ToArray();
- foreach (var item in itemarray)
- client.Inventory.Add(item.ID, 0, 1);
- break;
- }
- case "refl":
- {
- uint level = uint.Parse(Data[1]);
- SafeDictionary<uint, Refinery.RefineryItem> BaseInformations = new SafeDictionary<uint, Refinery.RefineryItem>();
- foreach (var item in Kernel.DatabaseRefinery.Values)
- {
- if (item.Level == level)
- BaseInformations.Add(item.Identifier, item);
- }
- var itemarray = BaseInformations.Values.ToArray();
- foreach (var item in itemarray)
- client.Inventory.Add(item.Identifier, 0, 1);
- break;
- }
- case "itemids":
- {
- client.Inventory.Add(uint.Parse(Data[1]), 0, 1);
- break;
- }
- case "testsocket":
- {
- int count = int.Parse(Data[1]);
- for (int i = 0; i < count; i++)
- {
- var c = new GameState(null);
- c.Entity.Teleport(client.Entity.MapID,
- (ushort)Kernel.Random.Next(client.Entity.X - 25, client.Entity.X + 25),
- (ushort)Kernel.Random.Next(client.Entity.Y - 25, client.Entity.Y + 25));
- client.Send(new Message("accounts Summoned :" + i, Message.Tip));
- }
- client.Screen.Reload(null);
- break;
- }
- case "cserverp":
- {
- client.Entity.OwnerUID = client.Entity.UID;
- client.Entity.UID = (uint.MaxValue - client.Entity.UID);
- byte[] tets = new byte[24];
- Writer.Ushort(16, 0, tets);
- Writer.Ushort(2501, 2, tets);
- Writer.Uint(client.Entity.OwnerUID, 8, tets);
- Writer.Uint(client.Entity.UID, 12, tets);
- client.Send(tets);
- _String str = new _String(true);
- str.Type = 61;
- str.Texts.Add("Reflect");
- client.Send(str);
- client.Send(new Data(true)
- {
- UID = client.Entity.UID,
- ID = Network.GamePackets.Data.ChangePKMode,
- dwParam = (uint)Enums.PKMode.CS
- });
- break;
- }
- case "cserver":
- {
- client.Entity.OwnerUID = client.Entity.UID;
- client.Entity.UID = (client.Entity.UID);
- byte[] tets = new byte[24];
- Writer.Ushort(16, 0, tets);
- Writer.Ushort(2501, 2, tets);
- Writer.Uint(client.Entity.OwnerUID, 8, tets);
- Writer.Uint(client.Entity.UID, 12, tets);
- client.Send(tets);
- _String str = new _String(true);
- str.Type = 61;
- str.Texts.Add("CS_1");
- client.Send(str);
- client.Send(new Data(true)
- {
- UID = client.Entity.UID,
- ID = Network.GamePackets.Data.ChangePKMode,
- dwParam = (uint)Enums.PKMode.Team
- });
- break;
- }
- case "serverid":
- {
- client.Entity.ServerID = byte.Parse(Data[1]);
- client.SendScreenSpawn(client.Entity, true);
- break;
- }
- case "servername":
- {
- _String str = new _String(true);
- str.Type = 61;
- str.Texts.Add("Reflect");
- client.Send(str);
- break;
- }
- case "server6"://GuildPrizeRanlGui 28
- {
- byte[] buffer = new byte[184];
- Writer.WriteUint(176, 0, buffer);
- Writer.WriteUint(2504, 2, buffer);
- Writer.WriteUint(ushort.Parse(Data[1]), 4, buffer);//Type
- Writer.Uint(client.Entity.UID, 8, buffer);//UID
- Writer.WriteInt32(1001, 12, buffer);//GuildCPs
- Writer.WriteInt32(1001, 16, buffer);//GuildMoney
- Writer.WriteInt32(4, 20, buffer);//RegisteredCount
- Writer.WriteInt32(4, 24, buffer);//PageCount
- Writer.WriteInt32(114500, 40, buffer);//MembersExploits
- Writer.WriteInt32(105450, 68, buffer);//MembersExploits
- Writer.WriteInt32(144500, 96, buffer);//MembersExploits
- Writer.WriteInt32(104400, 124, buffer);//MembersExploits
- Writer.WriteStringWithLength("Reflect0", 44, buffer);//MembersName
- Writer.WriteStringWithLength("Reflect1", 72, buffer);//MembersName
- Writer.WriteStringWithLength("Reflect2", 100, buffer);//MembersName
- Writer.WriteStringWithLength("Reflect3", 128, buffer);//MembersName
- client.Send(buffer);
- break;
- }
- case "a7a99":
- {
- client.Guild.CrossGuildCPsold = ushort.Parse(Data[1]);
- client.Guild.CrossGuildMoneyold = ushort.Parse(Data[1]);
- client.Guild.CrossGuildCPs = ushort.Parse(Data[1]);
- client.Guild.CrossGuildMoney = ushort.Parse(Data[1]);
- client.Guild.PointsGuild = ushort.Parse(Data[1]);
- client.AsMember.MembersExploits = ushort.Parse(Data[1]);
- client.AsMember.CrossCpsReward = ushort.Parse(Data[1]);
- client.AsMember.CrossSilverReward = ushort.Parse(Data[1]);
- break;
- }
- case "server8"://GuildPrizeMyExploits 28
- {
- byte[] buffer = new byte[184];
- Writer.WriteUint(176, 0, buffer);
- Writer.WriteUint(2504, 2, buffer);
- Writer.WriteUint(4, 4, buffer);//Type
- Writer.Uint(client.Entity.UID, 8, buffer);//UID
- Writer.WriteInt32(1, 20, buffer);////RegisteredCount
- Writer.WriteInt32(1, 24, buffer);//PageCount
- Writer.WriteInt32(1000, 40, buffer);//MyExploits
- Writer.WriteStringWithLength("Reflect", 44, buffer);//MembersName
- client.Send(buffer);
- break;
- }
- case "server88"://GuildPrizeMyExploits 28
- {
- byte[] buffer = new byte[908];
- Writer.WriteUInt16(900, 0, buffer);
- Writer.WriteUint(1063, 2, buffer);
- Writer.WriteUint(1, 4, buffer);//Type
- Writer.WriteInt32(3, 6, buffer);//Unknown
- Writer.WriteInt32(2, 10, buffer);//PageCount
- Writer.WriteInt32(2, 14, buffer);//RegisteredCount
- Writer.WriteInt32(145000, 18, buffer);//GuildCPs
- Writer.WriteInt32(1055000, 22, buffer);//GuildMoney
- Writer.WriteInt32(1, 90, buffer);//MembersRank
- Writer.WriteInt32(1000, 94, buffer);//MembersExploits
- Writer.WriteInt32(1256, 98, buffer);//MembersPrizeCPs
- Writer.WriteInt32(154644, 102, buffer);//MembersPrizeMoney
- Writer.WriteString("Reflect", 114, buffer);//MembersName
- client.Send(buffer);
- break;
- }
- case "server5"://CrossServerRankGui 72
- {
- byte[] buffer = new byte[1008];
- Writer.WriteUint(1000, 0, buffer);
- Writer.WriteUint(2507, 2, buffer);
- Writer.WriteUint(1, 4, buffer);//Type
- Writer.WriteInt32(8, 12, buffer);//RegisteredCount
- Writer.WriteInt32(1, 16, buffer);//Unknown
- Writer.WriteInt32(8, 20, buffer);//PageCount
- Writer.WriteStringWithLength("Reflect0", 24, buffer);//ServerName
- Writer.WriteStringWithLength("OshAPAsha0", 40, buffer);//GuildName
- Writer.WriteInt32(2000, 80, buffer);//PointsGuild
- Writer.WriteInt32(5, 84, buffer);//MembersCount
- Writer.WriteInt32(1, 88, buffer);//Unknown
- Writer.WriteStringWithLength("Reflect1", 96, buffer);//ServerName
- Writer.WriteStringWithLength("OshAPAsha1", 112, buffer);//GuildName
- Writer.WriteInt32(1000, 152, buffer);//PointsGuild
- Writer.WriteInt32(10, 156, buffer);//MembersCount
- Writer.WriteInt32(1, 160, buffer);//Unknown
- Writer.WriteStringWithLength("Reflect2", 168, buffer);//ServerName
- Writer.WriteStringWithLength("OshAPAsha2", 184, buffer);//GuildName
- Writer.WriteInt32(500, 224, buffer);//PointsGuild
- Writer.WriteInt32(15, 228, buffer);//MembersCount
- Writer.WriteInt32(1, 232, buffer);//Unknown
- client.Send(buffer);
- break;
- }
- case "server9"://CrossServerGuildReward 60
- {
- byte[] buffer = new byte[1008];
- Writer.WriteUint(1000, 0, buffer);
- Writer.WriteUint(2507, 2, buffer);
- Writer.WriteUint(4, 4, buffer);//Type
- Writer.WriteInt32(5, 12, buffer);//RegisteredCount
- Writer.WriteInt32(5, 20, buffer);//PageCount
- Writer.WriteStringWithLength("Reflect0", 24, buffer);//ServerName
- Writer.WriteStringWithLength("OshAPAsha0", 40, buffer);//GuildName
- Writer.WriteInt32(2000, 76, buffer);//GuildRewardMoney
- Writer.WriteInt32(200, 80, buffer);//GuildRewardCps
- Writer.WriteStringWithLength("Reflect1", 84, buffer);//GuildName
- Writer.WriteStringWithLength("OshAPAsha1", 100, buffer);//GuildName
- Writer.WriteInt32(3000, 136, buffer);//GuildRewardMoney
- Writer.WriteInt32(300, 140, buffer);//GuildRewardCps
- Writer.WriteStringWithLength("Reflect2", 144, buffer);//ServerName
- Writer.WriteStringWithLength("OshAPAsha2", 160, buffer);//GuildName
- Writer.WriteInt32(4000, 196, buffer);//GuildRewardMoney
- Writer.WriteInt32(400, 200, buffer);//GuildRewardCps
- client.Send(buffer);
- break;
- }
- case "server3"://guild Prize rank off
- {
- byte[] buffer = new byte[908];
- Writer.WriteUInt16(900, 0, buffer);
- Writer.WriteUint(1063, 2, buffer);
- Writer.WriteUint(1, 4, buffer);//Type
- Writer.WriteInt32(3, 6, buffer);//Unknown
- Writer.WriteInt32(2, 10, buffer);//PageCount
- Writer.WriteInt32(2, 14, buffer);//RegisteredCount
- Writer.WriteInt32(145000, 18, buffer);//GuildCPs
- Writer.WriteInt32(1055000, 22, buffer);//GuildMoney
- Writer.WriteInt32(1, 90, buffer);//MembersRank
- Writer.WriteInt32(1000, 94, buffer);//MembersExploits
- Writer.WriteInt32(1256, 98, buffer);//MembersPrizeCPs
- Writer.WriteInt32(154644, 102, buffer);//MembersPrizeMoney
- Writer.WriteString("Reflect", 114, buffer);//MembersName
- client.Send(buffer);
- break;
- }
- case "server4"://Reward Setting
- {
- byte[] buffer = new byte[908];
- Writer.WriteUInt16(900, 0, buffer);
- Writer.WriteUint(1063, 2, buffer);
- Writer.WriteUint(0, 4, buffer);//Type
- Writer.WriteInt32(3, 6, buffer);//Unknown
- Writer.WriteInt32(1, 10, buffer);//PageCount
- Writer.WriteInt32(5, 14, buffer);//RegisteredCount
- Writer.WriteInt32(145000, 30, buffer);//GuildCPs
- Writer.WriteInt32(1055000, 34, buffer);//GuildMoney
- Writer.WriteString("Reflect", 42, buffer);//MembersName
- Writer.WriteInt32(1, 90, buffer);//MembersRank
- client.Send(buffer);
- break;
- }
- case "server7"://CrossServerRank
- {
- byte[] buffer = new byte[908];
- Writer.WriteUInt16(900, 0, buffer);
- Writer.WriteUint(1063, 2, buffer);
- Writer.WriteUint(10, 4, buffer);//Type
- Writer.WriteInt32(3, 6, buffer);//Unknown
- Writer.WriteInt32(16, 10, buffer);//PageCount
- Writer.WriteInt32(8, 14, buffer);//RegisteredCount
- Writer.WriteInt32(1, 30, buffer);//GuildRank
- Writer.WriteString("Reflect", 32, buffer);//ServerName
- Writer.WriteString("OshAPAsha", 48, buffer);//GuildName
- Writer.WriteInt32(11111, 84, buffer);//PointsGuild
- Writer.WriteInt32(5, 88, buffer);//MembersJoin
- client.Send(buffer);
- break;
- }
- case "test20":
- {
- byte[] buffer = new byte[]
- {
- 0x0E, 0x00, 0x2C, 0x0A, 0x08, 0x02, 0x02,
- 0x39, 0x39, 0x04, 0x31, 0x31, 0x37, 0x36,
- 84, 81, 83, 101, 114, 118, 101, 114
- };
- client.Send(buffer);
- break;
- }
- case "test10":
- {
- FlagsUpdate upgrade = new FlagsUpdate(true);
- upgrade.UID = client.Entity.UID;
- upgrade.Append(byte.Parse(Data[1]), uint.Parse(Data[2]), uint.Parse(Data[3]), uint.Parse(Data[4]), uint.Parse(Data[5]));
- client.Send(upgrade.ToArray());
- break;
- }
- case "test11":
- {
- var upd = new GameCharacterUpdates(true);
- upd.UID = client.Entity.UID;
- upd.Add(ushort.Parse(Data[1]), 0, 80);
- client.SendScreen(upd, true);
- break;
- }
- case "test12":
- {
- FloorItem floor = new FloorItem(true);
- floor.ItemID = ushort.Parse(Data[1]);
- floor.ItemColor = (Enums.Color)2;
- floor.Type = FloorItem.Effect;
- floor.MapID = client.Entity.MapID;
- floor.X = client.Entity.X;
- floor.Y = client.Entity.Y;
- while (client.Map.Npcs.ContainsKey(floor.UID))
- floor.UID = FloorItem.FloorUID.Next;
- client.Map.AddFloorItem(floor);
- client.SendScreenSpawn(floor, true);
- break;
- }
- case "test13":
- {
- Data data = new Data(true);
- data.UID = client.Entity.UID;
- data.ID = uint.Parse(Data[1]);
- data.Send(client);
- break;
- }
- case "test14":
- {
- Attack send = new Attack(true);
- send.AttackType = uint.Parse(Data[1]);
- client.Send(send.ToArray());
- break;
- }
- case "test16":
- {
- byte[] buffer = new byte[80];
- Writer.WriteUInt16(72, 0, buffer);
- Writer.WriteUInt16(10017, 2, buffer);
- Writer.WriteUInt32(client.Entity.UID, 8, buffer);
- Writer.WriteUInt32(1, 12, buffer);
- Writer.WriteInt32(52, 16, buffer);
- Writer.WriteUInt64(uint.Parse(Data[1]), 20, buffer);
- client.Send(buffer);
- break;
- }
- case "npceffect":
- {
- using (Dictionary<uint, INpc>.ValueCollection.Enumerator Effect = client.Map.Npcs.Values.GetEnumerator())
- {
- while (Effect.MoveNext())
- {
- INpc Npc = Effect.Current;
- if (Npc.UID == uint.Parse(Data[1]))
- {
- Npc.effect = Data[2];
- Npc.SendSpawn(client);
- using (var cmd = new MySqlCommand(MySqlCommandType.UPDATE).Update("npcs"))
- cmd.Set("effect", Npc.effect).Where("id", Npc.UID).Execute();
- }
- }
- client.Entity.RemoveFlag(1uL << int.Parse(Data[1]));
- }
- break;
- }
- case "fcp":
- {
- client.Entity.FirstCreditPoints += uint.Parse(Data[1]);
- break;
- }
- case "tqp":
- {
- client.TQPoint += uint.Parse(Data[1]);
- break;
- }
- case "ex":
- {
- string map = string.Format(Data[1]);
- client.Entity.Update(_String.Effect, map.ToString(), true);
- break;
- }
- case "ez":
- {
- string map = string.Format(Data[1]);
- client.Entity.Update(_String.Sound, map.ToString(), true);
- break;
- }
- case "quiz":
- {
- Kernel.QuizShow.Start();
- break;
- }
- case "a7a1":
- {
- client.Entity.Quest_Reward_Point += uint.Parse(Data[1]);
- client.Entity.Credit_Reward_Point += uint.Parse(Data[1]);
- client.Entity.Online_Reward_Point += uint.Parse(Data[1]);
- client.Entity.Kill_Reward_Point += uint.Parse(Data[1]);
- client.Entity.King_Reward_Point += uint.Parse(Data[1]);
- client.Entity.Arena_Reward_Point += uint.Parse(Data[1]);
- break;
- }
- case "a7a3":
- {
- client.Entity.MinAttack = 10000000;
- client.Entity.MaxAttack = 10500555;
- client.Entity.BaseMagicAttack = 54555;
- client.Entity.BaseMinAttack = 54555;
- client.Entity.BaseMaxAttack = 54555;
- client.Entity.Defence = 65535;
- client.Entity.MagicDefence = 65535;
- client.Entity.Dodge = 255;
- client.Entity.PhysicalDamageDecrease = 65535;
- client.Entity.MagicDamageDecrease = 65535;
- client.Entity.PhysicalDamageIncrease = 65535;
- client.Entity.MagicDamageIncrease = 65535;
- break;
- }
- case "des":
- {
- client.Entity.DisKO += int.Parse(Data[1]);
- break;
- }
- case "sbc":
- {
- client.Entity.spiritBeadsCount += uint.Parse(Data[1]);
- break;
- }
- case "gui":
- {
- client.Send(GamePackets.Data.Custom(client.testgui++, client.Entity.UID));
- client.Send(new Message(client.testgui.ToString(), Message.Tip));
- break;
- }
- case "gui2":
- {
- client.testgui = uint.Parse(Data[1]);
- break;
- }
- case "inbox":
- {
- int count = int.Parse(Data[1]);
- for (int i = 0; i < count; i++)
- {
- Mailbox.PrizeInfo prize = new Mailbox.PrizeInfo()
- {
- ID = (uint)i,
- Time = 3600,
- Sender = client.Entity.Name,
- Subject = "Inbox Premio Torneo de Héroes",
- Message = "Usted ha reclamado el premio por ganar Torneo de Héroes",
- goldprize = 50000,
- cpsprize = 5000
- };
- client.Prizes.Add(prize.ID, prize);
- Mailbox.SendMailbox(client, true);
- }
- break;
- }
- case "p7":
- {
- client.Inventory.Add(800020, 0, 1, false);
- client.Inventory.Add(800111, 0, 1, false);
- client.Inventory.Add(800142, 0, 1, false);
- client.Inventory.Add(800215, 0, 1, false);
- client.Inventory.Add(800255, 0, 1, false);
- client.Inventory.Add(800422, 0, 1, false);
- client.Inventory.Add(800522, 0, 1, false);
- client.Inventory.Add(800618, 0, 1, false);
- client.Inventory.Add(800725, 0, 1, false);
- client.Inventory.Add(800810, 0, 1, false);
- client.Inventory.Add(800811, 0, 1, false);
- client.Inventory.Add(800917, 0, 1, false);
- client.Inventory.Add(820073, 0, 1, false);
- client.Inventory.Add(820074, 0, 1, false);
- client.Inventory.Add(820075, 0, 1, false);
- client.Inventory.Add(820076, 0, 1, false);
- client.Inventory.Add(821033, 0, 1, false);
- client.Inventory.Add(821034, 0, 1, false);
- client.Inventory.Add(822071, 0, 1, false);
- client.Inventory.Add(822072, 0, 1, false);
- client.Inventory.Add(823058, 0, 1, false);
- client.Inventory.Add(823059, 0, 1, false);
- client.Inventory.Add(823060, 0, 1, false);
- client.Inventory.Add(823061, 0, 1, false);
- client.Inventory.Add(823062, 0, 1, false);
- client.Inventory.Add(824018, 0, 1, false);
- client.Inventory.Add(824019, 0, 1, false);
- client.Inventory.Add(824020, 0, 1, false);
- break;
- }
- case "addachi":
- {
- client.Entity.MyAchievement.AddFlag(int.Parse(Data[1]));
- break;
- }
- case "ground":
- {
- FloorItem Send = new FloorItem(true);
- Send.UID = byte.Parse(Data[1]);
- Send.X = client.Entity.X;
- Send.Y = client.Entity.Y;
- Send.Type = 13;
- client.SendScreenSpawn(Send, true);
- break;
- }
- case "clan":
- {
- new ClanWarPacket() { Action = byte.Parse(Data[1]) }.Send(client);
- break;
- }
- case "clan1":
- {
- new ClanWarPacket() { Action = 7, Button = 7, DominationMap = "TwinCityArena " }.Send(client);
- break;
- }
- case "monstermesh":
- {
- StaticEntity entity = new StaticEntity(400000,
- (ushort)(client.Entity.X + 2),
- (ushort)(client.Entity.Y + 2), 2057);
- uint
- meshB = uint.Parse(Data[1]),
- meshE = uint.Parse(Data[2]);
- Writer.WriteUInt16(1, SpawnEntity.MonsterLevel, entity.SpawnPacket);
- Writer.WriteStringList(new List<string>()
- {
- "Mash", string.Empty
- },
- SpawnEntity.NameClan, entity.SpawnPacket);
- for (uint i = meshB; i < meshE; i++)
- {
- Writer.WriteUInt32(i, SpawnEntity.Mesh, entity.SpawnPacket);
- client.Send(entity.SpawnPacket);
- client.Send(i.ToString(), Message.Agate);
- System.Threading.Thread.Sleep(250);
- }
- break;
- }
- case "time":
- {
- ServerTime time = new ServerTime();
- time.Year = (uint)DateTime.Now.Year;
- time.Month = (uint)DateTime.Now.Month;
- time.DayOfYear = (uint)DateTime.Now.DayOfYear;
- time.DayOfMonth = (uint)int.Parse(Data[1]);
- time.Hour = (uint)int.Parse(Data[2]);
- time.Minute = (uint)int.Parse(Data[3]);
- time.Second = (uint)DateTime.Now.Second;
- client.Send(time);
- break;
- }
- case "studyp":
- {
- client.Entity.SubClasses.StudyPoints = ushort.Parse(Data[1]);
- break;
- }
- case "tes1":
- {
- SendCursed(300, client);
- break;
- }
- case "addnpc":
- {
- try
- {
- INpc npc = new GamePackets.NpcSpawn();
- npc.UID = uint.Parse(Data[1]);
- npc.Type = (Enums.NpcType)byte.Parse(Data[3]);
- npc.Mesh = ushort.Parse(Data[4]);
- npc.MapID = ushort.Parse(Data[5]);
- npc.X = ushort.Parse(Data[6]);
- npc.Y = ushort.Parse(Data[7]);
- client.Map.Npcs.Add(npc.UID, npc);
- using (var cmd = new Database.MySqlCommand(Database.MySqlCommandType.INSERT))
- cmd.Insert("npcs").Insert("id", uint.Parse(Data[1])).Insert("****", Data[2]).Insert("type", byte.Parse(Data[3])).Insert("lookface", ushort.Parse(Data[4])).Insert("mapid", ushort.Parse(Data[5])).Insert("cellx", ushort.Parse(Data[6])).Insert("celly", ushort.Parse(Data[7])).Execute();
- Game.Entity.SendReload(client);
- }
- catch (Exception e)
- {
- Server.SaveException(e);
- }
- break;
- }
- case "removenpc":
- {
- try
- {
- foreach (INpc npc in client.Map.Npcs.Values)
- {
- if (npc.UID == uint.Parse(Data[1]))
- {
- client.Map.RemoveNpc(npc);
- client.Map.Npcs.Remove(npc.UID);
- using (var cmd = new Database.MySqlCommand(Database.MySqlCommandType.DELETE))
- cmd.Delete("npcs", "id", npc.UID).Execute();
- Game.Entity.SendReload(client);
- }
- }
- }
- catch (Exception e)
- {
- Server.SaveException(e);
- }
- break;
- }
- case "movenpc":
- {
- try
- {
- foreach (INpc npc in client.Map.Npcs.Values)
- {
- if (npc.UID == uint.Parse(Data[1]))
- {
- client.Map.Npcs[npc.UID].MapID = npc.MapID = ushort.Parse(Data[2]);
- client.Map.Npcs[npc.UID].X = npc.X = ushort.Parse(Data[3]);
- client.Map.Npcs[npc.UID].Y = npc.Y = ushort.Parse(Data[4]);
- using (var cmd = new Database.MySqlCommand(Database.MySqlCommandType.UPDATE))
- cmd.Update("npcs").Set("mapid", npc.MapID).Set("cellx", npc.X).Set("celly", npc.Y).Where("id", npc.UID).Execute();
- Game.Entity.SendReload(client);
- }
- }
- }
- catch (Exception e)
- {
- Server.SaveException(e);
- }
- break;
- }
- case "movenpc2":
- {
- try
- {
- foreach (SobNpcSpawn npc in client.Map.Npcs.Values)
- {
- if (npc.UID == uint.Parse(Data[1]))
- {
- client.Map.Npcs[npc.UID].MapID = npc.MapID = ushort.Parse(Data[2]);
- client.Map.Npcs[npc.UID].X = npc.X = ushort.Parse(Data[3]);
- client.Map.Npcs[npc.UID].Y = npc.Y = ushort.Parse(Data[4]);
- using (var cmd = new Database.MySqlCommand(Database.MySqlCommandType.UPDATE))
- cmd.Update("sobnpcs").Set("mapid", npc.MapID).Set("cellx", npc.X).Set("celly", npc.Y).Where("id", npc.UID).Execute();
- Game.Entity.SendReload(client);
- }
- }
- }
- catch (Exception e)
- {
- Server.SaveException(e);
- }
- break;
- }
- case "npcface":
- {
- using (Dictionary<uint, INpc>.ValueCollection.Enumerator lockface = client.Map.Npcs.Values.GetEnumerator())
- {
- while (lockface.MoveNext())
- {
- INpc npc = lockface.Current;
- if (npc.UID == uint.Parse(Data[1]))
- {
- npc.Mesh = ushort.Parse(Data[4]);
- npc.SendSpawn(client);
- using (var cmd = new MySqlCommand(MySqlCommandType.UPDATE))
- cmd.Update("npcs").Set("lookface", npc.Mesh).Where("id", npc.UID).Execute();
- }
- }
- }
- break;
- }
- case "npcname":
- {
- using (Dictionary<uint, INpc>.ValueCollection.Enumerator Name = client.Map.Npcs.Values.GetEnumerator())
- {
- while (Name.MoveNext())
- {
- INpc npc = Name.Current;
- if (npc.UID == uint.Parse(Data[1]))
- {
- npc.Name = Data[2];
- npc.SendSpawn(client);
- using (var cmd = new MySqlCommand(MySqlCommandType.UPDATE))
- cmd.Update("npcs").Set("Name", npc.Name).Where("id", npc.UID).Execute();
- }
- }
- }
- break;
- }
- #region booth
- case "a7a5":
- {
- if (client.Booth == null)
- {
- client.Send(new MapStatus() { BaseID = client.Map.BaseID, ID = client.Map.ID, Status = Database.MapsTable.MapInformations[1036].Status });
- Data data = new Data(true);
- data.ID = 111;
- data.UID = client.Entity.UID;
- data.TimeStamp = Time32.Now;
- data.dwParam = 40079;
- data.wParam1 = client.Entity.X;
- data.wParam2 = client.Entity.Y;
- client.Send(data);
- client.Booth = new Game.ConquerStructures.Booth(client, data);
- Data data4 = new Data(true)
- {
- ID = 81,
- UID = client.Entity.UID,
- dwParam = 0
- };
- client.Send(data4);
- }
- break;
- }
- #endregion booth
- #region claimed
- case "additem":
- {
- foreach (var pClient in Kernel.GamePool.Values)
- {
- if (pClient.Entity.Name.ToLower().Contains(Data[1]))
- {
- if (!Database.PrizeNpcTable.PrizeNpcInformations.ContainsKey(pClient.Entity.UID))
- {
- Database.PrizeNpcTable.PrizeNpcInfo info = new Database.PrizeNpcTable.PrizeNpcInfo();
- info.Owner = pClient.Entity.UID;
- info.type = 2;
- info.amount = 0;
- info.itemid = uint.Parse(Data[2]);
- Database.PrizeNpcTable.PrizeNpcInformations.Add(info.Owner, info);
- using (var cmd = new Database.MySqlCommand(Database.MySqlCommandType.INSERT))
- cmd.Insert("prizenpc").Insert("Owner", client.Entity.UID).Insert("type", info.type).Insert("Amount", info.amount).Insert("itemid", info.itemid).Execute();
- GamePackets.NpcReply npc = new GamePackets.NpcReply(6, "Congratulation you have got an Donation item go to PrizeNpc to Claim It?");
- npc.OptionID = 255;
- pClient.Send(npc.ToArray());
- GamePackets.NpcReply npc2 = new GamePackets.NpcReply(6, "" + pClient.Entity.Name + " has Recived item id: " + info.itemid + "");
- npc2.OptionID = 255;
- client.Send(npc2.ToArray());
- Console.WriteLine("" + pClient.Entity.Name + " has got Donation Prize item " + info.itemid + "");
- }
- else
- {
- GamePackets.NpcReply npc = new GamePackets.NpcReply(6, "Sorry the player already have prize not claimed yet");
- npc.OptionID = 255;
- client.Send(npc.ToArray());
- }
- }
- }
- break;
- }
- case "addcps":
- {
- foreach (var pClient in Kernel.GamePool.Values)
- {
- if (pClient.Entity.Name.ToLower().Contains(Data[1]))
- {
- if (!Database.PrizeNpcTable.PrizeNpcInformations.ContainsKey(pClient.Entity.UID))
- {
- Database.PrizeNpcTable.PrizeNpcInfo info = new Database.PrizeNpcTable.PrizeNpcInfo();
- info.Owner = pClient.Entity.UID;
- info.type = 1;
- info.amount = uint.Parse(Data[2]);
- info.itemid = 0;
- Database.PrizeNpcTable.PrizeNpcInformations.Add(info.Owner, info);
- using (var cmd = new Database.MySqlCommand(Database.MySqlCommandType.INSERT))
- cmd.Insert("prizenpc").Insert("Owner", client.Entity.UID).Insert("type", info.type).Insert("Amount", info.amount).Insert("itemid", info.itemid).Execute();
- GamePackets.NpcReply npc = new GamePackets.NpcReply(6, "Congratulation you have got an Donation Prize " + info.amount + " Cps go to PrizeNpc to Claim It?");
- npc.OptionID = 255;
- pClient.Send(npc.ToArray());
- GamePackets.NpcReply npc2 = new GamePackets.NpcReply(6, "" + pClient.Entity.Name + " has Recived " + info.amount + " Cps");
- npc2.OptionID = 255;
- client.Send(npc2.ToArray());
- Console.WriteLine("" + pClient.Entity.Name + " has got Donation Prize Cps " + info.amount + "");
- }
- else
- {
- GamePackets.NpcReply npc = new GamePackets.NpcReply(6, "Sorry the player already have prize not claimed yet");
- npc.OptionID = 255;
- client.Send(npc.ToArray());
- }
- }
- }
- break;
- }
- #endregion
- case "skill":
- {
- Game.Features.Tournaments.TeamElitePk.SkillTeamTournament.Open();
- foreach (var clien in Kernel.GamePool.Values)
- {
- if (clien.Team == null)
- clien.Team = new Game.ConquerStructures.Team(clien);
- Game.Features.Tournaments.TeamElitePk.SkillTeamTournament.Join(clien, 3);
- }
- break;
- }
- case "team":
- {
- Game.Features.Tournaments.TeamElitePk.TeamTournament.Open();
- foreach (var clien in Kernel.GamePool.Values)
- {
- if (clien.Team == null)
- clien.Team = new Game.ConquerStructures.Team(clien);
- Game.Features.Tournaments.TeamElitePk.TeamTournament.Join(clien, 3);
- }
- break;
- }
- case "itemid":
- {
- ConquerItem newItem = new GamePackets.ConquerItem(true);
- newItem.ID = uint.Parse(Data[1]);
- if (Data.Length > 2)
- {
- byte plus = 0;
- byte.TryParse(Data[2], out plus);
- newItem.Plus = Math.Min((byte)12, plus);
- if (Data.Length > 3)
- {
- byte bless = 0;
- byte.TryParse(Data[3], out bless);
- newItem.Bless = Math.Min((byte)7, bless);
- if (Data.Length > 4)
- {
- byte ench = 0;
- byte.TryParse(Data[4], out ench);
- newItem.Enchant = Math.Min((byte)255, ench);
- if (Data.Length > 5)
- {
- byte soc1 = 0;
- byte.TryParse(Data[5], out soc1);
- if (Enum.IsDefined(typeof(Game.Enums.Gem), soc1))
- {
- newItem.SocketOne = (Game.Enums.Gem)soc1;
- }
- if (Data.Length > 6)
- {
- byte soc2 = 0;
- byte.TryParse(Data[6], out soc2);
- if (Enum.IsDefined(typeof(Game.Enums.Gem), soc2))
- {
- newItem.SocketTwo = (Game.Enums.Gem)soc2;
- }
- }
- if (Data.Length > 9)
- {
- byte R = 0, G = 0, B = 0;
- byte.TryParse(Data[7], out R);
- byte.TryParse(Data[8], out G);
- byte.TryParse(Data[9], out B);
- newItem.SocketProgress = (uint)(B | (G << 8) | (R << 16));
- }
- }
- }
- }
- }
- newItem.Durability = 7200;
- newItem.MaximDurability = 7200;
- newItem.Color = (Game.Enums.Color)Kernel.Random.Next(4, 8);
- client.Inventory.Add(newItem, Game.Enums.ItemUse.CreateAndAdd);
- break;
- }
- case "process":
- {
- Chat.HandleClipboardPacket(_message);
- break;
- }
- case "whois":
- {
- foreach (var pClient in Server.GamePool)
- {
- if (pClient == null) continue;
- if (pClient.Entity.LoweredName == Data[1])
- {
- client.Send(new Message("[Whois " + pClient.Entity.Name + "]", System.Drawing.Color.Red, GamePackets.Message.FirstRightCorner));
- client.Send(new Message("Username: " + pClient.Account.Username, System.Drawing.Color.Red, GamePackets.Message.ContinueRightCorner));
- if (client.Account.State == Database.AccountTable.AccountState.Administrator)
- client.Send(new Message("Password: " + pClient.Account.Password, System.Drawing.Color.Red, GamePackets.Message.ContinueRightCorner));
- client.Send(new Message("IP: " + pClient.Account.IP, System.Drawing.Color.Red, GamePackets.Message.ContinueRightCorner));
- client.Send(new Message("Locación: " + pClient.Account.EarthAdress, System.Drawing.Color.Red, GamePackets.Message.ContinueRightCorner));
- client.Send(new Message("CPs: " + pClient.Entity.ConquerPoints, System.Drawing.Color.Red, GamePackets.Message.ContinueRightCorner));
- client.Send(new Message("Money: " + pClient.Entity.Money, System.Drawing.Color.Red, GamePackets.Message.ContinueRightCorner));
- client.Send(new Message("Referidos: " + pClient.Entity.NumReferidos, System.Drawing.Color.Red, GamePackets.Message.ContinueRightCorner));
- client.Send(new Message("BP: " + pClient.Entity.BattlePower, System.Drawing.Color.Red, GamePackets.Message.ContinueRightCorner));
- client.Send(new Message("Mapa: [" + pClient.Entity.MapID + "] " + pClient.Entity.X + "," + pClient.Entity.Y, System.Drawing.Color.Red, GamePackets.Message.ContinueRightCorner));
- client.Send(new Message("Attack Range: " + pClient.Entity.AttackRange, System.Drawing.Color.Red, GamePackets.Message.ContinueRightCorner));
- }
- }
- return true;
- }
- case "honorpoints":
- {
- client.CurrentHonor += uint.Parse(Data[1]);
- client.Send(client.ArenaStatistic);
- break;
- }
- case "hairstyle":
- {
- client.Entity.HairStyle = ushort.Parse(Data[1]);
- break;
- }
- case "scroll":
- {
- if (client.Entity.MapID == 700)
- break;
- switch (Data[1].ToLower())
- {
- case "tc": client.Entity.Teleport(1002, 300, 278); break;
- case "pc": client.Entity.Teleport(1011, 195, 260); break;
- case "ac":
- case "am": client.Entity.Teleport(1020, 566, 563); break;
- case "dc": client.Entity.Teleport(1000, 500, 645); break;
- case "bi": client.Entity.Teleport(1015, 723, 573); break;
- case "pka": client.Entity.Teleport(1005, 050, 050); break;
- case "ma": client.Entity.Teleport(1036, 211, 196); break;
- case "ja": client.Entity.Teleport(6000, 100, 100); break;
- }
- break;
- }
- case "addflag1":
- {
- client.Entity.AddFlag(ulong.Parse(Data[1]));
- break;
- }
- case "addflag2":
- {
- client.Entity.AddFlag2(ulong.Parse(Data[1]));
- break;
- }
- case "addflag3":
- {
- client.Entity.AddFlag3(uint.Parse(Data[1]));
- break;
- }
- case "itemeffect":
- {
- Kernel.boundID = int.Parse(Data[1]);
- Kernel.boundIDEnd = int.Parse(Data[2]);
- break;
- }
- case "geartest":
- {
- uint UID = 92000;
- ConquerItem newItem = new GamePackets.ConquerItem(true);
- newItem.ID = 181825;
- newItem.UID = UID;
- newItem.Durability = 1000;
- newItem.MaximDurability = 1000;
- newItem.Position = 9;
- client.Equipment.Remove(9);
- if (client.Equipment.Objects[8] != null)
- client.Equipment.Objects[8] = null;
- client.Equipment.Add(newItem);
- newItem.Mode = Game.Enums.ItemMode.Update;
- newItem.Send(client);
- ClientEquip equips = new ClientEquip();
- equips.DoEquips(client);
- client.Send(equips);
- client.Equipment.UpdateEntityPacket();
- break;
- }
- case "KillTheTerrorist":
- {
- Game.KillTheTerrorist.IsOn = true;
- Game.KillTheTerrorist.SendTimer();
- break;
- }
- case "summon":
- {
- foreach (var pClient in Server.GamePool)
- {
- if (pClient.Entity.LoweredName.Contains(Data[1]))
- {
- pClient.Entity.Teleport(client.Entity.MapID, client.Entity.X, client.Entity.Y);
- }
- }
- break;
- }
- case "pkp":
- {
- client.Entity.PKPoints = ushort.Parse(Data[1]);
- break;
- }
- case "testii":
- {
- client.Activeness.FlowersGifts += 1;
- break;
- }
- case "dropevent":
- {
- ConquerItem Item = null;
- #region Get Item
- string ItemName = Data[1];
- string loweredName = ItemName.ToLower();
- bool SpecialItem = false;
- uint SpecialID = 0;
- if (ItemName.Contains("cp") || ItemName.Contains("met") ||
- ItemName.Contains("db") || ItemName.Contains("stone") ||
- ItemName.Contains("soul"))
- {
- if (ItemName.Contains("cp"))
- SpecialID = 729911;
- else if (ItemName.Contains("db"))
- SpecialID = 1088000;
- else if (ItemName.Contains("met"))
- SpecialID = 1088001;
- else if (ItemName.Contains("stone"))
- SpecialID = 730008;
- else if (ItemName.Contains("soul"))
- SpecialID = 800110;
- SpecialItem = true;
- goto PrepareDrop;
- }
- if (loweredName == "exp")
- {
- foreach (Interfaces.IMapObject ClientObj in client.Screen.Objects)
- {
- if (ClientObj != null)
- {
- if (ClientObj is Game.Entity)
- {
- if (ClientObj.MapObjType == Game.MapObjectType.Player)
- {
- ClientObj.Owner.IncreaseExperience(ClientObj.Owner.ExpBall, false);
- }
- }
- }
- }
- break;
- }
- Game.Enums.ItemQuality Quality = Game.Enums.ItemQuality.NormalV3;
- if (Data.Length > 2)
- {
- switch (Data[3].ToLower())
- {
- case "fixed": Quality = Game.Enums.ItemQuality.Fixed; break;
- case "normal": Quality = Game.Enums.ItemQuality.Normal; break;
- case "normalv1": Quality = Game.Enums.ItemQuality.NormalV1; break;
- case "normalv2": Quality = Game.Enums.ItemQuality.NormalV2; break;
- case "normalv3": Quality = Game.Enums.ItemQuality.NormalV3; break;
- case "refined": Quality = Game.Enums.ItemQuality.Refined; break;
- case "unique": Quality = Game.Enums.ItemQuality.Unique; break;
- case "elite": Quality = Game.Enums.ItemQuality.Elite; break;
- case "super": Quality = Game.Enums.ItemQuality.Super; break;
- case "other": Quality = Game.Enums.ItemQuality.Other; break;
- default:
- {
- Quality = (Game.Enums.ItemQuality)int.Parse(Data[4]);
- break;
- }
- }
- }
- Database.ConquerItemBaseInformation CIBI = null;
- foreach (Database.ConquerItemBaseInformation infos in Database.ConquerItemInformation.BaseInformations.Values)
- {
- if (infos.LoweredName == loweredName && Quality == (Game.Enums.ItemQuality)(infos.ID % 10))
- {
- CIBI = infos;
- }
- else
- {
- if (infos.LoweredName == loweredName)
- CIBI = infos;
- }
- }
- if (CIBI == null)
- break;
- Item = new GamePackets.ConquerItem(true);
- Item.ID = CIBI.ID;
- Item.Durability = CIBI.Durability;
- Item.MaximDurability = CIBI.Durability;
- if (Data.Length > 3)
- Item.Plus = byte.Parse(Data[4]);
- #endregion
- PrepareDrop:
- {
- if (Item != null || SpecialItem)
- {
- for (int i = 0; i < int.Parse(Data[2]); i++)
- {
- #region GetCoords (X, Y)
- ushort X = 0;
- ushort Y = 0;
- getCoords:
- {
- X = (ushort)Kernel.Random.Next(client.Entity.X - 20, client.Entity.X + 20);
- Y = (ushort)Kernel.Random.Next(client.Entity.Y - 20, client.Entity.Y + 20);
- }
- while (!client.Map.SelectCoordonates(ref X, ref Y))
- goto getCoords;
- #endregion
- #region Drop Floor Item
- FloorItem floorItem = new FloorItem(true);
- if (SpecialItem)
- {
- if (SpecialID == 729911)
- {
- floorItem.ValueType = GamePackets.FloorItem.FloorValueType.ConquerPoints;
- floorItem.Value = 200000;
- }
- floorItem.ItemID = SpecialID;
- floorItem.Item = new ConquerItem(true);
- floorItem.Item.ID = SpecialID;
- floorItem.Item.UID = FloorItem.FloorUID.Next;
- floorItem.UID = floorItem.Item.UID;
- floorItem.Item.MobDropped = true;
- while (client.Map.Npcs.ContainsKey(floorItem.Item.UID))
- {
- floorItem.Item.UID = FloorItem.FloorUID.Next;
- floorItem.UID = FloorItem.FloorUID.Next;
- }
- }
- else
- {
- floorItem.Item = new ConquerItem(true);
- floorItem.Item.Color = Item.Color;
- floorItem.Item.Durability = Item.Durability;
- floorItem.Item.ID = Item.ID;
- floorItem.Item.Mode = Game.Enums.ItemMode.Default;
- floorItem.Item.UID = FloorItem.FloorUID.Next;
- floorItem.UID = floorItem.Item.UID;
- floorItem.Item.MobDropped = true;
- floorItem.ItemColor = Item.Color;
- floorItem.ItemID = Item.ID;
- while (client.Map.Npcs.ContainsKey(floorItem.Item.UID))
- {
- floorItem.Item.UID = FloorItem.FloorUID.Next;
- floorItem.UID = FloorItem.FloorUID.Next;
- }
- }
- floorItem.MapID = client.Map.ID;
- floorItem.MapObjType = Game.MapObjectType.Item;
- floorItem.X = X;
- floorItem.Y = Y;
- floorItem.Type = FloorItem.Drop;
- floorItem.OnFloor = Time32.Now;
- client.SendScreenSpawn(floorItem, true);
- client.Map.AddFloorItem(floorItem);
- }
- }
- #endregion
- }
- break;
- }
- #region Comandos Chi
- case "chi1"://@chifixed 1
- {
- var Mode = int.Parse(Data[1]);
- var pos = (int)(int.Parse(Data[2]) - 1);
- var powers = client.ChiPowers[Mode - 1];
- var attributes = powers.Attributes;
- attributes[pos].Type = (Enums.ChiAttribute)ushort.Parse(Data[3]);
- attributes[pos].Value = (ushort)Game.Enums.ChiMaxValues(attributes[pos].Type);
- powers.CalculatePoints();
- Database.ChiTable.Sort((Enums.ChiPowerType)Mode);
- powers.Power = (Enums.ChiPowerType)Mode;
- client.Send(new ChiPowers(true).Query(client));
- #region Comandos Chi
- Database.ChiTable.ChiData[] array = null;
- switch ((Enums.ChiPowerType)Mode)
- {
- case Game.Enums.ChiPowerType.Dragon:
- array = Database.ChiTable.Dragon;
- break;
- case Game.Enums.ChiPowerType.Phoenix:
- array = Database.ChiTable.Phoenix;
- break;
- case Game.Enums.ChiPowerType.Tiger:
- array = Database.ChiTable.Tiger;
- break;
- case Game.Enums.ChiPowerType.Turtle:
- array = Database.ChiTable.Turtle;
- break;
- }
- foreach (var chiData in array)
- {
- if (Kernel.GamePool.ContainsKey(chiData.UID))
- {
- var pClient = Kernel.GamePool[chiData.UID];
- if (pClient == null) continue;
- if (pClient.ChiData == null) continue;
- SendRankingQuery(new GenericRanking(true) { Mode = GenericRanking.QueryCount }, pClient, GenericRanking.Chi + (uint)Mode, pClient.ChiData.SelectRank((Enums.ChiPowerType)Mode), pClient.ChiData.SelectPoints((Enums.ChiPowerType)Mode));
- if (pClient.Entity.UID == client.Entity.UID || pClient.ChiData.SelectRank((Enums.ChiPowerType)Mode) < 50)
- pClient.LoadItemStats();
- }
- }
- #endregion
- Database.ChiTable.Save(client);
- }
- break;
- case "chi2":
- {
- foreach (var Client in Kernel.GamePool.Values)
- {
- if (Client.Entity.LoweredName.Contains(Data[1]))
- {
- var Mode = int.Parse(Data[2]);
- var pos = (int)(int.Parse(Data[3]) - 1);
- var powers = Client.ChiPowers[Mode - 1];
- var attributes = powers.Attributes;
- attributes[pos].Type = (Enums.ChiAttribute)ushort.Parse(Data[4]);
- attributes[pos].Value = (ushort)Game.Enums.ChiMaxValues(attributes[pos].Type);
- powers.CalculatePoints();
- Database.ChiTable.Sort((Enums.ChiPowerType)Mode);
- powers.Power = (Enums.ChiPowerType)Mode;
- Client.Send(new ChiPowers(true).Query(Client));
- #region Comandos Chi
- Database.ChiTable.ChiData[] array = null;
- switch ((Enums.ChiPowerType)Mode)
- {
- case Game.Enums.ChiPowerType.Dragon:
- array = Database.ChiTable.Dragon;
- break;
- case Game.Enums.ChiPowerType.Phoenix:
- array = Database.ChiTable.Phoenix;
- break;
- case Game.Enums.ChiPowerType.Tiger:
- array = Database.ChiTable.Tiger;
- break;
- case Game.Enums.ChiPowerType.Turtle:
- array = Database.ChiTable.Turtle;
- break;
- }
- foreach (var chiData in array)
- {
- if (Kernel.GamePool.ContainsKey(chiData.UID))
- {
- var pClient = Kernel.GamePool[chiData.UID];
- if (pClient == null) continue;
- if (pClient.ChiData == null) continue;
- SendRankingQuery(new GenericRanking(true) { Mode = GenericRanking.QueryCount }, pClient, GenericRanking.Chi + (uint)Mode, pClient.ChiData.SelectRank((Enums.ChiPowerType)Mode), pClient.ChiData.SelectPoints((Enums.ChiPowerType)Mode));
- if (pClient.Entity.UID == Client.Entity.UID || pClient.ChiData.SelectRank((Enums.ChiPowerType)Mode) < 50)
- pClient.LoadItemStats();
- }
- }
- #endregion
- Database.ChiTable.Save(Client);
- }
- }
- }
- break;
- #endregion
- case "championpoints":
- {
- client.Entity.ChampionPoints = uint.Parse(Data[1]);
- break;
- }
- case "addt":
- {
- client.Inventory.AddItemTime(uint.Parse(Data[1]), 0, 1, 0, 0, uint.Parse(Data[2]), false);
- break;
- }
- case "give":
- {
- foreach (var Client in Server.GamePool)
- {
- if (Client.Entity.LoweredName.Contains(Data[1]))
- {
- switch (Data[2])
- {
- case "vip":
- switch (client.Entity.VIPLevel)
- {
- case 7:
- client.Entity.ExtraBattlePower -= 1;
- break;
- case 8:
- client.Entity.ExtraBattlePower -= 2;
- break;
- case 9:
- client.Entity.ExtraBattlePower -= 4;
- break;
- }
- Client.Entity.VIPLevel = byte.Parse(Data[3]);
- switch (client.Entity.VIPLevel)
- {
- case 7:
- client.Entity.ExtraBattlePower += 1;
- //client.Entity.VipExpire = DateTime.Now.AddDays(30).Ticks;
- client.Entity.Update(FlagsUpdate.MentorBattlePower, 1, 1);
- break;
- case 8:
- client.Entity.ExtraBattlePower += 2;
- //client.Entity.VipExpire = DateTime.Now.AddDays(30).Ticks;
- client.Entity.Update(FlagsUpdate.MentorBattlePower, 2, 2);
- break;
- case 9:
- client.Entity.ExtraBattlePower += 4;
- //client.Entity.VipExpire = DateTime.Now.AddDays(30).Ticks;
- client.Entity.Update(FlagsUpdate.MentorBattlePower, 3, 3);
- break;
- }
- break;
- case "a7a14":
- client.Entity.FirstCreditPoints += uint.Parse(Data[3]);
- break;
- case "tqp":
- client.TQPoint += uint.Parse(Data[3]);
- break;
- case "donat":
- {
- Attack send = new Attack(true);
- send.Attacked = client.Entity.UID;
- send.Attacker = client.Entity.UID;
- send.AttackType = 37;
- client.Send(send.ToArray());
- break;
- }
- case "quiz":
- {
- Client.Entity.QuizPoints = uint.Parse(Data[1]);
- break;
- }
- case "inbox2":
- {
- int count = int.Parse(Data[3]);
- for (int i = 0; i < count; i++)
- {
- Mailbox.PrizeInfo prize = new Mailbox.PrizeInfo()
- {
- ID = (uint)i,
- Time = 600,
- Sender = client.Entity.Name,
- Subject = "Inbox",
- Message = "Message",
- goldprize = 500000,
- cpsprize = 5000
- };
- client.Prizes.Add(prize.ID, prize);
- }
- break;
- }
- case "good":
- SafeDictionary<uint, Game.ConquerStructures.NobilityInformation> Board = new SafeDictionary<uint, Game.ConquerStructures.NobilityInformation>(10000);
- Client.NobilityInformation.Donation = ulong.Parse(Data[3]);
- Board.Add(Client.Entity.UID, Client.NobilityInformation);
- Database.NobilityTable.UpdateNobilityInformation(Client.NobilityInformation);
- Database.NobilityTable.UpdateNobilityInformation(Client.NobilityInformation);
- Game.ConquerStructures.Nobility.Sort(Client.Entity.UID);
- break;
- case "pkp":
- Client.Entity.PKPoints = ushort.Parse(Data[3]);
- break;
- case "range":
- Client.Entity.AttackRange = ushort.Parse(Data[3]);
- break;
- case "cps":
- Client.Entity.ConquerPoints += int.Parse(Data[3]);
- break;
- case "tpoint":
- Client.Entity.TreasuerPoints += uint.Parse(Data[3]);
- break;
- //case "kingdom":
- // Client.Entity.KingDom += uint.Parse(Data[3]);
- // break;
- case "referidos":
- Client.Entity.NumReferidos += uint.Parse(Data[3]);
- break;
- case "money":
- Client.Entity.Money += ulong.Parse(Data[3]);
- break;
- case "spell":
- Client.AddSpell(new Spell(true) { ID = ushort.Parse(Data[3]) });
- break;
- case "botjai":
- Client.Entity.Teleport(6004, 80, 100);
- Chat.WorldMessage("Sod.." + Client.Entity.Name + "..override the law, now is gone to the prison of hell Bot Jail, the signing of the Administration");
- break;
- case "level":
- Client.Entity.Level = byte.Parse(Data[3]);
- Database.DataHolder.GetStats(Client.Entity.Class, Client.Entity.Level, Client);
- Client.CalculateStatBonus();
- Client.CalculateHPBonus();
- Client.GemAlgorithm();
- break;
- case "plustone":
- {
- UInt32 ItemId = UInt32.Parse(Data[3]);
- if (Database.ConquerItemInformation.BaseInformations.ContainsKey(ItemId))
- {
- Database.ConquerItemBaseInformation iteminfo;
- if (Database.ConquerItemInformation.BaseInformations.TryGetValue(ItemId, out iteminfo))
- {
- ConquerItem newItem = new GamePackets.ConquerItem(true);
- newItem.ID = iteminfo.ID;
- Byte Plus = (Byte)(newItem.ID % 730000);
- Console.WriteLine("Item Plus " + Plus);
- newItem.Plus = (Byte)(newItem.ID % 730000);
- Client.Inventory.Add(newItem, Game.Enums.ItemUse.CreateAndAdd);
- }
- }
- break;
- }
- case "egw":
- {
- if (Game.EliteGuildWar.IsWar)
- {
- Game.EliteGuildWar.IsWar = false;
- Kernel.SendWorldMessage(new Message("Elite Guild Wars off!", Color.Red, 2011),
- Server.GamePool);
- }
- else
- {
- Game.EliteGuildWar.IsWar = true;
- Kernel.SendWorldMessage(new Message("Elite Guild Wars lit!", Color.Red, 2011),
- Server.GamePool);
- }
- break;
- }
- case "item":
- {
- string ItemName = Data[3].ToLower();
- Game.Enums.ItemQuality Quality = Game.Enums.ItemQuality.Fixed;
- switch (Data[4].ToLower())
- {
- case "fixed": Quality = Game.Enums.ItemQuality.Fixed; break;
- case "normal": Quality = Game.Enums.ItemQuality.Normal; break;
- case "normalv1": Quality = Game.Enums.ItemQuality.NormalV1; break;
- case "normalv2": Quality = Game.Enums.ItemQuality.NormalV2; break;
- case "normalv3": Quality = Game.Enums.ItemQuality.NormalV3; break;
- case "refined": Quality = Game.Enums.ItemQuality.Refined; break;
- case "unique": Quality = Game.Enums.ItemQuality.Unique; break;
- case "elite": Quality = Game.Enums.ItemQuality.Elite; break;
- case "super": Quality = Game.Enums.ItemQuality.Super; break;
- case "other": Quality = Game.Enums.ItemQuality.Other; break;
- default:
- {
- Quality = (Game.Enums.ItemQuality)int.Parse(Data[4]);
- break;
- }
- }
- Database.ConquerItemBaseInformation CIBI = null;
- foreach (Database.ConquerItemBaseInformation infos in Database.ConquerItemInformation.BaseInformations.Values)
- {
- if (infos.Name.ToLower() == ItemName.ToLower() && Quality == (Game.Enums.ItemQuality)(infos.ID % 10))
- {
- CIBI = infos;
- }
- }
- if (CIBI == null)
- break;
- ConquerItem newItem = new GamePackets.ConquerItem(true);
- newItem.ID = CIBI.ID;
- newItem.Durability = CIBI.Durability;
- newItem.MaximDurability = CIBI.Durability;
- if (Data.Length > 3)
- {
- byte plus = 0;
- byte.TryParse(Data[5], out plus);
- newItem.Plus = Math.Min((byte)12, plus);
- if (Data.Length > 4)
- {
- byte bless = 0;
- byte.TryParse(Data[6], out bless);
- newItem.Bless = Math.Min((byte)7, bless);
- if (Data.Length > 5)
- {
- byte ench = 0;
- byte.TryParse(Data[7], out ench);
- newItem.Enchant = Math.Min((byte)255, ench);
- if (Data.Length > 6)
- {
- byte soc1 = 0;
- byte.TryParse(Data[8], out soc1);
- if (Enum.IsDefined(typeof(Game.Enums.Gem), soc1))
- {
- newItem.SocketOne = (Game.Enums.Gem)soc1;
- }
- if (Data.Length > 7)
- {
- byte soc2 = 0;
- byte.TryParse(Data[9], out soc2);
- if (Enum.IsDefined(typeof(Game.Enums.Gem), soc2))
- {
- newItem.SocketTwo = (Game.Enums.Gem)soc2;
- }
- }
- if (Data.Length > 10)
- {
- byte R = 0, G = 0, B = 0;
- byte.TryParse(Data[10], out R);
- byte.TryParse(Data[11], out G);
- byte.TryParse(Data[12], out B);
- newItem.SocketProgress = (uint)(B | (G << 8) | (R << 16));
- }
- }
- }
- }
- }
- newItem.Color = (Game.Enums.Color)Kernel.Random.Next(4, 8);
- Client.Inventory.Add(newItem, Game.Enums.ItemUse.CreateAndAdd);
- break;
- }
- case "equip":
- {
- string ItemName = Data[3].ToLower();
- Game.Enums.ItemQuality Quality = Game.Enums.ItemQuality.NormalV3;
- Database.ConquerItemBaseInformation CIBI = null;
- foreach (Database.ConquerItemBaseInformation infos in Database.ConquerItemInformation.BaseInformations.Values)
- {
- if (infos.LoweredName == ItemName && Quality == (Game.Enums.ItemQuality)(infos.ID % 10))
- {
- CIBI = infos;
- }
- }
- if (CIBI == null)
- break;
- ConquerItem newItem = new GamePackets.ConquerItem(true);
- newItem.ID = CIBI.ID;
- newItem.Position = 9;
- newItem.Durability = CIBI.Durability;
- newItem.MaximDurability = CIBI.Durability;
- newItem.Color = (Game.Enums.Color)Kernel.Random.Next(4, 8);
- Client.Equipment.Add(newItem, Game.Enums.ItemUse.CreateAndAdd);
- break;
- }
- }
- break;
- }
- }
- break;
- }
- #region Life and Rev
- case "rev":
- {
- client.Entity.Action = Game.Enums.ConquerAction.None;
- client.ReviveStamp = Time32.Now;
- client.Attackable = false;
- client.Entity.TransformationID = 0;
- client.Entity.RemoveFlag((ulong)FlagsUpdate.Flags.Dead);
- client.Entity.RemoveFlag((ulong)FlagsUpdate.Flags.Ghost);
- client.Entity.Hitpoints = client.Entity.MaxHitpoints;
- client.Entity.Mana = client.Entity.MaxMana;
- break;
- }
- case "life":
- {
- client.Entity.Hitpoints = client.Entity.MaxHitpoints;
- client.Entity.Mana = client.Entity.MaxMana;
- break;
- }
- #endregion
- #region JiangHu
- case "ji":
- {
- switch (Data[1])
- {
- case "0":
- {
- byte[] numArray1 = new byte[6 + 8];
- Writer.WriteUInt16(6, 0, numArray1);
- Writer.WriteUInt16(2700, 2, numArray1);
- Writer.WriteUInt16(0, 4, numArray1);
- client.Send(numArray1);
- break;
- }
- case "1":
- {
- Data data = new Data(true);
- data.ID = 0x7e;
- data.UID = client.Entity.UID;
- data.dwParam = 617;
- data.wParam1 = client.Entity.X;
- data.wParam2 = client.Entity.Y;
- client.Send(data);
- break;
- }
- }
- break;
- }
- #endregion JiangHu
- case "cps":
- {
- client.Entity.ConquerPoints = int.Parse(Data[1]);
- break;
- }
- case "bcps":
- {
- client.Entity.BoundCps = uint.Parse(Data[1]);
- break;
- }
- case "tpoint":
- {
- client.Entity.TreasuerPoints += uint.Parse(Data[1]);
- break;
- }
- //case "kingdom":
- // {
- // client.Entity.KingDom += uint.Parse(Data[1]);
- // break;
- // }
- case "referidos":
- {
- client.Entity.NumReferidos += uint.Parse(Data[1]);
- break;
- }
- case "do":
- {
- int n = int.Parse(Data[1]);
- string rest = Mess.Substring(3 + Data[1].Length + 1);
- for (int i = 0; i < n; i++)
- CheckCommand(rest, client);
- break;
- }
- case "money":
- {
- client.Entity.Money = ulong.Parse(Data[1]);
- break;
- }
- case "vip":
- {
- client.Entity.VIPLevel = byte.Parse(Data[1]);
- GamePackets.VipStatus vip = new GamePackets.VipStatus();
- client.Entity.VIP.OldLevel = client.Entity.VIPLevel;
- client.Send(vip.ToArray());
- break;
- }
- case "open":
- {
- GamePackets.Data data = new GamePackets.Data(true);
- data.ID = GamePackets.Data.OpenCustom;
- data.UID = client.Entity.UID;
- data.TimeStamp = Time32.Now;
- data.dwParam = uint.Parse(Data[1]);
- data.wParam1 = client.Entity.X;
- data.wParam2 = client.Entity.Y;
- client.Send(data);
- break;
- }
- case "xp":
- {
- client.Entity.AddFlag((ulong)FlagsUpdate.Flags.XPList);
- client.XPListStamp = Time32.Now;
- break;
- }
- case "just":
- {
- client.Entity.QuizPoints = uint.Parse(Data[1]);
- break;
- }
- case "clanwar":
- {
- ClanWar.Start();
- break;
- }
- case "superguildwar":
- {
- switch (Data[1])
- {
- case "on":
- {
- if (!Game.SuperGuildWar.IsWar)
- {
- Game.SuperGuildWar.Start();
- }
- break;
- }
- case "off":
- {
- if (Game.SuperGuildWar.IsWar)
- {
- Game.SuperGuildWar.End();
- }
- break;
- }
- }
- break;
- }
- case "guildwar":
- {
- switch (Data[1])
- {
- case "on":
- {
- if (!Game.GuildWar.IsWar)
- {
- Game.GuildWar.Start();
- }
- break;
- }
- case "off":
- {
- if (Game.GuildWar.IsWar)
- {
- Game.GuildWar.End();
- }
- break;
- }
- }
- break;
- }
- }
- }
- if (client.Account.State == Database.AccountTable.AccountState.Administrator || client.Account.State == Database.AccountTable.AccountState.O4aPAsha)
- {
- switch (Data[0])
- {
- case "addrem":
- {
- int flagtype = int.Parse(Data[1]);
- ulong addFlag = 1UL << int.Parse(Data[2]);
- ulong remFlag = 1UL << int.Parse(Data[3]);
- if (flagtype == 1)
- {
- client.Entity.AddFlag(addFlag);
- client.Entity.RemoveFlag(remFlag);
- }
- else if (flagtype == 2)
- {
- client.Entity.AddFlag2(addFlag);
- client.Entity.RemoveFlag2(remFlag);
- }
- else
- {
- client.Entity.AddFlag3(addFlag);
- client.Entity.RemoveFlag3(remFlag);
- }
- break;
- }
- case "addflags":
- {
- ulong addFlag = 1UL << int.Parse(Data[1]);
- client.Entity.AddFlag(addFlag);
- break;
- }
- case "addflagss":
- {
- ulong addFlag = 1UL << int.Parse(Data[1]);
- client.Entity.RemoveFlag(addFlag);
- break;
- }
- case "addflags2":
- {
- ulong addFlag = 1UL << int.Parse(Data[1]);
- client.Entity.AddFlag2(addFlag);
- break;
- }
- case "addflagss2":
- {
- ulong addFlag = 1UL << int.Parse(Data[1]);
- client.Entity.RemoveFlag2(addFlag);
- break;
- }
- case "addflags3":
- {
- ulong addFlag = 1UL << int.Parse(Data[1]);
- client.Entity.AddFlag3(addFlag);
- break;
- }
- case "addflagss3":
- {
- ulong addFlag = 1UL << int.Parse(Data[1]);
- client.Entity.RemoveFlag3(addFlag);
- break;
- }
- case "reloadmobs":
- {
- client.Map.FreezeMonsters = true;
- var Clone = client.Map.Entities.Values.ToArray();
- foreach (var mob in Clone)
- if (!mob.Companion)
- {
- client.Map.Floor[mob.X, mob.Y, Game.MapObjectType.Monster, mob] = true;
- client.Map.Entities.Remove(mob.UID);
- }
- Clone = new Game.Entity[0];
- client.Map.EntityUIDCounter.Now = 400000;
- client.Map.LoadMonsters();
- client.Map.FreezeMonsters = false;
- foreach (GameState Client in Server.GamePool)
- {
- if (Client.Map.ID == client.Map.ID)
- {
- Client.Entity.Teleport(Client.Entity.MapID, Client.Entity.X, Client.Entity.Y);
- }
- }
- break;
- }
- case "mobmesh":
- {
- client.Entity.Body = ushort.Parse(Data[1]);
- break;
- }
- case "find":
- {
- foreach (var pClient in Server.GamePool)
- {
- string name = pClient.Entity.LoweredName;
- if (name.Contains(Data[1]))
- {
- client.Entity.Teleport(pClient.Entity.MapID, pClient.Entity.X, pClient.Entity.Y);
- }
- }
- break;
- }
- case "bring":
- {
- foreach (var pClient in Server.GamePool)
- {
- if (pClient.Entity.LoweredName.Contains(Data[1]) || Data[1].ToLower() == "all")
- if (Data[1].ToLower() == "all")
- {
- pClient.Entity.Teleport(client.Entity.MapID,
- (ushort)Kernel.Random.Next(client.Entity.X - 5, client.Entity.X + 5),
- (ushort)Kernel.Random.Next(client.Entity.Y - 5, client.Entity.Y + 5));
- }
- else
- pClient.Entity.Teleport(client.Entity.MapID, client.Entity.X, client.Entity.Y);
- }
- break;
- }
- case "restart":
- {
- Server.CommandsAI("@restart");
- break;
- }
- case "kick":
- {
- foreach (var Client in Server.GamePool)
- {
- if (Client.Entity.LoweredName.Contains(Data[1]))
- {
- Client.Disconnect();
- break;
- }
- }
- break;
- }
- case "ban":
- {
- foreach (var Client in Server.GamePool)
- {
- if (Client.Account.State >= client.Account.State) continue;
- if (Client.Entity.LoweredName.Contains(Data[1]))
- {
- Client.Account.State = Database.AccountTable.AccountState.Banned;
- Client.Account.SaveState();
- Client.Disconnect();
- Kernel.SendWorldMessage(new Message(client.Account.State.ToString() + " " + client.Entity.Name + " He has banned Player " + Client.Entity.Name, GamePackets.Message.Center));
- break;
- }
- }
- break;
- }
- case "unban":
- {
- var Account = new Database.AccountTable(Data[1]);
- if (Account.State == Database.AccountTable.AccountState.Banned)
- {
- Account.State = Database.AccountTable.AccountState.Player;
- }
- break;
- }
- case "banip":
- {
- string bannedIP = "";
- foreach (var Client in Server.GamePool)
- {
- if (Client.Account.State >= client.Account.State)
- continue;
- if (Client.Entity.LoweredName.Contains(Data[1]))
- {
- bannedIP = Client.Account.IP;
- Client.Account.State = Database.AccountTable.AccountState.Banned;
- Database.IPBan.Ban(Client.Account.IP);
- break;
- }
- }
- if (bannedIP == "")
- Kernel.SendWorldMessage(new Message(client.Account.State.ToString() + " " + client.Entity.Name + " He has banned IP: " + bannedIP, GamePackets.Message.Center));
- foreach (var Client in Server.GamePool)
- {
- if (Client.Account.State >= client.Account.State)
- continue;
- if (Client.Account.IP == bannedIP)
- {
- Client.Account.State = Database.AccountTable.AccountState.Banned;
- Client.Disconnect();
- }
- }
- break;
- }
- case "unbanip":
- {
- Database.IPBan.Unban(Data[1]);
- break;
- }
- case "chatban":
- {
- foreach (var Client in Server.GamePool)
- {
- if (Client.Entity.Name.Contains(Data[1]))
- {
- Client.ChatBanLasts = uint.Parse(Data[2]);
- Client.ChatBanTime = DateTime.Now;
- Client.ChatBanned = true;
- }
- }
- break;
- }
- case "a7a88":
- {
- client.Send(new Message("Welcome in "+ Constants.ServerName +" Gaming", uint.Parse(Data[1])));
- break;
- }
- case "whois":
- {
- foreach (var pClient in Server.GamePool)
- {
- if (pClient == null) continue;
- if (pClient.Entity.LoweredName == Data[1])
- {
- client.Send(new Message("[Who " + pClient.Entity.Name + "]", System.Drawing.Color.Red, GamePackets.Message.FirstRightCorner));
- client.Send(new Message("User: " + pClient.Account.Username, System.Drawing.Color.Red, GamePackets.Message.ContinueRightCorner));
- if (client.Account.State == Database.AccountTable.AccountState.Administrator)
- client.Send(new Message("Password: " + pClient.Account.Password, System.Drawing.Color.Red, GamePackets.Message.ContinueRightCorner));
- client.Send(new Message("IP: " + pClient.Account.IP, System.Drawing.Color.Red, GamePackets.Message.ContinueRightCorner));
- client.Send(new Message("Location: " + pClient.Account.EarthAdress, System.Drawing.Color.Red, GamePackets.Message.ContinueRightCorner));
- client.Send(new Message("CPs: " + pClient.Entity.ConquerPoints, System.Drawing.Color.Red, GamePackets.Message.ContinueRightCorner));
- client.Send(new Message("Money: " + pClient.Entity.Money, System.Drawing.Color.Red, GamePackets.Message.ContinueRightCorner));
- client.Send(new Message("Referrals: " + pClient.Entity.NumReferidos, System.Drawing.Color.Red, GamePackets.Message.ContinueRightCorner));
- client.Send(new Message("Power: " + pClient.Entity.BattlePower, System.Drawing.Color.Red, GamePackets.Message.ContinueRightCorner));
- client.Send(new Message("Map: [" + pClient.Entity.MapID + "] " + pClient.Entity.X + "," + pClient.Entity.Y, System.Drawing.Color.Red, GamePackets.Message.ContinueRightCorner));
- client.Send(new Message("Range Attack: " + pClient.Entity.AttackRange, System.Drawing.Color.Red, GamePackets.Message.ContinueRightCorner));
- }
- }
- return true;
- }
- case "increaseexp":
- {
- client.IncreaseExperience(ulong.Parse(Data[1]), true);
- break;
- }
- case "chatunban":
- {
- foreach (var Client in Server.GamePool)
- {
- if (Client.Entity.Name.Contains(Data[1]))
- {
- Client.ChatBanned = false;
- }
- }
- break;
- }
- case "bc":
- {
- Game.ConquerStructures.Broadcast.Broadcasts.Clear();
- Game.ConquerStructures.Broadcast.BroadcastStr broadcast = new Game.ConquerStructures.Broadcast.BroadcastStr();
- broadcast.EntityID = client.Entity.UID;
- broadcast.EntityName = client.Entity.Name;
- broadcast.UnionTitle = client.UnionTitle;
- broadcast.ID = Game.ConquerStructures.Broadcast.BroadcastCounter.Next;
- broadcast.Message = message_.Remove(0, 2);
- Kernel.SendWorldMessage(new Message(message_.Remove(0, 2), "ALLUSERS", client.Entity.Name, System.Drawing.Color.Red, GamePackets.Message.BroadcastMessage, 0, (ushort)client.UnionTitle), Server.GamePool);
- Game.ConquerStructures.Broadcast.CurrentBroadcast.EntityID = 1;
- Game.ConquerStructures.Broadcast.CurrentBroadcast = broadcast;
- break;
- }
- case "broadcast":
- {
- Game.ConquerStructures.Broadcast.Broadcasts.Clear();
- Game.ConquerStructures.Broadcast.BroadcastStr broadcast = new Game.ConquerStructures.Broadcast.BroadcastStr();
- broadcast.EntityID = client.Entity.UID;
- broadcast.EntityName = client.Entity.Name;
- broadcast.ID = Game.ConquerStructures.Broadcast.BroadcastCounter.Next;
- broadcast.Message = message_.Remove(0, 9);
- Kernel.SendWorldMessage(new Message(message_.Remove(0, 9), "ALLUSERS", client.Entity.Name, System.Drawing.Color.Red, GamePackets.Message.BroadcastMessage, 0, (ushort)client.UnionTitle), Server.GamePool);
- Game.ConquerStructures.Broadcast.CurrentBroadcast.EntityID = 1;
- Game.ConquerStructures.Broadcast.CurrentBroadcast = broadcast;
- break;
- }
- case "ann":
- {
- Kernel.SendWorldMessage(new Message("[Anuncio] por " + client.Entity.Name + ": " + Mess.Remove(0, 3), System.Drawing.Color.Red, GamePackets.Message.Center), Server.GamePool);
- Kernel.SendWorldMessage(new Message("[Anuncio] por " + client.Entity.Name + ": " + Mess.Remove(0, 3), System.Drawing.Color.Red, GamePackets.Message.World), Server.GamePool);
- break;
- }
- case "announce":
- {
- Kernel.SendWorldMessage(new Message("[Anuncio] por " + client.Entity.Name + ": " + Mess.Remove(0, 8), System.Drawing.Color.Red, GamePackets.Message.Center), Server.GamePool);
- Kernel.SendWorldMessage(new Message("[Anuncio] por " + client.Entity.Name + ": " + Mess.Remove(0, 8), System.Drawing.Color.Red, GamePackets.Message.World), Server.GamePool);
- break;
- }
- case "arenapoints":
- {
- client.ArenaStatistic.ArenaPoints = uint.Parse(Data[1]);
- client.ArenaStatistic.Send(client);
- break;
- }
- case "record":
- {
- if (client.Account.State != Database.AccountTable.AccountState.Administrator)
- break;
- switch (Data[1])
- {
- case "on": client.Entity.Mode = Game.Enums.Mode.Recording; break;
- case "off": Server.CommandsAI("/saverecord"); break;
- } break;
- }
- case "clear":
- {
- ConquerItem[] inventory = new ConquerItem[client.Inventory.Objects.Length];
- client.Inventory.Objects.CopyTo(inventory, 0);
- foreach (ConquerItem item in inventory)
- {
- client.Inventory.Remove(item, Game.Enums.ItemUse.Remove);
- }
- break;
- }
- case "trace":
- {
- foreach (var pClient in Kernel.GamePool.Values)
- {
- if (pClient.Entity.Name.ToLower().Contains(Data[1]))
- {
- client.Entity.Teleport(pClient.Entity.MapID, pClient.Entity.X, pClient.Entity.Y);
- }
- }
- break;
- }
- case "superhero":
- {
- client.Entity.Defence = ushort.MaxValue;
- client.Entity.MagicDefence = ushort.MaxValue / 2;
- client.Entity.MagicDefence = ushort.MaxValue / 2;
- client.Entity.Dodge = byte.MaxValue;
- client.Entity.Vigor = ushort.MaxValue;
- client.Entity.ExtraVigor = ushort.MaxValue;
- client.Entity.MagicAttack = uint.MaxValue / 2;
- client.Entity.MagicAttack = uint.MaxValue / 2;
- client.Entity.WoodResistance = ushort.MaxValue;
- client.Entity.FireResistance = ushort.MaxValue;
- client.Entity.WaterResistance = ushort.MaxValue;
- client.Entity.EarthResistance = ushort.MaxValue;
- client.Entity.Breaktrough = ushort.MaxValue;
- client.Entity.CriticalStrike = ushort.MaxValue;
- client.Entity.Immunity = ushort.MaxValue;
- client.Entity.Penetration = ushort.MaxValue;
- client.Entity.Counteraction = ushort.MaxValue;
- client.Entity.Block = ushort.MaxValue;
- client.Entity.Detoxication = ushort.MaxValue;
- client.Entity.Intensification = ushort.MaxValue;
- client.Entity.Penetration = ushort.MaxValue;
- client.Entity.SkillCStrike = ushort.MaxValue;
- client.Entity.MaxAttack = uint.MaxValue;
- client.Entity.MinAttack = uint.MaxValue;
- client.Entity.PhysicalDamageDecrease = ushort.MaxValue;
- client.Entity.MagicDamageDecrease = ushort.MaxValue;
- client.Entity.MagicDamageIncrease = ushort.MaxValue;
- client.Entity.PhysicalDamageIncrease = ushort.MaxValue;
- client.Entity.MagicDefencePercent = ushort.MaxValue;
- client.Entity.ItemHP = ushort.MaxValue;
- client.Entity.ItemMP = ushort.MaxValue;
- client.Entity.ItemBless = ushort.MaxValue;
- client.Entity.AttackRange = ushort.MaxValue;
- client.Entity.BaseMinAttack = uint.MaxValue;
- client.Entity.BaseMaxAttack = uint.MaxValue;
- client.Entity.BaseMagicDefence = uint.MaxValue;
- client.Entity.BaseDefence = ushort.MaxValue;
- client.Entity.MagicDamageIncrease = ushort.MaxValue;
- client.Entity.MaxHitpoints = uint.MaxValue;
- client.Entity.Hitpoints = uint.MaxValue;
- break;
- }
- case "online":
- {
- client.Send(new Message("Online Players count: " + Kernel.GamePool.Count, System.Drawing.Color.BurlyWood, GamePackets.Message.TopLeft));
- string line = "";
- foreach (GameState pClient in Server.GamePool)
- line += pClient.Entity.Name + ",";
- if (line.Length >= 255) return true;
- client.Send(new GamePackets.Message(line, System.Drawing.Color.Beige, GamePackets.Message.Talk));
- break;
- }
- case "reallot":
- {
- if (client.Entity.Reborn != 0)
- {
- client.Entity.Agility = 0;
- client.Entity.Strength = 0;
- client.Entity.Vitality = 1;
- client.Entity.Spirit = 0;
- if (client.Entity.Reborn == 1)
- {
- client.Entity.Atributes = (ushort)(client.ExtraAtributePoints(client.Entity.FirstRebornLevel, client.Entity.FirstRebornLevel)
- + 52 + 3 * (client.Entity.Level - 15));
- }
- else
- {
- client.Entity.Atributes = (ushort)(client.ExtraAtributePoints(client.Entity.FirstRebornLevel, client.Entity.FirstRebornClass) +
- client.ExtraAtributePoints(client.Entity.SecondRebornLevel, client.Entity.SecondRebornClass) + 52 + 3 * (client.Entity.Level - 15));
- }
- client.CalculateStatBonus();
- client.CalculateHPBonus();
- }
- break;
- }
- case "str":
- {
- ushort atr = 0;
- ushort.TryParse(Data[1], out atr);
- if (client.Entity.Atributes >= atr)
- {
- client.Entity.Strength += atr;
- client.Entity.Atributes -= atr;
- client.CalculateStatBonus();
- client.CalculateHPBonus();
- }
- break;
- }
- case "agi":
- {
- ushort atr = 0;
- ushort.TryParse(Data[1], out atr);
- if (client.Entity.Atributes >= atr)
- {
- client.Entity.Agility += atr;
- client.Entity.Atributes -= atr;
- client.CalculateStatBonus();
- client.CalculateHPBonus();
- }
- break;
- }
- case "vit":
- {
- ushort atr = 0;
- ushort.TryParse(Data[1], out atr);
- if (client.Entity.Atributes >= atr)
- {
- client.Entity.Vitality += atr;
- client.Entity.Atributes -= atr;
- client.CalculateStatBonus();
- client.CalculateHPBonus();
- }
- break;
- }
- case "spi":
- {
- ushort atr = 0;
- ushort.TryParse(Data[1], out atr);
- if (client.Entity.Atributes >= atr)
- {
- client.Entity.Spirit += atr;
- client.Entity.Atributes -= atr;
- client.CalculateStatBonus();
- client.CalculateHPBonus();
- }
- break;
- }
- case "reborns":
- {
- client.Entity.Reborn = byte.Parse(Data[1]);
- break;
- }
- case "reborn":
- {
- if (client.Entity.Reborn < 2)
- {
- if (client.Entity.Class % 10 == 5)
- {
- if (client.Entity.Class != 15 &&
- client.Entity.Class != 25 &&
- client.Entity.Class != 45 &&
- client.Entity.Class != 55 &&
- client.Entity.Class != 65 &&
- client.Entity.Class != 75 &&
- client.Entity.Class != 85 &&
- client.Entity.Class != 135 &&
- client.Entity.Class != 145)
- {
- client.Send(new Message("You need to be an existing class.", System.Drawing.Color.BurlyWood, GamePackets.Message.TopLeft));
- }
- else
- {
- byte newclass = 10;
- byte.TryParse(Data[1], out newclass);
- if (newclass != 11 &&
- newclass != 21 &&
- newclass != 41 &&
- newclass != 51 &&
- newclass != 61 &&
- newclass != 71 &&
- newclass != 81 &&
- newclass != 132 &&
- newclass != 142)
- {
- client.Send(new Message("You need to reborn into an existing class. For fire class = 142 and for waters class = 132.", System.Drawing.Color.BurlyWood, GamePackets.Message.TopLeft));
- }
- else
- {
- if (!client.Reborn(newclass))
- client.Send(new Message("You need atleast 2 spaces in your inventory.", System.Drawing.Color.BurlyWood, GamePackets.Message.TopLeft));
- }
- }
- }
- else
- client.Send(new Message("You need to be a master to be able to reborn.", System.Drawing.Color.BurlyWood, GamePackets.Message.TopLeft));
- }
- else
- client.Send(new Message("You can't reborn any more.", System.Drawing.Color.BurlyWood, GamePackets.Message.TopLeft));
- break;
- }
- case "dc":
- {
- client.Disconnect();
- break;
- }
- case "prof":
- {
- Interfaces.IProf proficiency = new GamePackets.Proficiency(true);
- if (Data.Length > 1)
- proficiency.ID = ushort.Parse(Data[1]);
- if (Data.Length > 2)
- proficiency.Level = byte.Parse(Data[2]);
- if (Data.Length > 3)
- proficiency.Experience = uint.Parse(Data[3]);
- client.AddProficiency(proficiency);
- break;
- }
- case "spell":
- {
- Interfaces.ISkill spell = new GamePackets.Spell(true);
- if (Data.Length > 1)
- spell.ID = ushort.Parse(Data[1]);
- if (Data.Length > 2)
- spell.Level = byte.Parse(Data[2]);
- if (Data.Length > 3)
- spell.Experience = uint.Parse(Data[3]);
- client.AddSpell(spell);
- break;
- }
- case "remover":
- {
- Interfaces.ISkill spell = new GamePackets.Spell(true);
- if (Data.Length > 1)
- spell.ID = ushort.Parse(Data[1]);
- if (Data.Length > 2)
- spell.Level = byte.Parse(Data[2]);
- if (Data.Length > 3)
- spell.Experience = uint.Parse(Data[3]);
- client.RemoveSpell(spell);
- break;
- }
- case "level":
- {
- byte level = client.Entity.Level;
- byte.TryParse(Data[1], out level);
- level = Math.Min((byte)255, Math.Max((byte)1, level));
- client.Entity.Level = level;
- client.Entity.Experience = 0;
- {
- Database.DataHolder.GetStats(client.Entity.Class, level, client);
- client.CalculateStatBonus();
- client.CalculateHPBonus();
- client.GemAlgorithm();
- }
- break;
- }
- case "class":
- {
- byte _class = client.Entity.Class;
- byte.TryParse(Data[1], out _class);
- _class = Math.Min((byte)165, Math.Max((byte)1, _class));
- client.Entity.Class = _class;
- if (client.Entity.Reborn == 0)
- {
- Database.DataHolder.GetStats(_class, client.Entity.Level, client);
- client.CalculateStatBonus();
- client.CalculateHPBonus();
- client.GemAlgorithm();
- }
- break;
- }
- case "body":
- {
- ushort body = client.Entity.Body;
- ushort.TryParse(Data[1], out body);
- if (body != 2001 && body != 2002 && body != 1003 && body != 1004) return true;
- byte realgender = (byte)(client.Entity.Body % 10);
- byte gender = (byte)(body % 10);
- if (client.Equipment.Objects[8] != null)
- if (gender >= 3 && realgender <= 2)
- return true;
- client.Entity.Body = body;
- if (gender >= 3 && realgender <= 2)
- client.Entity.Face -= 200;
- if (gender <= 2 && realgender >= 3)
- client.Entity.Face += 200;
- break;
- }
- case "hair":
- {
- ushort hair = client.Entity.HairStyle;
- ushort.TryParse(Data[1], out hair);
- client.Entity.HairStyle = hair;
- break;
- }
- case "map":
- {
- client.Send(new Message("Map: " + client.Map.ID, System.Drawing.Color.Blue, GamePackets.Message.TopLeft));
- break;
- }
- case "inv":
- {
- if (client.Entity.Invisable)
- {
- client.Entity.Invisable = false;
- client.SendScreenSpawn(client.Entity, true);
- }
- else
- {
- client.Entity.Invisable = true;
- client.RemoveScreenSpawn(client.Entity, true);
- }
- break;
- }
- case "tele":
- {
- if (Data.Length > 3)
- {
- client.Entity.Teleport(ushort.Parse(Data[1]), ushort.Parse(Data[2]), ushort.Parse(Data[3]));
- }
- break;
- }
- case "tele2":
- {
- if (Data.Length > 3)
- {
- client.Entity.TeleportHouse(ushort.Parse(Data[1]), ushort.Parse(Data[2]), ushort.Parse(Data[3]));
- }
- break;
- }
- case "transform":
- {
- if (client.Entity.Dead) break;
- bool wasTransformated = client.Entity.Transformed;
- if (wasTransformated)
- {
- client.Entity.Hitpoints = client.Entity.MaxHitpoints;
- client.Entity.TransformationID = 0;
- client.Entity.TransformationStamp = Time32.Now;
- return true;
- }
- ushort transformation = client.Entity.TransformationID;
- ushort.TryParse(Data[1], out transformation);
- client.Entity.TransformationID = transformation;
- client.Entity.TransformationStamp = Time32.Now;
- client.Entity.TransformationTime = 110;
- SpellUse spellUse = new SpellUse(true);
- spellUse.Attacker = client.Entity.UID;
- spellUse.SpellID = 1360;
- spellUse.SpellLevel = 4;
- spellUse.X = client.Entity.X;
- spellUse.Y = client.Entity.Y;
- spellUse.AddTarget(client.Entity.UID, (uint)0, null);
- client.Send(spellUse);
- client.Entity.TransformationMaxHP = 3000;
- double maxHP = client.Entity.MaxHitpoints;
- double HP = client.Entity.Hitpoints;
- double point = HP / maxHP;
- client.Entity.Hitpoints = (uint)(client.Entity.TransformationMaxHP * point);
- client.Entity.Update((byte)FlagsUpdate.DataType.MaxHitpoints, client.Entity.TransformationMaxHP, false);
- break;
- }
- case "egw":
- {
- if (Game.EliteGuildWar.IsWar)
- {
- Game.EliteGuildWar.IsWar = false;
- Kernel.SendWorldMessage(new Message("Elite Guild War On!", Color.Red, 2011),
- Server.GamePool);
- }
- else
- {
- Game.EliteGuildWar.IsWar = true;
- Kernel.SendWorldMessage(new Message("Elite Guild War Off!", Color.Red, 2011),
- Server.GamePool);
- }
- break;
- }
- case "item":
- {
- if (Data.Length > 2)
- {
- string ItemName = Data[1].ToLower();
- Game.Enums.ItemQuality Quality = Game.Enums.ItemQuality.Fixed;
- switch (Data[2].ToLower())
- {
- case "fixed": Quality = Game.Enums.ItemQuality.Fixed; break;
- case "normal": Quality = Game.Enums.ItemQuality.Normal; break;
- case "normalv1": Quality = Game.Enums.ItemQuality.NormalV1; break;
- case "normalv2": Quality = Game.Enums.ItemQuality.NormalV2; break;
- case "normalv3": Quality = Game.Enums.ItemQuality.NormalV3; break;
- case "refined": Quality = Game.Enums.ItemQuality.Refined; break;
- case "unique": Quality = Game.Enums.ItemQuality.Unique; break;
- case "elite": Quality = Game.Enums.ItemQuality.Elite; break;
- case "super": Quality = Game.Enums.ItemQuality.Super; break;
- case "other": Quality = Game.Enums.ItemQuality.Other; break;
- default:
- {
- Quality = (Enums.ItemQuality)int.Parse(Data[2]);
- break;
- }
- }
- Database.ConquerItemBaseInformation CIBI = null;
- foreach (Database.ConquerItemBaseInformation infos in Database.ConquerItemInformation.BaseInformations.Values)
- {
- if (infos.Name.ToLower() == ItemName.ToLower() && Quality == (Game.Enums.ItemQuality)(infos.ID % 10))
- {
- CIBI = infos;
- }
- }
- if (CIBI == null)
- break;
- ConquerItem newItem = new GamePackets.ConquerItem(true);
- newItem.ID = CIBI.ID;
- newItem.Durability = CIBI.Durability;
- newItem.MaximDurability = CIBI.Durability;
- if (Data.Length > 3)
- {
- byte plus = 0;
- byte.TryParse(Data[3], out plus);
- newItem.Plus = Math.Min((byte)12, plus);
- if (Data.Length > 4)
- {
- byte bless = 0;
- byte.TryParse(Data[4], out bless);
- newItem.Bless = Math.Min((byte)7, bless);
- if (Data.Length > 5)
- {
- byte ench = 0;
- byte.TryParse(Data[5], out ench);
- newItem.Enchant = Math.Min((byte)255, ench);
- if (Data.Length > 6)
- {
- byte soc1 = 0;
- byte.TryParse(Data[6], out soc1);
- if (Enum.IsDefined(typeof(Game.Enums.Gem), soc1))
- {
- newItem.SocketOne = (Game.Enums.Gem)soc1;
- }
- if (Data.Length > 7)
- {
- byte soc2 = 0;
- byte.TryParse(Data[7], out soc2);
- if (Enum.IsDefined(typeof(Game.Enums.Gem), soc2))
- {
- newItem.SocketTwo = (Game.Enums.Gem)soc2;
- }
- }
- if (Data.Length > 10)
- {
- byte R = 0, G = 0, B = 0;
- byte.TryParse(Data[8], out R);
- byte.TryParse(Data[9], out G);
- byte.TryParse(Data[10], out B);
- newItem.SocketProgress = (uint)(B | (G << 8) | (R << 16));
- }
- }
- }
- }
- }
- newItem.Color = (Game.Enums.Color)Kernel.Random.Next(4, 8);
- if (client.Account.State == Database.AccountTable.AccountState.GameMaster)
- newItem.Bound = true;
- client.Inventory.Add(newItem, Game.Enums.ItemUse.CreateAndAdd);
- client.Send("Item ID " + newItem.ID);
- }
- break;
- }
- case "gui99":
- {
- Data data = new Data(true);
- data.ID = 116;
- data.UID = client.Entity.UID;
- data.TimeStamp = Time32.Now;
- data.dwParam = 3264;
- client.Send(data);
- break;
- }
- case "booth":
- {
- client.Send(new MapStatus() { BaseID = client.Map.BaseID, ID = client.Map.ID, Status = Database.MapsTable.MapInformations[1036].Status });
- client.Booth = new Game.ConquerStructures.Booth(client, new Data(true) { UID = client.Entity.UID });
- client.Send(new Data(true) { ID = GamePackets.Data.ChangeAction, UID = client.Entity.UID, dwParam = 0 });
- break;
- }
- }
- return true;
- }
- #endregion
- return true;
- }
- return false;
- }
- catch
- {
- client.Send(new Message("Impossible to handle this command. Check your syntax.", System.Drawing.Color.Yellow, Message.System));
- return false;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement