From 67048ee057d0db912b383601c0fd39412e77e836 Mon Sep 17 00:00:00 2001 From: "madmaxoft@gmail.com" Date: Sun, 27 Jan 2013 03:45:40 +0000 Subject: Added cItems to Lua API. Now HOOK_BLOCK_TO_PICKUPS is fully functional, as demonstrated by HookNotify. git-svn-id: http://mc-server.googlecode.com/svn/trunk@1178 0a769ca7-a7f5-676a-18bf-c427514a06d6 --- source/Item.h | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) (limited to 'source/Item.h') diff --git a/source/Item.h b/source/Item.h index 2a8df9b33..8b78d4610 100644 --- a/source/Item.h +++ b/source/Item.h @@ -120,7 +120,34 @@ public: }; // tolua_end -typedef std::vector cItems; + + + +// This stupid construct is here only so that Lua can access cItems in an API + +class cItems // tolua_export + : public std::vector +{ // tolua_export +public: + // tolua_begin + cItem & Get (int a_Idx) {return at(a_Idx); } + void Set (int a_Idx, const cItem & a_Item) {at(a_Idx) = a_Item; } + void Add (const cItem & a_Item) {push_back(a_Item); } + void Delete(int a_Idx) {erase(begin() + a_Idx); } + void Clear (void) {clear(); } + int Size (void) {return size(); } + + void Add (ENUM_ITEM_ID a_ItemType, char a_ItemCount, short a_ItemHealth) + { + push_back(cItem(a_ItemType, a_ItemCount, a_ItemHealth)); + } + + void Set (int a_Idx, ENUM_ITEM_ID a_ItemType, char a_ItemCount, short a_ItemHealth) + { + at(a_Idx) = cItem(a_ItemType, a_ItemCount, a_ItemHealth); + } + // tolua_end +} ; // tolua_export -- cgit v1.2.3