summaryrefslogtreecommitdiff
path: root/src/map/script.c
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2014-11-23 17:17:36 +0300
committerAndrei Karas <akaras@inbox.ru>2014-11-23 17:20:33 +0300
commit28d7577356c78a625e2d2016068053325f5337e4 (patch)
tree4668f770d900dd825a40a5dad3b6f344cdbb4781 /src/map/script.c
parent04f16152151c23446a6f358badabeda7b0ea7380 (diff)
downloadplugin-28d7577356c78a625e2d2016068053325f5337e4.tar.gz
plugin-28d7577356c78a625e2d2016068053325f5337e4.tar.bz2
plugin-28d7577356c78a625e2d2016068053325f5337e4.tar.xz
plugin-28d7577356c78a625e2d2016068053325f5337e4.zip
Impliment script command getnpcdir.
Diffstat (limited to 'src/map/script.c')
-rw-r--r--src/map/script.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/map/script.c b/src/map/script.c
index a2f0f8a..ba75561 100644
--- a/src/map/script.c
+++ b/src/map/script.c
@@ -295,3 +295,31 @@ BUILDIN(getq)
script_pushint(st, sd->quest_log[i].count[0]);
return true;
}
+
+BUILDIN(getNpcDir)
+{
+ struct npc_data *nd = 0;
+
+ if (script_hasdata(st, 2))
+ {
+ nd = npc->name2id (script_getstr(st, 2));
+ }
+ if (!nd && !st->oid)
+ {
+ script_pushint(st, -1);
+ return true;
+ }
+
+ if (!nd)
+ nd = (struct npc_data *) map->id2bl (st->oid);
+
+ if (!nd)
+ {
+ script_pushint(st, -1);
+ return true;
+ }
+
+ script_pushint(st, (int)nd->dir);
+
+ return true;
+}