summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/emap/init.c1
-rw-r--r--src/emap/script_buildins.c8
-rw-r--r--src/emap/script_buildins.h1
3 files changed, 10 insertions, 0 deletions
diff --git a/src/emap/init.c b/src/emap/init.c
index 3806aee..85d9bc5 100644
--- a/src/emap/init.c
+++ b/src/emap/init.c
@@ -194,6 +194,7 @@ HPExport void plugin_init (void)
addScriptCommand("getitemoptionvaluebyindex", "ii", getItemOptionValueByIndex);
addScriptCommand("getitemoptionparambyindex", "ii", getItemOptionParamByIndex);
addScriptCommand("setitemoptionbyindex", "iii*", setItemOptionByIndex);
+ addScriptCommand("isinstance", "i", isInstance);
do_init_langs();
diff --git a/src/emap/script_buildins.c b/src/emap/script_buildins.c
index ed6c6c1..520f16f 100644
--- a/src/emap/script_buildins.c
+++ b/src/emap/script_buildins.c
@@ -13,6 +13,7 @@
#include "common/timer.h"
#include "map/chat.h"
#include "map/chrif.h"
+#include "map/instance.h"
#include "map/npc.h"
#include "map/pc.h"
#include "map/script.h"
@@ -2246,3 +2247,10 @@ BUILDIN(setItemOptionByIndex)
return true;
}
+
+BUILDIN(isInstance)
+{
+ const int instance_id = script_getnum(st, 2);
+ script_pushint(st, instance->valid(instance_id) ? 1 : 0);
+ return true;
+}
diff --git a/src/emap/script_buildins.h b/src/emap/script_buildins.h
index 91b02b3..176feb0 100644
--- a/src/emap/script_buildins.h
+++ b/src/emap/script_buildins.h
@@ -93,5 +93,6 @@ BUILDIN(getItemOptionIdByIndex);
BUILDIN(getItemOptionValueByIndex);
BUILDIN(getItemOptionParamByIndex);
BUILDIN(setItemOptionByIndex);
+BUILDIN(isInstance);
#endif // EVOL_MAP_SCRIPT_BUILDINS