summaryrefslogtreecommitdiff
path: root/world/map/npc
diff options
context:
space:
mode:
authorgumi <git@gumi.ca>2019-06-04 11:54:03 -0400
committergumi <git@gumi.ca>2019-06-04 11:54:30 -0400
commit2e450c8b476ed9950b52b2c5889f8717bbb71507 (patch)
treebb7195e03b5c0e750316266b0e5ba78ce66bfd7b /world/map/npc
parent6d1b1919f6c2a4ca734b46931817655f0764e40d (diff)
downloadserverdata-2e450c8b476ed9950b52b2c5889f8717bbb71507.tar.gz
serverdata-2e450c8b476ed9950b52b2c5889f8717bbb71507.tar.bz2
serverdata-2e450c8b476ed9950b52b2c5889f8717bbb71507.tar.xz
serverdata-2e450c8b476ed9950b52b2c5889f8717bbb71507.zip
force the speed skill timer to expire on death or logout
Diffstat (limited to 'world/map/npc')
-rw-r--r--world/map/npc/functions/global_event_handler.txt2
-rw-r--r--world/map/npc/functions/miriam.txt21
-rw-r--r--world/map/npc/scripts.conf3
3 files changed, 25 insertions, 1 deletions
diff --git a/world/map/npc/functions/global_event_handler.txt b/world/map/npc/functions/global_event_handler.txt
index 987845bb..fe87b380 100644
--- a/world/map/npc/functions/global_event_handler.txt
+++ b/world/map/npc/functions/global_event_handler.txt
@@ -15,6 +15,7 @@ OnPCLoginEvent:
callfunc "getBroadcast"; // get the scheduled broadcast, if any
addtimer 0, "Magic Timer::OnLogin"; // prevent cast rate abuse
callfunc "MaybeGiveBirthday";
+ callfunc "MiriamExpire"; // force the speed skill quest to expire
// add more here
set @login_event, 2;
end;
@@ -31,6 +32,7 @@ OnPCDieEvent:
set @necromancer, 0;
addtimer 0, "Magic Timer::OnClear"; // reset magic block on death
callfunc "SpawnGhost";
+ callfunc "MiriamExpire"; // force the speed skill quest to expire
set @killerrid, 0; // reset killer rid
end;
diff --git a/world/map/npc/functions/miriam.txt b/world/map/npc/functions/miriam.txt
new file mode 100644
index 00000000..f458784d
--- /dev/null
+++ b/world/map/npc/functions/miriam.txt
@@ -0,0 +1,21 @@
+function|script|MiriamExpire
+{
+ if (QUEST_MIRIAM_start == 0) goto L_Return;
+ set QUEST_MIRIAM_run, gettimetick(2) - QUEST_MIRIAM_start;
+ set QUEST_MIRIAM_start, 0;
+ goto L_Return;
+
+L_Return:
+ return;
+}
+
+function|script|MiriamCheat
+{
+ if (QUEST_MIRIAM_start == 0) goto L_Return;
+ set QUEST_MIRIAM_cheat, 1;
+ callfunc "MiriamExpire";
+ goto L_Return;
+
+L_Return:
+ return;
+}
diff --git a/world/map/npc/scripts.conf b/world/map/npc/scripts.conf
index 5a850bb6..b83692aa 100644
--- a/world/map/npc/scripts.conf
+++ b/world/map/npc/scripts.conf
@@ -22,7 +22,6 @@ npc: npc/functions/lockpicking.txt
npc: npc/functions/default_npc_checks.txt
npc: npc/functions/undead_debug.txt
npc: npc/functions/headstyles.txt
-npc: npc/functions/global_event_handler.txt
npc: npc/functions/stat_reset.txt
npc: npc/functions/quiz.txt
npc: npc/functions/dynamic_menu.txt
@@ -30,6 +29,8 @@ npc: npc/functions/DyeConfig.txt
npc: npc/functions/motd.txt
npc: npc/functions/motdconfig.txt
npc: npc/functions/ghost.txt
+npc: npc/functions/miriam.txt
+npc: npc/functions/global_event_handler.txt
// Item Functions
npc: npc/items/purification_potion.txt