using PhoenixLib.Events; using WingsEmu.Game.Entities; using WingsEmu.Game.Helpers.Damages; using WingsEmu.Game.Maps; namespace WingsEmu.Game.Inventory.Event; public class ThrowItemEvent : IAsyncEvent { public ThrowItemEvent(IBattleEntity battleEntity, int itemVnum, int quantity, int minimumDistance, int maximumDistance) { BattleEntity = battleEntity; ItemVnum = itemVnum; Quantity = quantity; MinimumDistance = minimumDistance; MaximumDistance = maximumDistance; } public IBattleEntity BattleEntity { get; } public int ItemVnum { get; } public int Quantity { get; } public int MinimumDistance { get; } public int MaximumDistance { get; } } public class DropMapItemEvent : IAsyncEvent { public DropMapItemEvent(IMapInstance map, Position position, short vnum, int amount, short design = 0, short rarity = 0, short upgrade = 0, long ownerId = -1, bool isQuest = false) { Map = map; Position = position; Vnum = vnum; Amount = amount; Design = design; Rarity = rarity; Upgrade = upgrade; OwnerId = ownerId; IsQuest = isQuest; } public IMapInstance Map { get; } public Position Position { get; } public short Vnum { get; } public int Amount { get; } public short Design { get; } public short Rarity { get; } public short Upgrade { get; } public long OwnerId { get; } public bool IsQuest { get; } }