summaryrefslogtreecommitdiff
path: root/npc/009-1_Hurnscald
diff options
context:
space:
mode:
authorFreeyorp <Freeyorp101@hotmail.com>2010-04-14 15:44:34 +1200
committerFreeyorp <Freeyorp101@hotmail.com>2010-05-24 23:33:30 +1200
commit70de5e23d0be6af225a617b30414ca23aa7e70db (patch)
tree37f58e65b3593f674fb472829f0feffdc6cec298 /npc/009-1_Hurnscald
parent351738249bdb557e2042f80bc1be24323190e649 (diff)
downloadserverdata-70de5e23d0be6af225a617b30414ca23aa7e70db.tar.gz
serverdata-70de5e23d0be6af225a617b30414ca23aa7e70db.tar.bz2
serverdata-70de5e23d0be6af225a617b30414ca23aa7e70db.tar.xz
serverdata-70de5e23d0be6af225a617b30414ca23aa7e70db.zip
Fix a critical exploit
Diffstat (limited to 'npc/009-1_Hurnscald')
-rw-r--r--npc/009-1_Hurnscald/old_woman.txt12
1 files changed, 12 insertions, 0 deletions
diff --git a/npc/009-1_Hurnscald/old_woman.txt b/npc/009-1_Hurnscald/old_woman.txt
index a8d02128..62f427e7 100644
--- a/npc/009-1_Hurnscald/old_woman.txt
+++ b/npc/009-1_Hurnscald/old_woman.txt
@@ -70,6 +70,7 @@ L_NohMask_Fake_Satchel:
L_Easter:
if ((Easter_2010_QuestState >> E10_STATE_ROSE_SHIFT) & E10_STATE_ROSE_MASK == E10_STATE_ROSE_ROSE_COMPLETE) goto L_Easter_Complete;
if ((Easter_2010_QuestState >> E10_STATE_ROSE_SHIFT) & E10_STATE_ROSE_MASK == E10_STATE_ROSE_RETURNED) goto L_Easter_Gaveup;
+ if ((Easter_2010_QuestState >> E10_FLAG_RETURN_READY_SHIFT) & E10_FLAG_RETURN_READY_MASK == E10_FLAG_RETURN_READY) goto L_Defeat_Impossible;
if ((Easter_2010_QuestState & E10_STATE_EGG_MASK) == E10_STATE_EGG_COLLECTING) goto L_Easter_Check;
if ((Easter_2010_QuestState & E10_STATE_EGG_MASK) == E10_STATE_EGG_COLLECTED) goto L_Easter_Reward;
if ((Easter_2010_QuestState & E10_STATE_EGG_MASK) == E10_STATE_EGG_REWARDED) goto L_Easter_Hint;
@@ -172,6 +173,7 @@ L_Easter_Hint:
L_Easter_Complete:
+ if ((Easter_2010_QuestState >> E10_FLAG_RETURN_READY_SHIFT) & E10_FLAG_RETURN_READY_MASK != E10_FLAG_RETURN_READY) goto L_Help_Impossible;
if ((Easter_2010_QuestState >> E10_STATE_REWARDS_SHIFT) & E10_STATE_REWARDS_MASK == 0) goto L_Easter_Complete_New_Rewards;
if ((Easter_2010_QuestState >> E10_STATE_REWARDS_SHIFT) & E10_STATE_REWARDS_MASK == E10_STATE_REWARDS_MASK) goto L_Easter_Done_All;
@@ -275,6 +277,16 @@ L_Hats_No_Room:
mes "\"Please see me again when you are ready, honey.\"";
close;
+L_Help_Impossible:
+ mes "[Old Woman]";
+ mes "She seems confused. \"How did you get back here without defeating the evil force plaguing that world, and without giving up? That shouldn't be possible...\"";
+ close;
+
+L_Defeat_Impossible:
+ mes "[Old Woman]";
+ mes "She seems confused. \"How did you manage to get back here without helping that nice man to fix things, and without giving up? That shouldn't be possible...\"";
+ close;
+
// The all important rose die script. Hooked into the old woman script for now.
OnPCDieEvent:
if (countitem(E10_TOKEN_ID) < 1) end;