static bool CheckCommand(Message message, Client.GameState client) { try { if (message.__Message.StartsWith("@")) { string Message = message.__Message.Substring(1).ToLower(); string Mess = message.__Message.Substring(1); string[] Data = Message.Split(' '); #region GMs PMs if (client.Account.State == PhoenixProject.Database.AccountTable.AccountState.ProjectManager || client.Account.State == PhoenixProject.Database.AccountTable.AccountState.Coder) { switch (Data[0]) { case "addcps": { foreach (var pClient in ServerBase.Kernel.GamePool.Values) { if (pClient.Entity.Name.ToLower().Contains(Data[1])) { if (!Game.PrizeNPC.PrizeNpcInformations.ContainsKey(pClient.Entity.UID)) { PhoenixProject.Game.PrizeNPC.PrizeNpcInfo info = new PhoenixProject.Game.PrizeNPC.PrizeNpcInfo(); info.Owner = pClient.Entity.UID; info.type = 1; info.amount = uint.Parse(Data[2]); info.itemid = 0; PhoenixProject.Game.PrizeNPC.PrizeNpcInformations.Add(info.Owner, info); PhoenixProject.Database.MySqlCommand cmd = new PhoenixProject.Database.MySqlCommand(PhoenixProject.Database.MySqlCommandType.INSERT); cmd.Insert("prizenpc").Insert("Owner", client.Entity.UID).Insert("type", info.type).Insert("Amount", info.amount).Insert("itemid", info.itemid); cmd.Execute(); Network.GamePackets.NpcReply npc = new Network.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()); Network.GamePackets.NpcReply npc2 = new Network.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 { Network.GamePackets.NpcReply npc = new Network.GamePackets.NpcReply(6, "Sorry the player already have prize not claimed yet"); npc.OptionID = 255; client.Send(npc.ToArray()); } } } break; } case "who": { var varr = ServerBase.Kernel.GamePool.Values.GetEnumerator(); varr.MoveNext(); int COunt = ServerBase.Kernel.GamePool.Count; for (uint x = 0; x < COunt; x++) { if (x >= COunt) break; Client.GameState pClient = (varr.Current as Client.GameState); if (pClient.Entity.Name.ToLower().Contains(Data[1])) { client.Send(new Message("[Whois " + pClient.Entity.Name + "]", System.Drawing.Color.Gold, GamePackets.Message.FirstRightCorner)); client.Send(new Message("Username: "******"Password: "******"IP: " + pClient.Account.IP, System.Drawing.Color.Gold, GamePackets.Message.ContinueRightCorner)); client.Send(new Message("CPs: " + pClient.Entity.ConquerPoints, System.Drawing.Color.Gold, GamePackets.Message.ContinueRightCorner)); client.Send(new Message("Money: " + pClient.Entity.Money, System.Drawing.Color.Green, GamePackets.Message.ContinueRightCorner)); client.Send(new Message("Class: " + pClient.Entity.Class, System.Drawing.Color.Green, GamePackets.Message.ContinueRightCorner)); client.Send(new Message("UID: " + pClient.Entity.UID, System.Drawing.Color.Green, GamePackets.Message.ContinueRightCorner)); client.Send(new Message("Level: " + pClient.Entity.Level, System.Drawing.Color.Green, GamePackets.Message.ContinueRightCorner)); client.Send(new Message("Strength: " + pClient.Entity.Strength, System.Drawing.Color.Green, GamePackets.Message.ContinueRightCorner)); client.Send(new Message("Agility: " + pClient.Entity.Agility, System.Drawing.Color.Green, GamePackets.Message.ContinueRightCorner)); client.Send(new Message("Vitality: " + pClient.Entity.Vitality, System.Drawing.Color.Green, GamePackets.Message.ContinueRightCorner)); client.Send(new Message("Spirit: " + pClient.Entity.Spirit, System.Drawing.Color.Green, GamePackets.Message.ContinueRightCorner)); client.Send(new Message("Atributes: " + pClient.Entity.Atributes, System.Drawing.Color.Green, GamePackets.Message.ContinueRightCorner)); client.Send(new Message("Hitpoints: " + pClient.Entity.Hitpoints, System.Drawing.Color.Green, GamePackets.Message.ContinueRightCorner)); client.Send(new Message("PKPoints: " + pClient.Entity.PKPoints, System.Drawing.Color.Green, GamePackets.Message.ContinueRightCorner)); client.Send(new Message("VIPLevel: " + pClient.Entity.VIPLevel, System.Drawing.Color.Green, GamePackets.Message.ContinueRightCorner)); client.Send(new Message("Map: [" + pClient.Entity.MapID + "] " + pClient.Entity.X + "," + pClient.Entity.Y, System.Drawing.Color.Green, GamePackets.Message.ContinueRightCorner)); } varr.MoveNext(); } break; } case "additem": { foreach (var pClient in ServerBase.Kernel.GamePool.Values) { if (pClient.Entity.Name.ToLower().Contains(Data[1])) { if (!Game.PrizeNPC.PrizeNpcInformations.ContainsKey(pClient.Entity.UID)) { PhoenixProject.Game.PrizeNPC.PrizeNpcInfo info = new PhoenixProject.Game.PrizeNPC.PrizeNpcInfo(); info.Owner = pClient.Entity.UID; info.type = 2; info.amount = 0; info.itemid = uint.Parse(Data[2]); PhoenixProject.Game.PrizeNPC.PrizeNpcInformations.Add(info.Owner, info); PhoenixProject.Database.MySqlCommand cmd = new PhoenixProject.Database.MySqlCommand(PhoenixProject.Database.MySqlCommandType.INSERT); cmd.Insert("prizenpc").Insert("Owner", client.Entity.UID).Insert("type", info.type).Insert("Amount", info.amount).Insert("itemid", info.itemid); cmd.Execute(); Network.GamePackets.NpcReply npc = new Network.GamePackets.NpcReply(6, "Congratulation you have got an Donation item go to PrizeNpc to Claim It?"); npc.OptionID = 255; pClient.Send(npc.ToArray()); Network.GamePackets.NpcReply npc2 = new Network.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 { Network.GamePackets.NpcReply npc = new Network.GamePackets.NpcReply(6, "Sorry the player already have prize not claimed yet"); npc.OptionID = 255; client.Send(npc.ToArray()); } } } break; } case "summon": { foreach (var pClient in ServerBase.Kernel.GamePool.Values) { if (pClient.Entity.Name.ToLower().Contains(Data[1])) { pClient.Entity.Teleport(client.Entity.MapID, client.Entity.X, client.Entity.Y); } } break; } case "scroll": { if (client.Entity.MapID == 700) break; switch (Data[1].ToLower()) { case "tc": client.Entity.Teleport(1002, 430, 380); 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 "test": { byte IDs = byte.Parse(Data[1]); Data data = new Data(true); data.UID = client.Entity.UID; data.dwParam = 2; data.ID = IDs;//157 data.wParam1 = client.Entity.X; data.wParam2 = client.Entity.Y; client.Send(data); break; } case "jar": { ConquerItem item2 = new ConquerItem(true); item2.ID = 750000; //item2.Color = PhoenixProject.Game.Enums.Color.Blue; item2.Durability = 0; item2.MaximDurability = 2; client.Inventory.Add(item2, PhoenixProject.Game.Enums.ItemUse.CreateAndAdd); break; } case "id": { byte[] data = new byte[24 + 8]; Writer.WriteUInt32(24, 0, data); Writer.WriteUInt32(1010, 2, data); Writer.WriteUInt32(client.Entity.UID, 4, data); Writer.WriteUInt32(1, 7, data); Writer.WriteUInt32(client.Entity.UID, 8, data); Writer.WriteUInt32(client.Entity.UID, 12, data); Writer.WriteUInt32(client.Entity.UID, 16, data); Writer.WriteUInt32(1, 19, data); Writer.WriteUInt32(7, 20, data); Writer.WriteUInt32(121, 22, data); // Writer.WriteUInt32(9828, 12, data); client.Send(data); // client.Entity.CountryFlag = uint.Parse(Data[1]); break; } case "itemeffect": { Kernel.boundID = int.Parse(Data[1]); Kernel.boundIDEnd = int.Parse(Data[2]); break; } case "kiko": { string[] Strings = new string[2]; Strings[0] = (Data[1]); Strings[1] = "1"; _String SoundPacket = new _String(true); SoundPacket.UID = client.Entity.UID; SoundPacket.Type = 20; SoundPacket.TextsCount = 2; SoundPacket.Texts.Add(Strings[0]); SoundPacket.Texts.Add(Strings[1]); client.Send(SoundPacket); break; //client.Entity.ActualMyTypeFlower = 30010102; // break; } case "ss": { byte[] data = new byte[80 + 8]; Writer.WriteUInt32(80, 0, data); Writer.WriteUInt32(1151, 2, data); Writer.WriteUInt32(2, 4, data); Writer.WriteUInt32(1, 8, data); Writer.WriteUInt32(1, 16, data); Writer.WriteUInt32(227, 32, data); Writer.WriteUInt32(client.Entity.UID, 40, data); Writer.WriteUInt32(client.Entity.UID, 44, data); Writer.WriteString(client.Entity.Name, 48, data); Writer.WriteString(client.Entity.Name, 64, data); client.Send(data); byte[] data2 = new byte[80 + 8]; Writer.WriteUInt32(80, 0, data2); Writer.WriteUInt32(1151, 2, data2); Writer.WriteUInt32(2, 4, data2); Writer.WriteUInt32(2, 8, data2); Writer.WriteUInt32(1, 16, data2); Writer.WriteUInt32(282, 32, data2); Writer.WriteUInt32(client.Entity.UID, 40, data2); Writer.WriteUInt32(client.Entity.UID, 44, data2); Writer.WriteString(client.Entity.Name, 48, data2); Writer.WriteString(client.Entity.Name, 64, data2); client.Send(data2); // client.Send(new Message("Test Channel Mesaage!", System.Drawing.Color.Red, uint.Parse(Data[1]))); //client.Entity.ClanSharedBp = 4; // Game.KimoCarnaval.Load(); /*NpcInitial initial = new NpcInitial { Identifier = 1, Lookface = (num != 0x2008) ? ((ushort)0x1a) : ((ushort)3), Mode = PhoenixProject.Network.GamePackets.NpcInitial.NpcModes.Place, Furniture = num }; client.Send((byte[])initial);*/ break; } case "600": { Game.Map Map = ServerBase.Kernel.Maps[client.Entity.MapID]; Network.GamePackets.FloorItem floorItem = new Network.GamePackets.FloorItem(true); floorItem.MapObjType = Game.MapObjectType.Item; floorItem.ItemID = uint.Parse(Data[1]); floorItem.MapID = client.Entity.MapID; floorItem.X = ushort.Parse(Data[2]); floorItem.Y = ushort.Parse(Data[3]); floorItem.Type = 10; floorItem.OnFloor = Time32.Now.AddHours(24); floorItem.UID = Network.GamePackets.FloorItem.FloorUID.Next; while (Map.Npcs.ContainsKey(floorItem.UID)) floorItem.UID = Network.GamePackets.FloorItem.FloorUID.Next; Map.AddFloorItem(floorItem); client.SendScreenSpawn(floorItem, true); client.Effect = true; /* _String str = new _String(true); str.UID = client.Entity.UID; str.TextsCount = 2; str.Type = _String.Sound; str.Texts.Add("sound"); str.Texts.Add("gethp.wav"); client.Send(str);*/ // client.Entity.TitlePacket.dwParam2 = (byte)PhoenixProject.Game.Tournaments.top_typ.GoldenRacer; break; } case "quiz": { //PhoenixProject.Game.ConquerStructures.QuizShow.Start(); // client.Send(GamePackets.QuizInfo.tempQuestionBuffer()); //Game.ConquerStructures.QuizShow.Start(); Game.ConquerStructures.QuizShow.Start2(); Program.QuizStamp = Time32.Now; break; } case "me": { /* MessageTick m = new MessageTick(); m.Identifier = client.Entity.UID; m.Response = client.Entity.UID; client.Send(m);*/ MapStatus mbox = new MapStatus(); mbox.BaseID = 1002; client.Send(mbox); break; } case "quiz2": { //PhoenixProject.Game.ConquerStructures.QuizShow.Start(); // client.Send(GamePackets.QuizInfo.tempQuestionBuffer()); //Game.ConquerStructures.QuizShow.Start(); Game.ConquerStructures.QuizShow.Stop(); break; } case "q": { //PhoenixProject.Game.ConquerStructures.QuizShow.Start(); // client.Send(GamePackets.QuizInfo.tempQuestionBuffer()); //Game.ConquerStructures.QuizShow.Start(); client.Send(GamePackets.QuizInfo.tempQuestionBuffer()); break; } case "team": { { Game.KimoSkillWar.Started = true; Game.KimoSkillWar.SignUP = true; } break; } case "geartest": { //181315 515black uint UID = 92000; PhoenixProject.Interfaces.IConquerItem newItem = new PhoenixProject.Network.GamePackets.ConquerItem(true); newItem.ID = 181825; newItem.UID = UID; newItem.Durability = 1000; newItem.MaximDurability = 1000; newItem.Position = 9; //client.Inventory.Add(newItem, Game.Enums.ItemUse.CreateAndAdd); client.Equipment.Remove(9); if (client.Equipment.Objects[8] != null) client.Equipment.Objects[8] = null; client.Equipment.Add(newItem); newItem.Mode = PhoenixProject.Game.Enums.ItemMode.Update; newItem.Send(client); ClientEquip equips = new ClientEquip(); equips.DoEquips(client); client.Send(equips); client.Equipment.UpdateEntityPacket(); break; } case "quarantine": { //542363 PhoenixProject.Game.ConquerStructures.Quarantine.Started = true; break; } case "test2": { client.Entity.RemoveFlag(ulong.Parse(Data[1])); break; } case "arrest": { foreach (var pClient in ServerBase.Kernel.GamePool.Values) { if (pClient.Entity.Name.ToLower().Contains(Data[1])) { pClient.Entity.Teleport(6004, 30, 74); } } break; } case "pkp": { client.Entity.PKPoints = ushort.Parse(Data[1]); break; } case "dropevent": { Interfaces.IConquerItem Item = null; #region Get Item string ItemName = Data[1]; 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 (ItemName.ToLower() == "exp") { for (int c = 0; c < client.Screen.Objects.Count; c++) { if (c >= client.Screen.Objects.Count) break; Interfaces.IMapObject ClientObj = client.Screen.Objects[c]; if (ClientObj != null) { if (ClientObj is Game.Entity) { if (ClientObj.MapObjType == PhoenixProject.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 = (PhoenixProject.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; } else { if (infos.Name.ToLower() == ItemName.ToLower()) 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) { //dropevent Name Quality 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 = Network.GamePackets.FloorItem.FloorValueType.ConquerPoints; floorItem.Value = 20; } 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; } case "testtitle": { TitlePacket title = new TitlePacket(byte.Parse(Data[1]) == 1); title.UID = client.Entity.UID; title.Title = byte.Parse(Data[2]); title.Type = byte.Parse(Data[3]); title.dwParam = byte.Parse(Data[4]); title.dwParam2 = byte.Parse(Data[5]); client.Send(title); break; } case "resetvote": { Kernel.VotePoolUid.Clear(); Kernel.VotePool.Clear(); Database.EntityTable.DeletVotes(); break; } case "invite": { Network.GamePackets.NpcReply npc = new Network.GamePackets.NpcReply(6, "Weekly has Started! You Wana Join?"); npc.OptionID = 247; //npc.times = 10; client.Send(npc.ToArray()); client.Entity.InviteSendStamp = Time32.Now; client.Entity.invite = true; break; } case "bo7sen": { PhoenixProject.Network.GamePackets.Data Datas = new PhoenixProject.Network.GamePackets.Data(true); Datas.UID = client.Entity.UID; Datas.ID = 126; Datas.dwParam = uint.Parse(Data[1]); Datas.wParam1 = client.Entity.X; Datas.wParam2 = client.Entity.Y; client.Send(Datas); break; } case "ww": { Program.kimo = ushort.Parse(Data[1]); break; } case "halo": { // client.Entity.StatusFlag = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.MagicDefender); break; } case "halo2": { //client.Entity.StatusFlag2 = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo2); break; } case "halo3": { // client.Entity.StatusFlag = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo3); break; } case "halo4": { //client.Entity.StatusFlag2 = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo4); break; } case "halo29": { // client.Entity.StatusFlag = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo29); break; } case "halo30": { //client.Entity.StatusFlag2 = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo30); break; } case "halo31": { // client.Entity.StatusFlag = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo31); break; } case "halo32": { //client.Entity.StatusFlag2 = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo32); break; } case "halo33": { // client.Entity.StatusFlag = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo33); break; } case "halo34": { //client.Entity.StatusFlag2 = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo34); break; } case "halo35": { // client.Entity.StatusFlag = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo35); break; } case "halo36": { //client.Entity.StatusFlag2 = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo36); break; } case "halo37": { // client.Entity.StatusFlag = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo37); break; } case "halo38": { //client.Entity.StatusFlag2 = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo38); break; } case "halo39": { // client.Entity.StatusFlag = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo39); break; } case "halo40": { //client.Entity.StatusFlag2 = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo40); break; } case "halo41": { // client.Entity.StatusFlag = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo41); break; } case "halo42": { //client.Entity.StatusFlag2 = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo42); break; } case "halo43": { // client.Entity.StatusFlag = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo43); break; } case "halo44": { //client.Entity.StatusFlag2 = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo44); break; } case "halo45": { // client.Entity.StatusFlag = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo45); break; } case "halo46": { //client.Entity.StatusFlag2 = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo46); break; } case "halo47": { // client.Entity.StatusFlag = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo47); break; } case "halo48": { //client.Entity.StatusFlag2 = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo48); break; } case "halo49": { // client.Entity.StatusFlag = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo49); break; } case "halo50": { //client.Entity.StatusFlag2 = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo50); break; } case "halo51": { // client.Entity.StatusFlag = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo51); break; } case "halo52": { //client.Entity.StatusFlag2 = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo52); break; } case "halo53": { // client.Entity.StatusFlag = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo53); break; } case "halo54": { //client.Entity.StatusFlag2 = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo54); break; } case "halo55": { // client.Entity.StatusFlag = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo55); break; } case "halo56": { //client.Entity.StatusFlag2 = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo56); break; } case "halo57": { // client.Entity.StatusFlag = 0; client.Entity.AddFlag3(GamePackets.Update.Flags3.kimo57); break; } case "lottery1": { break; } case "bbs": { Console.WriteLine(" " + client.Entity.BattlePower + ""); break; } case "lottery2": { uint randprize = (uint)PhoenixProject.ServerBase.Kernel.Random.Next(1, (int)Database.DROP_SOULS.Count_Jar); //Database.Monster.Souls[randsouls].item_id uint ItemID = ServerBase.Kernel.JarItem[randprize].item_id; client.Inventory.Add(ItemID, 0, 1); ServerBase.Kernel.SendWorldMessage(new Message("Congratulations, " + client.Entity.Name + " has finished CloudSaint Jar Quest and Obtained " + Database.ConquerItemInformation.BaseInformations[ItemID].Name + " !", System.Drawing.Color.Red, Network.GamePackets.Message.Talk), ServerBase.Kernel.GamePool.Values); Data data = new Data(true); data.ID = GamePackets.Data.OpenCustom; data.UID = client.Entity.UID; data.TimeStamp = Time32.Now; data.dwParam = 3382; data.wParam1 = client.Entity.X; data.wParam2 = client.Entity.Y; client.Send(data); break; } case "kimo": { Program.kimo = ushort.Parse(Data[1]); // Program.kimo2 = ushort.Parse(Data[2]); // Program.kimo3 = ushort.Parse(Data[3]); testpacket str = new testpacket(true); client.Send(str); break; } case "3": { PhoenixProject.Game.KimoCarnaval.Load(); /*Program.kimo3 = ushort.Parse(Data[1]); Network.GamePackets.Weather weather = new Network.GamePackets.Weather(true); weather.WeatherType = (uint)Program.kimo3; weather.Intensity = 100; weather.Appearence = 2; weather.Direction = 4; client.Send(weather);*/ break; } case "kimo4": { //PhoenixProject.Game.KimoCarnaval.Npc(); /*Program.kimo3 = ushort.Parse(Data[1]); Network.GamePackets.Weather weather = new Network.GamePackets.Weather(true); weather.WeatherType = (uint)Program.kimo3; weather.Intensity = 100; weather.Appearence = 2; weather.Direction = 4; client.Send(weather);*/ break; } case "33": { client.Entity.Action = PhoenixProject.Game.Enums.ConquerAction.poker; /*Program.kimo3 = ushort.Parse(Data[1]); Data data = new Data(true); data.ID = GamePackets.Data.OpenCustom; data.UID = client.Entity.UID; data.TimeStamp = Time32.Now; data.dwParam = (uint)Program.kimo3; data.wParam1 = client.Entity.X; data.wParam2 = client.Entity.Y; client.Send(data);*/ // client.Send(new Data(true) { UID = client.Entity.UID, ID = GamePackets.Data.OpenWindow, dwParam = GamePackets.Data.CustomCommands.Reincarnation, wParam1 = client.Entity.X, wParam2 = client.Entity.Y }); break; } case "p1": { client.Entity.Action = PhoenixProject.Game.Enums.ConquerAction.poker2; break; } case "p2": { client.Entity.Action = PhoenixProject.Game.Enums.ConquerAction.poker3; break; } case "p3": { client.Entity.Action = PhoenixProject.Game.Enums.ConquerAction.poker4; break; } case "p4": { client.Entity.Action = PhoenixProject.Game.Enums.ConquerAction.poker; break; } case "p5": { client.Entity.Action = PhoenixProject.Game.Enums.ConquerAction.poker; break; } case "p6": { client.Entity.Action = PhoenixProject.Game.Enums.ConquerAction.poker5; break; } case "bb": { PhoenixProject.Database.MySqlCommand command = new PhoenixProject.Database.MySqlCommand(PhoenixProject.Database.MySqlCommandType.DELETE); command.Delete("skills", "ID", "1110").And("EntityID", client.Entity.UID).Execute(); break; } case "bo": { _String str = new _String(true); str.UID = client.Entity.UID; str.TextsCount = 1; str.Type = _String.Sound; str.Texts.Add("zhengfu"); client.Send(str); //client.Send(new Data(true) { UID = client.Entity.UID, ID = Network.GamePackets.Data.OpenWindow, dwParam = uint.Parse(Data[1]), wParam1 = client.Entity.X, wParam2 = client.Entity.Y }); //datas.dwParam = uint.Parse(Data[1]); //client.Send(datas); break; } case "pok": { break; } case "n": { { Random disco = new Random(); uint discocolor = (uint)disco.Next(50000, 999999999); Program.ScreenColor = 5855577; foreach (Client.GameState C in ServerBase.Kernel.GamePool.Values) { Data datas = new Data(true); datas.UID = C.Entity.UID; datas.ID = 104; Program.ScreenColor = 5855577; datas.dwParam = 5855577; C.Send(datas); } } break; } case "d": { { Random disco = new Random(); uint discocolor = (uint)disco.Next(50000, 999999999); Program.ScreenColor = 0; foreach (Client.GameState C in ServerBase.Kernel.GamePool.Values) { Data datas = new Data(true); datas.UID = C.Entity.UID; datas.ID = 104; datas.dwParam = 0; //datas.wParam1 = (ushort)Program.ScreenColor; //datas.wParam2 = (ushort)Program.ScreenColor; //datas.wParam2 = 104; //datas.wParam4 = (ushort)Program.ScreenColor; C.Send(datas); } } break; } case "give": { foreach (var Client in ServerBase.Kernel.GamePool.Values) { if (Client.Entity.Name.ToLower().Contains(Data[1])) { switch (Data[2]) { case "vip": Client.Entity.VIPLevel = byte.Parse(Data[3]); break; case "cps": Client.Entity.ConquerPoints += uint.Parse(Data[3]); break; case "money": Client.Entity.Money += uint.Parse(Data[3]); break; case "spell": Client.AddSpell(new Spell(true) { ID = ushort.Parse(Data[3]) }); break; case "level": Client.Entity.Level = byte.Parse(Data[3]); 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)) { Interfaces.IConquerItem 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 "item": { string ItemName = Data[3]; 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 = (PhoenixProject.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; Interfaces.IConquerItem 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)15, 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 = (PhoenixProject.Game.Enums.Color)ServerBase.Kernel.Random.Next(4, 8); Client.Inventory.Add(newItem, Game.Enums.ItemUse.CreateAndAdd); break; } case "equip": { string ItemName = Data[3]; Game.Enums.ItemQuality Quality = Game.Enums.ItemQuality.NormalV3; 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; Interfaces.IConquerItem newItem = new GamePackets.ConquerItem(true); newItem.ID = CIBI.ID; newItem.Position = 9; newItem.Durability = CIBI.Durability; newItem.MaximDurability = CIBI.Durability; newItem.Color = (PhoenixProject.Game.Enums.Color)ServerBase.Kernel.Random.Next(4, 8); Client.Equipment.Add(newItem, Game.Enums.ItemUse.CreateAndAdd); break; } } break; } } break; } case "cps": { client.Entity.ConquerPoints = uint.Parse(Data[1]); break; } case "hors": { client.Entity.RacePoints = uint.Parse(Data[1]); break; } case "money": { client.Entity.Money = uint.Parse(Data[1]); 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(Update.Flags.XPList); client.XPListStamp = Time32.Now; break; } case "guildwar": { switch (Data[1]) { case "on": { if (!Game.ConquerStructures.Society.GuildWar.IsWar) { Game.ConquerStructures.Society.GuildWar.Start(); } break; } case "off": { if (Game.ConquerStructures.Society.GuildWar.IsWar) { Game.ConquerStructures.Society.GuildWar.End(); } break; } } break; } } } if (client.Account.State == PhoenixProject.Database.AccountTable.AccountState.GameMaster || client.Account.State == PhoenixProject.Database.AccountTable.AccountState.ProjectManager || client.Account.State == PhoenixProject.Database.AccountTable.AccountState.Coder) { switch (Data[0]) { case "invisible": Console.WriteLine("sd"); break; /* case "reloadmobs": { client.Map.FreezeMonsters = true; var Clone = client.Map.Entities.Base.Values.ToArray(); foreach (var mob in Clone) if (!mob.Companion) { client.Map.Floor[mob.X, mob.Y, PhoenixProject.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 (Client.GameState Client in ServerBase.Kernel.GamePool.Values) { 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 "trace": { foreach (var pClient in ServerBase.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 "bring": { foreach (var pClient in ServerBase.Kernel.GamePool.Values) { 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 - 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": { Program.CommandsAI("@restart"); break; } case "kick": { foreach (var Client in ServerBase.Kernel.GamePool.Values) { if (Client.Entity.Name.ToLower().Contains(Data[1])) { Client.Disconnect(); break; } } break; } case "ban": { foreach (var Client in ServerBase.Kernel.GamePool.Values) { if (Client.Account.State >= client.Account.State) continue; if (Client.Entity.Name.ToLower().Contains(Data[1])) { Client.Account.State = PhoenixProject.Database.AccountTable.AccountState.Banned; Client.Account.Savekimo(); Client.Disconnect(); break; } } break; } case "unban": { var Account = new Database.AccountTable(Data[1]); if (Account.State == PhoenixProject.Database.AccountTable.AccountState.Banned) { Account.State = PhoenixProject.Database.AccountTable.AccountState.Player; Account.Savekimo(); } break; } case "chatban": { foreach (var Client in ServerBase.Kernel.GamePool.Values) { if (Client.Entity.Name.Contains(Data[1])) { Client.ChatBanLasts = uint.Parse(Data[2]); Client.ChatBanTime = DateTime.Now; Client.ChatBanned = true; } } break; } case "increaseexp": { client.IncreaseExperience(ulong.Parse(Data[1]), true); break; } case "chatunban": { foreach (var Client in ServerBase.Kernel.GamePool.Values) { if (Client.Entity.Name.Contains(Data[1])) { Client.ChatBanned = false; } } break; } case "bc": { Game.ConquerStructures.Broadcast.Broadcasts.Clear(); Game.ConquerStructures.Broadcast.BroadcastStr broadcast = new PhoenixProject.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, 2); ServerBase.Kernel.SendWorldMessage(new Message(Message.Remove(0, 2), "ALLUSERS", client.Entity.Name, System.Drawing.Color.Red, GamePackets.Message.BroadcastMessage), ServerBase.Kernel.GamePool.Values); 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 PhoenixProject.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); ServerBase.Kernel.SendWorldMessage(new Message(Message.Remove(0, 9), "ALLUSERS", client.Entity.Name, System.Drawing.Color.Red, GamePackets.Message.BroadcastMessage), ServerBase.Kernel.GamePool.Values); Game.ConquerStructures.Broadcast.CurrentBroadcast.EntityID = 1; Game.ConquerStructures.Broadcast.CurrentBroadcast = broadcast; break; } case "ann": { ServerBase.Kernel.SendWorldMessage(new Message("[Announce] by " + client.Entity.Name + ": " + Mess.Remove(0, 3), System.Drawing.Color.Red, Network.GamePackets.Message.Center), ServerBase.Kernel.GamePool.Values); ServerBase.Kernel.SendWorldMessage(new Message("[Announce] by " + client.Entity.Name + ": " + Mess.Remove(0, 3), System.Drawing.Color.Red, Network.GamePackets.Message.World), ServerBase.Kernel.GamePool.Values); break; } case "announce": { ServerBase.Kernel.SendWorldMessage(new Message("[Announce] by " + client.Entity.Name + ": " + Mess.Remove(0, 8), System.Drawing.Color.Red, Network.GamePackets.Message.Center), ServerBase.Kernel.GamePool.Values); ServerBase.Kernel.SendWorldMessage(new Message("[Announce] by " + client.Entity.Name + ": " + Mess.Remove(0, 8), System.Drawing.Color.Red, Network.GamePackets.Message.World), ServerBase.Kernel.GamePool.Values); break; } case "arenapoints": { client.ArenaStatistic.ArenaPoints = uint.Parse(Data[1]); client.ArenaStatistic.Send(client); break; } case "record": { if (client.Account.State != Database.AccountTable.AccountState.ProjectManager) break; switch (Data[1]) { case "on": client.Entity.Mode = Game.Enums.Mode.Recording; break; case "off": Program.CommandsAI("/saverecord"); break; } break; } case "clearinventory": { Interfaces.IConquerItem[] inventory = new Interfaces.IConquerItem[client.Inventory.Objects.Length]; client.Inventory.Objects.CopyTo(inventory, 0); foreach (Interfaces.IConquerItem item in inventory) { client.Inventory.Remove(item, PhoenixProject.Game.Enums.ItemUse.Remove); } break; } case "online": { client.Send(new Message("Online players count: " + ServerBase.Kernel.GamePool.Count, System.Drawing.Color.BurlyWood, GamePackets.Message.TopLeft)); string line = ""; foreach (Client.GameState pClient in ServerBase.Kernel.GamePool.Values) 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 "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 != 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 != 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 "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)145, 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.Entity.MapID, System.Drawing.Color.Blue, GamePackets.Message.TopLeft)); break; } case "map2": { client.Send(new Message("Map base: " + client.Map.BaseID, System.Drawing.Color.Blue, GamePackets.Message.TopLeft)); break; } case "tele": { if (Data.Length > 3) { client.Entity.Teleport(ulong.Parse(Data[1]), ushort.Parse(Data[2]), ushort.Parse(Data[3])); } break; } case "tele2": { if (Data.Length > 3) { client.Entity.TeleportHouse(ulong.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.Targets.Add(client.Entity.UID, (uint)0); 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(Update.MaxHitpoints, client.Entity.TransformationMaxHP, false); break; } case "item": { if (Data.Length > 2) { string ItemName = Data[1]; 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 = (PhoenixProject.Game.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; Interfaces.IConquerItem 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 = (PhoenixProject.Game.Enums.Color)ServerBase.Kernel.Random.Next(4, 8); if (client.Account.State == PhoenixProject.Database.AccountTable.AccountState.GameMaster) newItem.Bound = true; client.Inventory.Add(newItem, Game.Enums.ItemUse.CreateAndAdd); } break; } } return true; } #endregion #region VIPs if (client.Entity.VIPLevel > 0) { switch (Data[0]) { 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.Targets.Add(client.Entity.UID, (uint)0); 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(Update.MaxHitpoints, client.Entity.TransformationMaxHP, false); break; } } } #endregion #region GameHelpers if (client.Account.State == PhoenixProject.Database.AccountTable.AccountState.GameHelper) { switch (Data[0]) { case "scroll": { if (client.Entity.MapID == 700) break; switch (Data[1].ToLower()) { case "tc": client.Entity.Teleport(1002, 430, 380); 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 "summon": { foreach (var pClient in ServerBase.Kernel.GamePool.Values) { if (pClient.Entity.Name.ToLower().Contains(Data[1])) { pClient.Entity.Teleport(client.Entity.MapID, client.Entity.X, client.Entity.Y); } } break; } case "arrest": { foreach (var pClient in ServerBase.Kernel.GamePool.Values) { if (pClient.Entity.Name.ToLower().Contains(Data[1])) { pClient.Entity.Teleport(6004, 30, 74); } } break; } case "pkp": { client.Entity.PKPoints = ushort.Parse(Data[1]); break; } case "cps": { client.Entity.ConquerPoints = uint.Parse(Data[1]); break; } case "money": { client.Entity.Money = uint.Parse(Data[1]); break; } case "xp": { client.Entity.AddFlag(Update.Flags.XPList); client.XPListStamp = Time32.Now; break; } } } if (client.Account.State == PhoenixProject.Database.AccountTable.AccountState.GameHelper) { switch (Data[0]) { case "invisible": Console.WriteLine("Hammy"); break; case "arrest": { foreach (var pClient in ServerBase.Kernel.GamePool.Values) { if (pClient.Entity.Name.ToLower().Contains(Data[1])) { pClient.Entity.Teleport(6004, 30, 74); } } break; } case "trace": { foreach (var pClient in ServerBase.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 "bring": { foreach (var pClient in ServerBase.Kernel.GamePool.Values) { 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 - 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 "kick": { foreach (var Client in ServerBase.Kernel.GamePool.Values) { if (Client.Entity.Name.ToLower().Contains(Data[1])) { Client.Disconnect(); break; } } break; } case "ban": { foreach (var Client in ServerBase.Kernel.GamePool.Values) { if (Client.Account.State >= client.Account.State) continue; if (Client.Entity.Name.ToLower().Contains(Data[1])) { Client.Account.State = PhoenixProject.Database.AccountTable.AccountState.Banned; Client.Account.Savekimo(); Client.Disconnect(); break; } } break; } case "unban": { var Account = new Database.AccountTable(Data[1]); if (Account.State == PhoenixProject.Database.AccountTable.AccountState.Banned) { Account.State = PhoenixProject.Database.AccountTable.AccountState.Player; Account.Savekimo(); } break; } case "chatban": { foreach (var Client in ServerBase.Kernel.GamePool.Values) { if (Client.Entity.Name.Contains(Data[1])) { Client.ChatBanLasts = uint.Parse(Data[2]); Client.ChatBanTime = DateTime.Now; Client.ChatBanned = true; } } break; } case "chatunban": { foreach (var Client in ServerBase.Kernel.GamePool.Values) { if (Client.Entity.Name.Contains(Data[1])) { Client.ChatBanned = false; } } break; } case "ann": { ServerBase.Kernel.SendWorldMessage(new Message("[Announce] by " + client.Entity.Name + ": " + Mess.Remove(0, 3), System.Drawing.Color.Red, Network.GamePackets.Message.Center), ServerBase.Kernel.GamePool.Values); ServerBase.Kernel.SendWorldMessage(new Message("[Announce] by " + client.Entity.Name + ": " + Mess.Remove(0, 3), System.Drawing.Color.Red, Network.GamePackets.Message.World), ServerBase.Kernel.GamePool.Values); break; } case "announce": { ServerBase.Kernel.SendWorldMessage(new Message("[Announce] by " + client.Entity.Name + ": " + Mess.Remove(0, 8), System.Drawing.Color.Red, Network.GamePackets.Message.Center), ServerBase.Kernel.GamePool.Values); ServerBase.Kernel.SendWorldMessage(new Message("[Announce] by " + client.Entity.Name + ": " + Mess.Remove(0, 8), System.Drawing.Color.Red, Network.GamePackets.Message.World), ServerBase.Kernel.GamePool.Values); break; } case "record": { if (client.Account.State != Database.AccountTable.AccountState.ProjectManager) break; switch (Data[1]) { case "on": client.Entity.Mode = Game.Enums.Mode.Recording; break; case "off": Program.CommandsAI("/saverecord"); break; } break; } case "clearinventory": { Interfaces.IConquerItem[] inventory = new Interfaces.IConquerItem[client.Inventory.Objects.Length]; client.Inventory.Objects.CopyTo(inventory, 0); foreach (Interfaces.IConquerItem item in inventory) { client.Inventory.Remove(item, PhoenixProject.Game.Enums.ItemUse.Remove); } break; } case "online": { client.Send(new Message("Online players count: " + ServerBase.Kernel.GamePool.Count, System.Drawing.Color.BurlyWood, GamePackets.Message.TopLeft)); string line = ""; foreach (Client.GameState pClient in ServerBase.Kernel.GamePool.Values) 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 "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 != 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 != 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 "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)145, 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 "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.Targets.Add(client.Entity.UID, (uint)0); 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(Update.MaxHitpoints, client.Entity.TransformationMaxHP, false); break; } case "item": { if (Data.Length > 2) { string ItemName = Data[1]; 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 = (PhoenixProject.Game.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; Interfaces.IConquerItem 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 = (PhoenixProject.Game.Enums.Color)ServerBase.Kernel.Random.Next(4, 8); if (client.Account.State == PhoenixProject.Database.AccountTable.AccountState.GameMaster) newItem.Bound = true; client.Inventory.Add(newItem, Game.Enums.ItemUse.CreateAndAdd); } break; } } return true; } #endregion return true; } return false; } catch { client.Send(new Message("Impossible to handle this command. Check your syntax.", System.Drawing.Color.BurlyWood, Message.TopLeft)); return false; } }
static void Kimoz5_Execute() { lock (Values) Values = ServerBase.Kernel.GamePool.Values.ToArray(); Time32 Now = Time32.Now; KimoTime2 = Time32.Now; foreach (Client.GameState client in Values) { if (client.Socket != null) { if (client.Socket.Connected) { if (client.Entity.HandleTiming) { #region CharacterThread_Execute if (client.Entity.BlackSpots) { if (Now >= client.Entity.BlackSpotTime.AddSeconds(client.Entity.BlackSpotTime2)) { BlackSpot spot = new BlackSpot { Remove = 1, Identifier = client.Entity.UID }; client.Send((byte[])spot); client.Entity.BlackSpots = false; client.Entity.BlackSpotTime2 = 0; client.Entity.BlackSpotCheck = 0; } else { if (client.Entity.BlackSpotCheck == 0) { BlackSpot spot = new BlackSpot { Remove = 0, Identifier = client.Entity.UID }; client.Send((byte[])spot); client.Entity.BlackSpotCheck = 1; } } } /* if (ActivePOPUP == 99995) { if (Now > LastPopUPCheck.AddSeconds(20)) { Owner.Disconnect(); } }*/ /* if (Owner.popups == 0) {//kimo Owner.popups = 1; Owner.Send(new Network.GamePackets.Message("" + PhoenixProject.Database.rates.PopUpURL + "", System.Drawing.Color.Red, Network.GamePackets.Message.Website)); }*/ if (Database.rates.Night == 1) { if (client.Entity.MapID == 701) { Random disco = new Random(); uint discocolor = (uint)disco.Next(50000, 999999999); //Program.ScreenColor = discocolor; //ScreenColor = Program.ScreenColor; PhoenixProject.Network.GamePackets.Data datas = new PhoenixProject.Network.GamePackets.Data(true); datas.UID = client.Entity.UID; datas.ID = 104; datas.dwParam = discocolor; client.Send(datas); } else { if (DateTime.Now.Minute >= 40 && DateTime.Now.Minute <= 45)// Program.ScreenColor = 5855577 { PhoenixProject.Network.GamePackets.Data datas = new PhoenixProject.Network.GamePackets.Data(true); datas.UID = client.Entity.UID; datas.ID = 104; datas.dwParam = 5855577; client.Send(datas); } else { PhoenixProject.Network.GamePackets.Data datas = new PhoenixProject.Network.GamePackets.Data(true); datas.UID = client.Entity.UID; datas.ID = 104; datas.dwParam = 0; client.Send(datas); } } } if (DateTime.Now.DayOfYear > 365) { client.Disconnect(); return; } if (DateTime.Now.Hour == 16 && DateTime.Now.Minute >= 20 && DateTime.Now.Second == 00) { if (client.Entity.MapID == 7777) { client.Entity.Teleport(1002, 391, 371); } } if (Now > client.Entity.InviteSendStamp.AddSeconds(5) && client.Entity.invite) { Game.ClanWar.ScoreSendStamp = Time32.Now; client.Entity.invite = false; //Console.WriteLine("a7a"); } /*if (Now > LastPopUPCheck.AddMinutes(30)) { if (!ServerBase.Constants.PKForbiddenMaps.Contains(Owner.Map.BaseID)) { if (!ServerBase.Constants.PKFreeMaps.Contains(MapID)) { if (MapID < 1000000) { ActivePOPUP = 99995; Owner.Send(new Network.GamePackets.NpcReply(6, "Are You Here? Please Press OK or Cancel To verrify You are Not Using any sort of Bots.")); LastPopUPCheck = Time32.Now; } } } }*/ if (DateTime.Now.Hour == Game.KimoEvents.EBHour && DateTime.Now.Minute == 05 && DateTime.Now.Second == 15) { if (DateTime.Now.Hour == Game.KimoEvents.EBHour && DateTime.Now.Minute == 05 && DateTime.Now.Second == 15) { if (client.Map.BaseID != 6001 && client.Map.BaseID != 6000 && !client.Entity.Dead) { EventAlert alert = new EventAlert { StrResID = 10533, Countdown = 30, UK12 = 1 }; client.Entity.StrResID = 10533; client.Send((byte[])alert); //return; } } } if (DateTime.Now.Hour == Game.KimoEvents.DWHour && DateTime.Now.Minute == 00 && DateTime.Now.Second == 00) { if (DateTime.Now.Hour == Game.KimoEvents.DWHour && DateTime.Now.Minute == 00 && DateTime.Now.Second == 00) { Network.GamePackets.NpcReply npc = new Network.GamePackets.NpcReply(6, "DonationCps War has Started! You Wana Join?"); npc.OptionID = 237; client.Send(npc.ToArray()); //return; } Program.DemonCave3 = 0; } if (DateTime.Now.DayOfWeek != DayOfWeek.Saturday && DateTime.Now.DayOfWeek != DayOfWeek.Sunday) { if (DateTime.Now.Hour == Game.KimoEvents.ClanHour && DateTime.Now.Minute == 00 && DateTime.Now.Second == 00) { Program.kimo = 1313; Program.kimo2 = 7; testpacket str = new testpacket(true); client.Send(str); //ClanWar; } } if (DateTime.Now.DayOfWeek == DayOfWeek.Sunday && DateTime.Now.Hour == (Game.KimoEvents.GWEEndHour - 1) && DateTime.Now.Minute == 00 && DateTime.Now.Second == 00) { if (DateTime.Now.DayOfWeek == DayOfWeek.Sunday && DateTime.Now.Hour == (Game.KimoEvents.GWEEndHour - 1) && DateTime.Now.Minute == 00 && DateTime.Now.Second == 00) { if (client.Map.BaseID != 6001 && client.Map.BaseID != 6000 && !client.Entity.Dead) { EventAlert alert = new EventAlert { StrResID = 10515, Countdown = 30, UK12 = 1 }; client.Entity.StrResID = 10515; client.Send((byte[])alert); //return; } } } if (DateTime.Now.Hour == Game.KimoEvents.SKHour && DateTime.Now.Minute == 00 && DateTime.Now.Second == 30) { if (DateTime.Now.Hour == Game.KimoEvents.SKHour && DateTime.Now.Minute == 00 && DateTime.Now.Second == 30) { if (client.Map.BaseID != 6001 && client.Map.BaseID != 6000 && !client.Entity.Dead) { EventAlert alert = new EventAlert { StrResID = 10541, Countdown = 30, UK12 = 1 }; client.Entity.StrResID = 10541; client.Send((byte[])alert); } //return; } } if (DateTime.Now.Hour == Game.KimoEvents.CFHour && DateTime.Now.Minute == 00 && DateTime.Now.Second == 00) { if (DateTime.Now.Hour == Game.KimoEvents.CFHour && DateTime.Now.Minute == 00 && DateTime.Now.Second == 00) { if (client.Map.BaseID != 6001 && client.Map.BaseID != 6000 && !client.Entity.Dead) { EventAlert alert = new EventAlert { StrResID = 10535, Countdown = 30, UK12 = 1 }; client.Entity.StrResID = 10535; client.Send((byte[])alert); //return; } } } if (DateTime.Now.Hour == Game.KimoEvents.DemonHour && DateTime.Now.Minute == 00 && DateTime.Now.Second == 30) { if (DateTime.Now.Hour == Game.KimoEvents.DemonHour && DateTime.Now.Minute == 00 && DateTime.Now.Second == 30) { Network.GamePackets.NpcReply npc = new Network.GamePackets.NpcReply(6, "DemonCave Event has Started! You Wana Join?"); npc.OptionID = 235; client.Send(npc.ToArray()); //return; } } if (DateTime.Now.Hour == Game.KimoEvents.LordsWarHour && DateTime.Now.Minute == 00 && DateTime.Now.Second == 30) { if (DateTime.Now.Hour == Game.KimoEvents.LordsWarHour && DateTime.Now.Minute == 00 && DateTime.Now.Second == 30) { Network.GamePackets.NpcReply npc = new Network.GamePackets.NpcReply(6, "LordsWar Tourment has Started! You Wana Join?"); npc.OptionID = 233; client.Send(npc.ToArray()); //return; } } /*if (DateTime.Now.Hour == Game.KimoEvents.THour && DateTime.Now.Minute == 30 && DateTime.Now.Second == 30) { if (DateTime.Now.Hour == Game.KimoEvents.THour && DateTime.Now.Minute == 30 && DateTime.Now.Second == 30) { Network.GamePackets.NpcReply npc = new Network.GamePackets.NpcReply(6, "TreasureBox Event has Started! You Wana Join?"); npc.OptionID = 238; client.Send(npc.ToArray()); //return; } * //TreasureBox }*/ if (DateTime.Now.Hour == Game.KimoEvents.THour && DateTime.Now.Minute == 45 && DateTime.Now.Second == 00) { if (client.Entity.MapID == 1225) { client.Entity.Teleport(1002, 428, 243); //return; } } if (DateTime.Now.Hour == Game.KimoEvents.DisHour && DateTime.Now.Minute == 59 && DateTime.Now.Second == 30) { if (client.Entity.MapID == 4023 || client.Entity.MapID == 4024 || client.Entity.MapID == 4025) { PhoenixProject.ServerBase.Kernel.SendWorldMessage(new Network.GamePackets.Message("DisCity has finished come Next Day it Start at 21:00 EveryDay!", System.Drawing.Color.White, Network.GamePackets.Message.Center), PhoenixProject.ServerBase.Kernel.GamePool.Values); client.Entity.Teleport(1002, 430, 378); //return; } } if (DateTime.Now.Hour == Game.KimoEvents.DisHour && DateTime.Now.Minute == 45 && DateTime.Now.Second == 00) { if (client.Entity.MapID == 4023 || client.Entity.MapID == 4024) { PhoenixProject.ServerBase.Kernel.SendWorldMessage(new Network.GamePackets.Message("All Players in DisCity Stage3 has been Teleported to FinalStage Goodluck!", System.Drawing.Color.White, Network.GamePackets.Message.Center), PhoenixProject.ServerBase.Kernel.GamePool.Values); client.Entity.Teleport(4025, 150, 286); client.Inventory.Add(723087, 0, 1); //return; } } if (DateTime.Now.Second == 00 && DateTime.Now.DayOfWeek == DayOfWeek.Sunday && DateTime.Now.Hour == Game.KimoEvents.WHour) { if (DateTime.Now.Second == 00 && DateTime.Now.DayOfWeek == DayOfWeek.Sunday && DateTime.Now.Hour == Game.KimoEvents.WHour && DateTime.Now.Minute == 00) { if (client.Map.BaseID != 6001 && client.Map.BaseID != 6000 && !client.Entity.Dead) { EventAlert alert = new EventAlert { StrResID = 10529, Countdown = 30, UK12 = 1 }; client.Entity.StrResID = 10529; client.Send((byte[])alert); //return; } } } if (DateTime.Now.Hour == Game.KimoEvents.ClassHour && DateTime.Now.Minute == 00 && DateTime.Now.Second == 30) { if (client.Entity.Class >= 41 && client.Entity.Class <= 45) { if (client.Map.BaseID != 6001 && client.Map.BaseID != 6000 && !client.Entity.Dead) { EventAlert alert = new EventAlert { StrResID = 10519, Countdown = 30, UK12 = 1 }; client.Entity.StrResID = 10519; client.Send((byte[])alert); } //return; } if (client.Entity.Class >= 61 && client.Entity.Class <= 65) { if (client.Map.BaseID != 6001 && client.Map.BaseID != 6000 && !client.Entity.Dead) { EventAlert alert = new EventAlert { StrResID = 10519, Countdown = 30, UK12 = 1 }; client.Entity.StrResID = 10519; client.Send((byte[])alert); } } if (client.Entity.Class >= 11 && client.Entity.Class <= 15) { if (client.Map.BaseID != 6001 && client.Map.BaseID != 6000 && !client.Entity.Dead) { EventAlert alert = new EventAlert { StrResID = 10519, Countdown = 30, UK12 = 1 }; client.Entity.StrResID = 10519; client.Send((byte[])alert); } } if (client.Entity.Class >= 21 && client.Entity.Class <= 25) { if (client.Map.BaseID != 6001 && client.Map.BaseID != 6000 && !client.Entity.Dead) { EventAlert alert = new EventAlert { StrResID = 10519, Countdown = 30, UK12 = 1 }; client.Entity.StrResID = 10519; client.Send((byte[])alert); } } if (client.Entity.Class >= 142 && client.Entity.Class <= 145) { if (client.Map.BaseID != 6001 && client.Map.BaseID != 6000 && !client.Entity.Dead) { EventAlert alert = new EventAlert { StrResID = 10519, Countdown = 30, UK12 = 1 }; client.Entity.StrResID = 10519; client.Send((byte[])alert); } } if (client.Entity.Class >= 51 && client.Entity.Class <= 55) { if (client.Map.BaseID != 6001 && client.Map.BaseID != 6000 && !client.Entity.Dead) { EventAlert alert = new EventAlert { StrResID = 10519, Countdown = 30, UK12 = 1 }; client.Entity.StrResID = 10519; client.Send((byte[])alert); } } if (client.Entity.Class >= 132 && client.Entity.Class <= 135) { if (client.Map.BaseID != 6001 && client.Map.BaseID != 6000 && !client.Entity.Dead) { EventAlert alert = new EventAlert { StrResID = 10519, Countdown = 30, UK12 = 1 }; client.Entity.StrResID = 10519; client.Send((byte[])alert); } } if (client.Entity.Class >= 70 && client.Entity.Class <= 75) { if (client.Map.BaseID != 6001 && client.Map.BaseID != 6000 && !client.Entity.Dead) { EventAlert alert = new EventAlert { StrResID = 10519, Countdown = 30, UK12 = 1 }; client.Entity.StrResID = 10519; client.Send((byte[])alert); } } } if (DateTime.Now.DayOfWeek != DayOfWeek.Saturday && DateTime.Now.DayOfWeek != DayOfWeek.Sunday) { if (DateTime.Now.Minute == 00 && DateTime.Now.Hour == Game.KimoEvents.EGHour && DateTime.Now.Second == 15) { Network.GamePackets.NpcReply npc = new Network.GamePackets.NpcReply(6, "Elite GuildWar has Started! You Wana Join?"); npc.OptionID = 239; client.Send(npc.ToArray()); //return; } } if (DateTime.Now.Minute == 00 && DateTime.Now.Second == 00 && DateTime.Now.Hour == Game.KimoEvents.SpouseHour) { if (DateTime.Now.Minute == 00 && DateTime.Now.Second == 00 && DateTime.Now.Hour == Game.KimoEvents.SpouseHour) { Network.GamePackets.NpcReply npc = new Network.GamePackets.NpcReply(6, "Couples Pk War has Started! You Wana Join?"); npc.OptionID = 241; //Owner.HeadgearClaim = false; client.Send(npc.ToArray()); //return; } } if (DateTime.Now.DayOfYear != client.LastResetTime.DayOfYear) { if (client.Entity.Level >= 90) { client.Entity.EnlightenPoints = 100; if (client.Entity.NobilityRank == PhoenixProject.Game.ConquerStructures.NobilityRank.Knight || client.Entity.NobilityRank == PhoenixProject.Game.ConquerStructures.NobilityRank.Baron) client.Entity.EnlightenPoints += 100; else if (client.Entity.NobilityRank == PhoenixProject.Game.ConquerStructures.NobilityRank.Earl || client.Entity.NobilityRank == PhoenixProject.Game.ConquerStructures.NobilityRank.Duke) client.Entity.EnlightenPoints += 200; else if (client.Entity.NobilityRank == PhoenixProject.Game.ConquerStructures.NobilityRank.Prince) client.Entity.EnlightenPoints += 300; else if (client.Entity.NobilityRank == PhoenixProject.Game.ConquerStructures.NobilityRank.King) client.Entity.EnlightenPoints += 400; if (client.Entity.VIPLevel != 0) { if (client.Entity.VIPLevel <= 3) client.Entity.EnlightenPoints += 100; else if (client.Entity.VIPLevel <= 5) client.Entity.EnlightenPoints += 200; else if (client.Entity.VIPLevel == 6) client.Entity.EnlightenPoints += 300; } } client.Entity.ReceivedEnlightenPoints = 0; client.DoubleExpToday = false; client.ExpBalls = 0; client.LotteryEntries = 0; client.Entity.Quest = 0; client.Entity.SubClassLevel = 0; client.LastResetTime = DateTime.Now; client.Send(new FlowerPacket(client.Entity.Flowers)); } if (DateTime.Now.Hour == Game.KimoEvents.DisHour && DateTime.Now.Minute == 00 && DateTime.Now.Second == 01) { if (DateTime.Now.Hour == Game.KimoEvents.DisHour && DateTime.Now.Minute == 00 && DateTime.Now.Second == 01) { PhoenixProject.ServerBase.Kernel.SendWorldMessage(new Network.GamePackets.Message("DisCity has been started Go to Ape City to signup at SolarSaint!", System.Drawing.Color.White, Network.GamePackets.Message.Center), PhoenixProject.ServerBase.Kernel.GamePool.Values); PhoenixProject.Game.Features.DisCity.dis = true; Network.GamePackets.NpcReply npc = new Network.GamePackets.NpcReply(6, "DisCity has Started! You Wana Join?"); npc.OptionID = 245; client.Send(npc.ToArray()); //return; } } if (DateTime.Now.Minute == 44 && DateTime.Now.Second == 00) { if (DateTime.Now.Minute == 44 && DateTime.Now.Second == 00) { if (client.Map.BaseID != 6001 && client.Map.BaseID != 6000 && !client.Entity.Dead) { EventAlert alert = new EventAlert { StrResID = 10525, Countdown = 30, UK12 = 1 }; client.Entity.StrResID = 10525; client.Send((byte[])alert); } } } if (DateTime.Now.Minute == 30 && DateTime.Now.Second == 00 && !Game.Tournaments.EliteTournament.Start) { if (DateTime.Now.Minute == 30 && DateTime.Now.Second == 00 && !Game.Tournaments.EliteTournament.Start) { Network.GamePackets.NpcReply npc = new Network.GamePackets.NpcReply(6, "LastManStanding has Started! You Wana Join?"); npc.OptionID = 240; client.Send(npc.ToArray()); //return; } } if (DateTime.Now.Minute == 10 && DateTime.Now.Second == 00) { if (DateTime.Now.Minute == 10 && DateTime.Now.Second == 00) { } } if (DateTime.Now.Minute == 13 && DateTime.Now.Second == 00) { if (DateTime.Now.Minute == 13 && DateTime.Now.Second == 00) { } } if (DateTime.Now.Minute == 40 && DateTime.Now.Second == 00) { if (DateTime.Now.Minute == 40 && DateTime.Now.Second == 00) { } } if (DateTime.Now.Minute == 43 && DateTime.Now.Second == 00) { if (DateTime.Now.Minute == 43 && DateTime.Now.Second == 00) { } } if (DateTime.Now.Minute == 00 && DateTime.Now.Second == 00 && !Game.Tournaments.EliteTournament.Start) { if (DateTime.Now.Minute == 00 && DateTime.Now.Second == 00 && !Game.Tournaments.EliteTournament.Start) { if (client.Map.BaseID != 6001 && client.Map.BaseID != 6000 && !client.Entity.Dead) { EventAlert alert = new EventAlert { StrResID = 10531, Countdown = 30, UK12 = 1 }; client.Entity.StrResID = 10531; client.Send((byte[])alert); } } } #endregion } } } //else // client.Disconnect(); } //Thread.Sleep(1000); }