public static void LuckyBox(uint npcID, Client.GameState client, bool Jade = false)
public static void LuckyBox(uint npcID, Client.GameState client, bool Jade = false) { if (client.Entity.ConquerPoints >= 0 || Jade) { if (Jade || client.Inventory.Contains(711504, 3)) { if (!Jade) { client.LotteryEntries++; } else { client.Entity.LotteryJadeAdd++; } if ((npcID != 0) && !Jade) { _String packet = new _String(true); packet.UID = npcID; packet.TextsCount = 1; packet.Type = _String.Effect; packet.Texts.Add("lottery"); client.Send(packet); if (client.Entity.LotteryItemID > 0) { } } tryagain: int rand = Kernel.Random.Next(Database.LotteryTable.LotteryItems.Count); var item = Database.LotteryTable.LotteryItems[rand]; var Itemd = Database.ConquerItemInformation.BaseInformations[item.ID]; if (Itemd == null) goto tryagain; if (Kernel.Rate(item.Rank, item.Chance) && Kernel.Rate(item.Rank, 35 - item.Rank)) { ConquerItem Item = new ConquerItem(true); Item.ID = item.ID; client.Entity.LotteryItemID = item.ID; client.Entity.LotteryItemPlus = item.Plus; client.Entity.LotteryItemColor = (byte)Game.Enums.Color.Blue; Item.Plus = item.Plus; Item.Color = Game.Enums.Color.Blue; if (item.Sockets > 0) { Item.SocketOne = Game.Enums.Gem.EmptySocket; client.Entity.LotteryItemSoc1 = 255; } if (item.Sockets > 1) { Item.SocketTwo = Game.Enums.Gem.EmptySocket; client.Entity.LotteryItemSoc2 = 255; } Item.Durability = Item.MaximDurability = Itemd.Durability; if ((Item != null)) { if (!Jade) { if (client.Inventory.Contains(711504, 3)) { client.Inventory.Remove(711504, 3); } else { return; } } else if (client.Inventory.Contains(711504, 1)) { client.Inventory.Remove(711504, 1); } else { return; } client.Entity.LotteryPrize = Item; Rayzo.Network.GamePackets.Lottery rider = new Rayzo.Network.GamePackets.Lottery { Color = (Enums.Color)1, Plus = Item.Plus, Prize = Item.ID, SocketOne = 0, SocketTwo = 0, AddJadeChances = 2, Type = (Network.GamePackets.Lottery.LotteryTypes)259 }; rider.Send(client); } else { } } else { goto tryagain; } } else { string msg = string.Format("You need 3 Small Lottery Tickets to try at the lottery!", client.Entity.Name, client.Entity.Name); client.Send(new Message(msg, System.Drawing.Color.White, Message.Talk)); } } else { string msg = string.Format("You have used up all your lottery attempts today! But if you have a LotteryTicket you can exchange it for another try from Lady Luck!", client.Entity.Name, client.Entity.Name); client.Send(new Message(msg, System.Drawing.Color.White, Message.Talk)); } }