summaryrefslogtreecommitdiff
path: root/world/map/npc/033-1/kimarr.txt
diff options
context:
space:
mode:
Diffstat (limited to 'world/map/npc/033-1/kimarr.txt')
-rw-r--r--world/map/npc/033-1/kimarr.txt23
1 files changed, 16 insertions, 7 deletions
diff --git a/world/map/npc/033-1/kimarr.txt b/world/map/npc/033-1/kimarr.txt
index 6614f273..183d3651 100644
--- a/world/map/npc/033-1/kimarr.txt
+++ b/world/map/npc/033-1/kimarr.txt
@@ -50,23 +50,26 @@
next;
mes "\"You are very small and must be careful in these snowy mountains. It is cold, and dangerous monsters are here.\"";
menu
- "Hello, my name is " + strcharinfo(0) + " and I'm not small. I'm a great warrior!",-,
- "I'm " + strcharinfo(0) + ", don't underestimate me. I'm an experienced adventurer!",-,
- "I'm the legendary " + strcharinfo(0) + ", I've fought countless battles.",-;
+ "Hello, my name is " + strcharinfo(0) + " and I'm not small. I'm a great warrior!",L_Next,
+ "I'm " + strcharinfo(0) + ", don't underestimate me. I'm an experienced adventurer!",L_Next,
+ "I'm the legendary " + strcharinfo(0) + ", I've fought countless battles.",L_Next;
+L_Next:
mes "Kimarr seems to be amused.";
mes "[Kimarr]";
mes "\"Really? Do you want to prove it?\"";
menu
- "Sure! What shall I do?",-,
+ "Sure! What shall I do?",L_Continue,
"No, I don't need to prove anything.",L_Close;
+L_Continue:
mes "\"Every young member of our tribe proves his or her worth by hunting monsters.\"";
next;
mes "\"The first monsters to hunt are Fluffies. Fluffies give a good meal for a young person and the fur can be used to make clothes and blankets.\"";
next;
set @state, 1;
callsub S_Update_Mask;
+ goto L_Explain_Game;
L_Explain_Game:
mes "[Kimarr]";
@@ -82,6 +85,7 @@ L_Explain_Game:
next;
mes "\"Drop more food when no Fluffies are left.\"";
next;
+ goto L_Ask;
// dialog starts here if you've asked about it but not done it (@state == 1)
L_Ask:
@@ -91,8 +95,7 @@ L_Ask:
"Yeah, let's start!",L_Game,
"Could you explain again?",L_Explain_Game,
"Can you tell me who were the most successful Fluffy hunters?",L_ShowRecord,
- "Maybe later.",-;
- goto L_Close;
+ "Maybe later.",L_Close;
L_AlreadyGotReward:
npctalk strcharinfo(0) + " killed " + $@Fluffy_Kills + " Fluffies and has once again proven to be a good hunter.";
@@ -256,6 +259,7 @@ L_BeginHunting:
set $@Fluffy_Spawn, 100 - $@Fluffy_Alive;
if ($@Fluffy_Spawn <= 0)
goto L_ContinueTimer;
+ goto L_SpawnFluffies;
L_SpawnFluffies:
areamonster "033-1.gat", 79, 29, 88, 42, "", 1089, $@Fluffy_Spawn, "Kimarr::OnFluffyDeath";
@@ -311,7 +315,6 @@ OnFluffyDeath:
if (attachrid($@Fluffy_FighterID) == 1)
goto L_Killedall;
goto L_GotOut;
- end;
L_Punish:
if (@MobID == 1089)
@@ -354,6 +357,8 @@ L_MaybeRecordScore:
if ($@Fluffy_Kills < $@Fluffy_Min)
goto L_NotGoodEnough;
set @rank, 0;
+ goto L_MaybeInsertNext;
+
L_MaybeInsertNext:
if ($@Fluffy_Kills > $Record_Fluffy_Kills[@rank])
goto L_InsertScore;
@@ -367,6 +372,8 @@ L_MaybeInsertNext:
L_InsertScore:
set @loop, @rank;
+ goto L_FindLastScore;
+
L_FindLastScore:
// comment this out to allow the player to be in the list more than once
// though actually, it might be better just to assume the list is full
@@ -405,6 +412,8 @@ L_NotGoodEnough:
L_ShowRecord:
set @rank, 0;
set @loop, 0;
+ goto L_ShowNextRecord;
+
L_ShowNextRecord:
if ($Record_Fluffy_Kills[@loop] == 0)
goto L_Close;