summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--npc/014-2-2/gemini.txt2
-rw-r--r--npc/014-2-2/valia.txt9
-rw-r--r--npc/034-4/exit.txt12
-rw-r--r--npc/functions/maze.txt2
4 files changed, 21 insertions, 4 deletions
diff --git a/npc/014-2-2/gemini.txt b/npc/014-2-2/gemini.txt
index 6a5e52b72..b70afa707 100644
--- a/npc/014-2-2/gemini.txt
+++ b/npc/014-2-2/gemini.txt
@@ -126,6 +126,8 @@ OnCore:
if (@mystatus)
getexp 512000, 12800;
break;
+ case 16: // Cooldown in progress
+ break;
}
@mystatus = $@VALIA_STATUS[.@p];
}
diff --git a/npc/014-2-2/valia.txt b/npc/014-2-2/valia.txt
index 7c9993af9..6fc933d6b 100644
--- a/npc/014-2-2/valia.txt
+++ b/npc/014-2-2/valia.txt
@@ -65,6 +65,15 @@ function script GeminiKill {
// So close dialog here.
if (BaseLevel < 30) close;
next;
+ if (getcharid(1) >= 1) {
+ if (($@VALIA_STATUS[getcharid(1)] >= 16) &&
+ (gettimetick(2) < (.@t + 14400))) {
+ mesn;
+ mesq l("You are welcome here, but don't overstay your welcome and leave as soon as possible.");
+ mesc l("Please wait %s before trying again.", FuzzyTime(.@t + 14400));
+ close;
+ }
+ }
mesn;
mesq l("I usually don't let anyone in, but I had to make an exception for the likes of you.");
next;
diff --git a/npc/034-4/exit.txt b/npc/034-4/exit.txt
index c695940a5..50904923c 100644
--- a/npc/034-4/exit.txt
+++ b/npc/034-4/exit.txt
@@ -11,8 +11,6 @@ OnWumpus:
.@q = getq2(HurnscaldQuest_Gemini);
// TODO: Maybe exchange an Wumpus Egg for a Sunny Crystal or Mylarin Dust?
// Have a NPC do so only once, for the Savior set.
- // FIXME: A way to exit, maybe a switch, or...?
- // TODO: Once you exit, put the quest in cooldown for 4 hours as well.
if (.@q == 0 || .@q == 2 || (.@q > 5 && !(.@q % 3)))
getitem WumpusEgg, 1;
else
@@ -152,6 +150,7 @@ OnTouch:
freeloop(false);
// Spawn & Configure the boss monster
+ // Defeating the boss yields a bonus
.@mob=areamonster(MAZE_MAP$, 60, 60, .@mx-40, .@my-40, "Wumpus?", PanthomLord, 1, "#GeminiFExit::OnWumpus");
setunitdata(.@mob, UDT_MAXHP, 250000);
setunitdata(.@mob, UDT_HP, 250000);
@@ -159,11 +158,17 @@ OnTouch:
setunitdata(.@mob, UDT_HIT, 3500);
setunitdata(.@mob, UDT_DMOTION, 50);
- // Defeating the boss yields a bonus
+ // TODO: Add the exit
+ // FIXME: A way to exit, maybe a switch, or...?
+ // NOTE: Once you exit, put the quest in cooldown for 4 hours as well.
+
+ // Miscellaneous data
.@old$=getmap();
.@p=getcharid(1);
InitMaze(7200, false);
+ $@VALIA_STATUS[.@p]=16;
sleep2(500);
+ changeplayermusic "Arabesque.ogg";
dispbottom l("It was a trap! We must escape!");
$@VALIA_MAP$[.@p]=getmap();
partytimer(.@old$, 2000, "#GeminiFExit::OnSick", .@p);
@@ -193,6 +198,7 @@ OnSick:
warp MAZE_MAP$, .@x, .@y;
sleep2(500);
+ changeplayermusic "Arabesque.ogg";
dispbottom l("It was a trap! We must escape!");
sleep2(2000);
@forced_sick$ = getmap();
diff --git a/npc/functions/maze.txt b/npc/functions/maze.txt
index 3c5c13857..aafb153a8 100644
--- a/npc/functions/maze.txt
+++ b/npc/functions/maze.txt
@@ -89,7 +89,7 @@ function script InitMaze {
.@mx=getmapinfo(MAPINFO_SIZE_X, MAZE_MAP$)-20;
.@my=getmapinfo(MAPINFO_SIZE_Y, MAZE_MAP$)-20;
} else {
- .@mx=50;
+ .@mx=50; // Wouldn't (30,30) be safer?
.@my=50;
}
do {