mirror of
https://github.com/EQEmu/Server.git
synced 2026-09-02 00:06:36 +00:00
Added direct inventory access, and event_loot for items and event_weapon_proc for items
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
#ifndef EQEMU_LUA_INVENTORY_H
|
||||
#define EQEMU_LUA_INVENTORY_H
|
||||
#ifdef LUA_EQEMU
|
||||
|
||||
#include "lua_ptr.h"
|
||||
|
||||
class Inventory;
|
||||
class Lua_ItemInst;
|
||||
class Lua_Item;
|
||||
|
||||
namespace luabind {
|
||||
struct scope;
|
||||
}
|
||||
|
||||
luabind::scope lua_register_inventory();
|
||||
|
||||
class Lua_Inventory : public Lua_Ptr<void>
|
||||
{
|
||||
typedef Inventory NativeType;
|
||||
public:
|
||||
Lua_Inventory() : Lua_Ptr(nullptr) { }
|
||||
Lua_Inventory(Inventory *d) : Lua_Ptr(d) { }
|
||||
virtual ~Lua_Inventory() { }
|
||||
|
||||
operator Inventory*() {
|
||||
return reinterpret_cast<Inventory*>(GetLuaPtrData());
|
||||
}
|
||||
|
||||
Lua_ItemInst GetItem(int slot_id);
|
||||
Lua_ItemInst GetItem(int slot_id, int bag_slot);
|
||||
int PutItem(int slot_id, Lua_ItemInst item);
|
||||
int PushCursor(Lua_ItemInst item);
|
||||
bool SwapItem(int slot_a, int slot_b);
|
||||
bool DeleteItem(int slot_id);
|
||||
bool DeleteItem(int slot_id, int quantity);
|
||||
bool CheckNoDrop(int slot_id);
|
||||
Lua_ItemInst PopItem(int slot_id);
|
||||
int HasItem(int item_id);
|
||||
int HasItem(int item_id, int quantity);
|
||||
int HasItem(int item_id, int quantity, int where);
|
||||
bool HasSpaceForItem(Lua_Item item, int quantity);
|
||||
int HasItemByUse(int use);
|
||||
int HasItemByUse(int use, uint8 quantity);
|
||||
int HasItemByUse(int use, uint8 quantity, uint8 where);
|
||||
int HasItemByLoreGroup(uint32 loregroup);
|
||||
int HasItemByLoreGroup(uint32 loregroup, int where);
|
||||
int FindFreeSlot(bool for_bag, bool try_cursor);
|
||||
int FindFreeSlot(bool for_bag, bool try_cursor, int min_size);
|
||||
int FindFreeSlot(bool for_bag, bool try_cursor, int min_size, bool is_arrow);
|
||||
int CalcSlotId(int slot_id);
|
||||
int CalcSlotId(int slot_id, int bag_slot);
|
||||
int CalcBagIdx(int slot_id);
|
||||
int CalcSlotFromMaterial(int material);
|
||||
int CalcMaterialFromSlot(int equipslot);
|
||||
bool CanItemFitInContainer(Lua_Item item, Lua_Item container);
|
||||
bool SupportsContainers(int slot_id);
|
||||
};
|
||||
|
||||
#endif
|
||||
#endif
|
||||
Reference in New Issue
Block a user