summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--npc/025-3/barriers.txt165
-rw-r--r--npc/025-4/Battlecaves.txt1
2 files changed, 153 insertions, 13 deletions
diff --git a/npc/025-3/barriers.txt b/npc/025-3/barriers.txt
index 850d7c07..a5728b53 100644
--- a/npc/025-3/barriers.txt
+++ b/npc/025-3/barriers.txt
@@ -42,7 +42,7 @@ OnTimer5000:
if (isloggedin(getcharid(3,$@cave1fighter$))==0) goto L_CleaningNorid;
attachrid(getcharid(3,$@cave1fighter$));
if (gettimetick(2) - $@cave1start >= $@CAVE1_TIME) goto L_Cleaning;
- if (PC_DIE_COUNTER > $@cave1fighterdeaths) goto L_Cleaning;
+ if (PC_DIE_COUNTER > $@cave1fighterdeaths) goto L_CleaningDead;
setnpctimer 0;
end;
@@ -60,6 +60,20 @@ L_Cleaning:
setnpctimer 0;
end;
+L_CleaningDead:
+ attachrid(getcharid(3,$@cave1fighter$));
+ warp "025-3.gat", 78, 129;
+ message strcharinfo(0), "I'm dead.";
+ set $@wave_cave1, 0;
+ set $@cave1_kills, 0;
+ set $@cave1start, 0;
+ set $@cave1fighter$, "";
+ set $@cave1fighterdeaths$, 0;
+ killmonster "025-4.gat", "#StartCaveFight1::OnMonsterDeath";
+ stopnpctimer;
+ setnpctimer 0;
+ end;
+
L_CleaningNorid:
set $@wave_cave1, 0;
set $@cave1_kills, 0;
@@ -122,7 +136,7 @@ OnTimer5000:
if (isloggedin(getcharid(3,$@cave2fighter$))==0) goto L_CleaningNorid;
attachrid(getcharid(3,$@cave2fighter$));
if (gettimetick(2) - $@cave2start >= $@CAVE2_TIME) goto L_Cleaning;
- if (PC_DIE_COUNTER > $@cave2fighterdeaths) goto L_Cleaning;
+ if (PC_DIE_COUNTER > $@cave2fighterdeaths) goto L_CleaningDead;
setnpctimer 0;
end;
@@ -140,6 +154,20 @@ L_Cleaning:
setnpctimer 0;
end;
+L_CleaningDead:
+ attachrid(getcharid(3,$@cave2fighter$));
+ warp "025-3.gat", 53, 109;
+ message strcharinfo(0), "I'm dead.";
+ set $@wave_cave2, 0;
+ set $@cave2_kills, 0;
+ set $@cave2start, 0;
+ set $@cave2fighter$, "";
+ set $@cave2fighterdeaths$, 0;
+ killmonster "025-4.gat", "#StartCaveFight2::OnMonsterDeath";
+ stopnpctimer;
+ setnpctimer 0;
+ end;
+
L_CleaningNorid:
set $@wave_cave2, 0;
set $@cave2_kills, 0;
@@ -201,7 +229,7 @@ OnTimer5000:
if (isloggedin(getcharid(3,$@cave3fighter$))==0) goto L_CleaningNorid;
attachrid(getcharid(3,$@cave3fighter$));
if (gettimetick(2) - $@cave3start >= $@CAVE3_TIME) goto L_Cleaning;
- if (PC_DIE_COUNTER > $@cave3fighterdeaths) goto L_Cleaning;
+ if (PC_DIE_COUNTER > $@cave3fighterdeaths) goto L_CleaningDead;
setnpctimer 0;
end;
@@ -219,6 +247,20 @@ L_Cleaning:
setnpctimer 0;
end;
+L_CleaningDead:
+ attachrid(getcharid(3,$@cave3fighter$));
+ warp "025-3.gat", 71, 85;
+ message strcharinfo(0), "I'm dead.";
+ set $@wave_cave3, 0;
+ set $@cave3_kills, 0;
+ set $@cave3start, 0;
+ set $@cave3fighter$, "";
+ set $@cave3fighterdeaths$, 0;
+ killmonster "025-4.gat", "#StartCaveFight3::OnMonsterDeath";
+ stopnpctimer;
+ setnpctimer 0;
+ end;
+
L_CleaningNorid:
set $@wave_cave3, 0;
set $@cave3_kills, 0;
@@ -280,7 +322,7 @@ OnTimer5000:
if (isloggedin(getcharid(3,$@cave4fighter$))==0) goto L_CleaningNorid;
attachrid(getcharid(3,$@cave4fighter$));
if (gettimetick(2) - $@cave4start >= $@CAVE4_TIME) goto L_Cleaning;
- if (PC_DIE_COUNTER > $@cave4fighterdeaths) goto L_Cleaning;
+ if (PC_DIE_COUNTER > $@cave4fighterdeaths) goto L_CleaningDead;
setnpctimer 0;
end;
@@ -298,6 +340,20 @@ L_Cleaning:
setnpctimer 0;
end;
+L_CleaningDead:
+ attachrid(getcharid(3,$@cave4fighter$));
+ warp "025-3.gat", 80, 85;
+ message strcharinfo(0), "I'm dead.";
+ set $@wave_cave4, 0;
+ set $@cave4_kills, 0;
+ set $@cave4start, 0;
+ set $@cave4fighter$, "";
+ set $@cave4fighterdeaths$, 0;
+ killmonster "025-4.gat", "#StartCaveFight4::OnMonsterDeath";
+ stopnpctimer;
+ setnpctimer 0;
+ end;
+
L_CleaningNorid:
set $@wave_cave4, 0;
set $@cave4_kills, 0;
@@ -359,7 +415,7 @@ OnTimer5000:
if (isloggedin(getcharid(3,$@cave5fighter$))==0) goto L_CleaningNorid;
attachrid(getcharid(3,$@cave5fighter$));
if (gettimetick(2) - $@cave5start >= $@CAVE5_TIME) goto L_Cleaning;
- if (PC_DIE_COUNTER > $@cave5fighterdeaths) goto L_Cleaning;
+ if (PC_DIE_COUNTER > $@cave5fighterdeaths) goto L_CleaningDead;
setnpctimer 0;
end;
@@ -377,6 +433,20 @@ L_Cleaning:
setnpctimer 0;
end;
+L_CleaningDead:
+ attachrid(getcharid(3,$@cave5fighter$));
+ warp "025-3.gat", 71, 32;
+ message strcharinfo(0), "I'm dead.";
+ set $@wave_cave5, 0;
+ set $@cave5_kills, 0;
+ set $@cave5start, 0;
+ set $@cave5fighter$, "";
+ set $@cave5fighterdeaths$, 0;
+ killmonster "025-4.gat", "#StartCaveFight5::OnMonsterDeath";
+ stopnpctimer;
+ setnpctimer 0;
+ end;
+
L_CleaningNorid:
set $@wave_cave5, 0;
set $@cave5_kills, 0;
@@ -438,7 +508,7 @@ OnTimer5000:
if (isloggedin(getcharid(3,$@cave6fighter$))==0) goto L_CleaningNorid;
attachrid(getcharid(3,$@cave6fighter$));
if (gettimetick(2) - $@cave6start >= $@CAVE6_TIME) goto L_Cleaning;
- if (PC_DIE_COUNTER > $@cave6fighterdeaths) goto L_Cleaning;
+ if (PC_DIE_COUNTER > $@cave6fighterdeaths) goto L_CleaningDead;
setnpctimer 0;
end;
@@ -456,6 +526,20 @@ L_Cleaning:
setnpctimer 0;
end;
+L_CleaningDead:
+ attachrid(getcharid(3,$@cave6fighter$));
+ warp "025-3.gat", 128, 37;
+ message strcharinfo(0), "I'm dead.";
+ set $@wave_cave6, 0;
+ set $@cave6_kills, 0;
+ set $@cave6start, 0;
+ set $@cave6fighter$, "";
+ set $@cave6fighterdeaths$, 0;
+ killmonster "025-4.gat", "#StartCaveFight6::OnMonsterDeath";
+ stopnpctimer;
+ setnpctimer 0;
+ end;
+
L_CleaningNorid:
set $@wave_cave6, 0;
set $@cave6_kills, 0;
@@ -517,7 +601,7 @@ OnTimer5000:
if (isloggedin(getcharid(3,$@cave7fighter$))==0) goto L_CleaningNorid;
attachrid(getcharid(3,$@cave7fighter$));
if (gettimetick(2) - $@cave7start >= $@CAVE7_TIME) goto L_Cleaning;
- if (PC_DIE_COUNTER > $@cave7fighterdeaths) goto L_Cleaning;
+ if (PC_DIE_COUNTER > $@cave7fighterdeaths) goto L_CleaningDead;
setnpctimer 0;
end;
@@ -535,6 +619,20 @@ L_Cleaning:
setnpctimer 0;
end;
+L_CleaningDead:
+ attachrid(getcharid(3,$@cave7fighter$));
+ warp "025-3.gat", 70, 59;
+ message strcharinfo(0), "I'm dead.";
+ set $@wave_cave7, 0;
+ set $@cave7_kills, 0;
+ set $@cave7start, 0;
+ set $@cave7fighter$, "";
+ set $@cave7fighterdeaths$, 0;
+ killmonster "025-4.gat", "#StartCaveFight7::OnMonsterDeath";
+ stopnpctimer;
+ setnpctimer 0;
+ end;
+
L_CleaningNorid:
set $@wave_cave7, 0;
set $@cave7_kills, 0;
@@ -596,7 +694,7 @@ OnTimer5000:
if (isloggedin(getcharid(3,$@cave8fighter$))==0) goto L_CleaningNorid;
attachrid(getcharid(3,$@cave8fighter$));
if (gettimetick(2) - $@cave8start >= $@CAVE8_TIME) goto L_Cleaning;
- if (PC_DIE_COUNTER > $@cave8fighterdeaths) goto L_Cleaning;
+ if (PC_DIE_COUNTER > $@cave8fighterdeaths) goto L_CleaningDead;
setnpctimer 0;
end;
@@ -614,6 +712,20 @@ L_Cleaning:
setnpctimer 0;
end;
+L_CleaningDead:
+ attachrid(getcharid(3,$@cave8fighter$));
+ warp "025-3.gat", 138, 94;
+ message strcharinfo(0), "I'm dead.";
+ set $@wave_cave8, 0;
+ set $@cave8_kills, 0;
+ set $@cave8start, 0;
+ set $@cave8fighter$, "";
+ set $@cave8fighterdeaths$, 0;
+ killmonster "025-4.gat", "#StartCaveFight8::OnMonsterDeath";
+ stopnpctimer;
+ setnpctimer 0;
+ end;
+
L_CleaningNorid:
set $@wave_cave8, 0;
set $@cave8_kills, 0;
@@ -675,7 +787,7 @@ OnTimer5000:
if (isloggedin(getcharid(3,$@cave9fighter$))==0) goto L_CleaningNorid;
attachrid(getcharid(3,$@cave9fighter$));
if (gettimetick(2) - $@cave9start >= $@CAVE9_TIME) goto L_Cleaning;
- if (PC_DIE_COUNTER > $@cave9fighterdeaths) goto L_Cleaning;
+ if (PC_DIE_COUNTER > $@cave9fighterdeaths) goto L_CleaningDead;
setnpctimer 0;
end;
@@ -693,6 +805,20 @@ L_Cleaning:
setnpctimer 0;
end;
+L_CleaningDead:
+ attachrid(getcharid(3,$@cave9fighter$));
+ warp "025-3.gat", 138, 158;
+ message strcharinfo(0), "I'm dead.";
+ set $@wave_cave9, 0;
+ set $@cave9_kills, 0;
+ set $@cave9start, 0;
+ set $@cave9fighter$, "";
+ set $@cave9fighterdeaths$, 0;
+ killmonster "025-4.gat", "#StartCaveFight9::OnMonsterDeath";
+ stopnpctimer;
+ setnpctimer 0;
+ end;
+
L_CleaningNorid:
set $@wave_cave9, 0;
set $@cave9_kills, 0;
@@ -724,8 +850,7 @@ L_AlreadyClean:
end;
L_StartFight:
- if (Boss_10 != 1) message strcharinfo(0), "You hear screams, they seem to be very close from where you stand.";
- set Boss_10, 1;
+ message strcharinfo(0), "You hear screams, they seem to be very close from where you stand.";
set $@battlebosscave, 1;
warp "025-4.gat", 157, 46;
set $@cave10fighter$, strcharinfo(0);
@@ -749,7 +874,7 @@ OnTimer5000:
if (isloggedin(getcharid(3,$@cave10fighter$))==0) goto L_CleaningNorid;
attachrid(getcharid(3,$@cave10fighter$));
if (gettimetick(2) - $@cave10start >= $@CAVE10_TIME) goto L_Cleaning;
- if (PC_DIE_COUNTER > $@cave10fighterdeaths) goto L_Cleaning;
+ if (PC_DIE_COUNTER > $@cave10fighterdeaths) goto L_CleaningDead;
if ($@wave_cave10 == 5) goto L_SummonBoss;
setnpctimer 0;
end;
@@ -769,6 +894,22 @@ L_Cleaning:
setnpctimer 0;
end;
+L_CleaningDead:
+ attachrid(getcharid(3,$@cave10fighter$));
+ warp "025-3.gat", 77, 168;
+ if ($@wave_cave10 < 5) message strcharinfo(0), "I was killed by the normal monsters.";
+ if ($@wave_cave10 == 5) message strcharinfo(0), "I was killed by the boss.";
+ set $@wave_cave10, 0;
+ set $@cave10_kills, 0;
+ set $@cave10start, 0;
+ set $@cave10fighter$, "";
+ set $@cave10fighterdeaths$, 0;
+ killmonster "025-4.gat", "#StartBossCaveFight::OnMonsterDeath";
+ killmonster "025-4.gat", "#StartBossCaveFight::OnBossDeath";
+ stopnpctimer;
+ setnpctimer 0;
+ end;
+
L_CleaningNorid:
set $@wave_cave10, 0;
set $@cave10_kills, 0;
diff --git a/npc/025-4/Battlecaves.txt b/npc/025-4/Battlecaves.txt
index 02f004de..2dd66aa2 100644
--- a/npc/025-4/Battlecaves.txt
+++ b/npc/025-4/Battlecaves.txt
@@ -771,7 +771,6 @@ OnBossDeath:
set $@cave10fighterdeaths$, 0;
message strcharinfo(0), "What a harsh battle! Oh, a golden key, it might open the chest!";
set Rossy_Quest, 16;
- set Boss_10, 0;
end;
onInit: