summaryrefslogtreecommitdiff
path: root/src/map/script-fun.cpp
diff options
context:
space:
mode:
authorwushin <pasekei@gmail.com>2015-04-01 01:27:04 -0500
committerwushin <pasekei@gmail.com>2015-04-04 00:27:07 -0500
commit15e4ba4a14d912f70b0862bd1f0af9339dcbc6c0 (patch)
tree428a9ecfeeafe8101057ab6fff6f4b311db8476b /src/map/script-fun.cpp
parent6f4699ff0c6400a2adc5e4008b2e289737f4a303 (diff)
downloadtmwa-15e4ba4a14d912f70b0862bd1f0af9339dcbc6c0.tar.gz
tmwa-15e4ba4a14d912f70b0862bd1f0af9339dcbc6c0.tar.bz2
tmwa-15e4ba4a14d912f70b0862bd1f0af9339dcbc6c0.tar.xz
tmwa-15e4ba4a14d912f70b0862bd1f0af9339dcbc6c0.zip
Remove killer/killable
Death Clears default pvp Add Player Togglable PvP Flag Add Timer to PvP Flag (Anti-Spam) Add getpvpflag builtin
Diffstat (limited to 'src/map/script-fun.cpp')
-rw-r--r--src/map/script-fun.cpp32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/map/script-fun.cpp b/src/map/script-fun.cpp
index 8c25266..bde1458 100644
--- a/src/map/script-fun.cpp
+++ b/src/map/script-fun.cpp
@@ -2175,6 +2175,36 @@ void builtin_pvpoff(ScriptState *st)
}
}
+static
+void builtin_pvp(ScriptState *st)
+{
+ dumb_ptr<map_session_data> sd = script_rid2sd(st);
+ int flag;
+ flag = conv_num(st, &AARG(0));
+ if (flag > 1)
+ flag = 1;
+
+ sd->state.pvpon = flag;
+}
+
+static
+void builtin_getpvpflag(ScriptState *st)
+{
+ dumb_ptr<map_session_data> sd = script_rid2sd(st);
+ int num = conv_num(st, &AARG(0));
+
+ switch (num){
+ case 0:
+ num = sd->state.pvpon;
+ break;
+ case 1:
+ flag = bool(sd->status.option & Opt0::HIDE);
+ break;
+ }
+
+ push_int<ScriptDataInt>(st->stack, num);
+}
+
/*==========================================
* NPCエモーション
*------------------------------------------
@@ -3078,6 +3108,8 @@ BuiltinFunction builtin_functions[] =
BUILTIN(getmapflag, "Mi"_s, 'i'),
BUILTIN(pvpon, "M"_s, '\0'),
BUILTIN(pvpoff, "M"_s, '\0'),
+ BUILTIN(pvp, "i"_s, '\0'),
+ BUILTIN(getpvpflag, "i"_s, 'i'),
BUILTIN(emotion, "i"_s, '\0'),
BUILTIN(mapwarp, "MMxy"_s, '\0'),
BUILTIN(cmdothernpc, "ss"_s, '\0'),