summaryrefslogtreecommitdiff
path: root/src/scripting/luautil.cpp
diff options
context:
space:
mode:
authorErik Schilling <ablu.erikschilling@googlemail.com>2011-08-19 03:00:02 +0800
committerYohann Ferreira <yohann.ferreira@orange.fr>2011-08-19 05:20:09 +0800
commit28c72e31820ca1ccdca927d5484ad4c3a0c28048 (patch)
tree8dec1e46bc27b4fd76713a8d709d0ccb0479561b /src/scripting/luautil.cpp
parent8900f7ccec26fb3e875c922ad5ececf3d6327441 (diff)
downloadmanaserv-28c72e31820ca1ccdca927d5484ad4c3a0c28048.tar.gz
manaserv-28c72e31820ca1ccdca927d5484ad4c3a0c28048.tar.bz2
manaserv-28c72e31820ca1ccdca927d5484ad4c3a0c28048.tar.xz
manaserv-28c72e31820ca1ccdca927d5484ad4c3a0c28048.zip
Created function to make getting monsters easier in scripts.
Diffstat (limited to 'src/scripting/luautil.cpp')
-rw-r--r--src/scripting/luautil.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/scripting/luautil.cpp b/src/scripting/luautil.cpp
index 4a5bee9a..b7680c6b 100644
--- a/src/scripting/luautil.cpp
+++ b/src/scripting/luautil.cpp
@@ -23,6 +23,7 @@
#include "game-server/character.h"
#include "game-server/npc.h"
+#include "game-server/monster.h"
#include "utils/logger.h"
@@ -78,6 +79,16 @@ Character *getCharacter(lua_State *s, int p)
return static_cast<Character *>(t);
}
+Monster *getMonster(lua_State *s, int p)
+{
+ if (!lua_islightuserdata(s, p))
+ return 0;
+ Thing *t = static_cast<Thing *>(lua_touserdata(s, p));
+ if (t->getType() != OBJECT_MONSTER)
+ return 0;
+ return static_cast<Monster *>(t);
+}
+
Being *getBeing(lua_State *s, int p)
{
if (!lua_islightuserdata(s, p))