public void DropItem(Entity Owner, params uint[] param) { for (int x = 0; x < param.Length; x++) { var infos = ConquerItemInformation.BaseInformations[param[x]]; ushort X = Owner.X, Y = Owner.Y; Game.Map Map = Kernel.Maps[Owner.MapID]; if (Map.SelectCoordonates(ref X, ref Y)) { FloorItem floorItem = new FloorItem(true); floorItem.Item = new ConquerItem(true); floorItem.Item.Color = (Enums.Color)Kernel.Random.Next(4, 8); floorItem.Item.ID = infos.ID; floorItem.Item.Plus = 0; floorItem.Item.StackSize = 1; floorItem.Item.MaxStackSize = infos.StackSize; floorItem.Item.MaximDurability = infos.Durability; floorItem.Item.Durability = infos.Durability; floorItem.Item.MobDropped = true; floorItem.ValueType = FloorItem.FloorValueType.Item; floorItem.ItemID = infos.ID; floorItem.MapID = Owner.MapID; floorItem.MapObjType = Game.MapObjectType.Item; floorItem.X = X; floorItem.Y = Y; floorItem.Owner = Owner.Owner; floorItem.Type = Network.GamePackets.FloorItem.Drop; floorItem.OnFloor = Time32.Now; floorItem.ItemColor = floorItem.Item.Color; floorItem.UID = Network.GamePackets.FloorItem.FloorUID.Next; while (Map.Npcs.ContainsKey(floorItem.UID)) floorItem.UID = Network.GamePackets.FloorItem.FloorUID.Next; Map.AddFloorItem(floorItem); SendScreenSpawn(floorItem); } } }