From e2445670206adcf83387736e08f41675148c38c3 Mon Sep 17 00:00:00 2001 From: Coffee Date: Sun, 10 Jul 2011 16:47:34 -0300 Subject: Fixes a bug that wasn't allowing the player to try the fight after being killed in the boss fight and do some code cleanup. --- world/map/npc/025-4/battlecaves.txt | 277 +++++++++--------------------------- 1 file changed, 68 insertions(+), 209 deletions(-) (limited to 'world/map/npc/025-4/battlecaves.txt') diff --git a/world/map/npc/025-4/battlecaves.txt b/world/map/npc/025-4/battlecaves.txt index 72a4e83d..456a92a2 100644 --- a/world/map/npc/025-4/battlecaves.txt +++ b/world/map/npc/025-4/battlecaves.txt @@ -44,17 +44,6 @@ L_Done: if ($@wave_cave1 < $@CAVE1_WAVES) goto L_Summon; set cavefights, (cavefights ^ BATTLE_CAVE1); end; - -L_Cleaning: - attachrid(getcharid(3,$@cave1fighter$)); - set $@wave_cave1, 0; - set $@cave1_kills, 0; - set $@cave1start, 0; - set $@cave1fighter$, ""; - set $@cave1fighterdeaths$, 0; - set $@battlecave1, 0; - killmonster "025-4.gat", "#StartCaveFight1::OnMonsterDeath"; - end; OnMonsterDeath: set $@cave1_kills, $@cave1_kills + 1; @@ -69,15 +58,77 @@ L_no_root: close; onInit: -// Here you can define the specifics of each battle cave. -// Monsters IDs to be spawned. +// Cave 1 Configuration. + setarray $@CAVE1_MONSTERS_IDS[1], 1087, 1088, 1083, 1084; -// Number of monsters of each ID. setarray $@CAVE1_MONSTERS_QTY[1], 3, 2, 2, 2; -// Number of waves. set $@CAVE1_WAVES, 3; -// Maximum time (in seconds) for the player to finish the fight. set $@CAVE1_TIME, 900; + +// Cave 2 Configuration. + + setarray $@CAVE2_MONSTERS_IDS[1], 1087, 1088, 1083, 1084; + setarray $@CAVE2_MONSTERS_QTY[1], 3, 2, 2, 2; + set $@CAVE2_WAVES, 3; + set $@CAVE2_TIME, 900; + +// Cave 3 Configuration. + + setarray $@CAVE3_MONSTERS_IDS[1], 1087, 1088, 1083, 1084; + setarray $@CAVE3_MONSTERS_QTY[1], 3, 2, 2, 2; + set $@CAVE3_WAVES, 3; + set $@CAVE3_TIME, 900; + +// Cave 4 Configuration. + + setarray $@CAVE4_MONSTERS_IDS[1], 1087, 1088, 1083, 1084; + setarray $@CAVE4_MONSTERS_QTY[1], 3, 2, 2, 2; + set $@CAVE4_WAVES, 3; + set $@CAVE4_TIME, 900; + +// Cave 5 Configuration. + + setarray $@CAVE5_MONSTERS_IDS[1], 1087, 1088, 1083, 1084; + setarray $@CAVE5_MONSTERS_QTY[1], 3, 2, 2, 2; + set $@CAVE5_WAVES, 3; + set $@CAVE5_TIME, 900; + +// Cave 6 Configuration. + + setarray $@CAVE6_MONSTERS_IDS[1], 1087, 1088, 1083, 1084; + setarray $@CAVE6_MONSTERS_QTY[1], 3, 2, 2, 2; + set $@CAVE6_WAVES, 3; + set $@CAVE6_TIME, 900; + +// Cave 7 Configuration. + + setarray $@CAVE7_MONSTERS_IDS[1], 1087, 1088, 1083, 1084; + setarray $@CAVE7_MONSTERS_QTY[1], 3, 2, 2, 2; + set $@CAVE7_WAVES, 3; + set $@CAVE7_TIME, 900; + +// Cave 8 Configuration. + + setarray $@CAVE8_MONSTERS_IDS[1], 1087, 1088, 1083, 1084; + setarray $@CAVE8_MONSTERS_QTY[1], 3, 2, 2, 2; + set $@CAVE8_WAVES, 3; + set $@CAVE8_TIME, 900; + +// Cave 9 Configuration. + + setarray $@CAVE9_MONSTERS_IDS[1], 1087, 1088, 1083, 1084; + setarray $@CAVE9_MONSTERS_QTY[1], 3, 2, 2, 2; + set $@CAVE9_WAVES, 3; + set $@CAVE9_TIME, 900; + +// Cave 10 Configuration. + + setarray $@CAVE10_MONSTERS_IDS[1], 1087, 1088, 1083, 1084; + setarray $@CAVE10_MONSTERS_QTY[1], 3, 2, 2, 2; + set $@BOSS, 1086; + set $@CAVE10_WAVES, 4; + set $@CAVE10_TIME, 1500; + } // --------------------- Cave 1 Checker ---------------------------- @@ -139,17 +190,6 @@ L_Done: set cavefights, (cavefights ^ BATTLE_CAVE2); end; -L_Cleaning: - attachrid(getcharid(3,$@cave2fighter$)); - set $@wave_cave2, 0; - set $@cave2_kills, 0; - set $@cave2start, 0; - set $@cave2fighter$, ""; - set $@cave2fighterdeaths$, 0; - set $@battlecave2, 0; - killmonster "025-4.gat", "#StartCaveFight2::OnMonsterDeath"; - end; - OnMonsterDeath: set $@cave2_kills, $@cave2_kills + 1; if ($@cave2_kills >= $@CAVE2_MONSTERS_QTY[1] + $@CAVE2_MONSTERS_QTY[2] + $@CAVE2_MONSTERS_QTY[3]) goto L_Done; @@ -161,17 +201,6 @@ L_Close: L_no_root: mes "I don't have any roots in my inventory!"; close; - -onInit: -// Here you can define the specifics of each battle cave. -// Monsters IDs to be spawned. - setarray $@CAVE2_MONSTERS_IDS[1], 1087, 1088, 1083, 1084; -// Number of monsters of each ID. - setarray $@CAVE2_MONSTERS_QTY[1], 3, 2, 2, 2; -// Number of waves. - set $@CAVE2_WAVES, 3; -// Maximum time (in seconds) for the player to finish the fight. - set $@CAVE2_TIME, 900; } // --------------------- Cave 2 Checker ---------------------------- @@ -231,17 +260,6 @@ L_Done: set cavefights, (cavefights ^ BATTLE_CAVE3); end; -L_Cleaning: - attachrid(getcharid(3,$@cave3fighter$)); - set $@wave_cave3, 0; - set $@cave3_kills, 0; - set $@cave3start, 0; - set $@cave3fighter$, ""; - set $@cave3fighterdeaths$, 0; - set $@battlecave3, 0; - killmonster "025-4.gat", "#StartCaveFight3::OnMonsterDeath"; - end; - OnMonsterDeath: set $@cave3_kills, $@cave3_kills + 1; if ($@cave3_kills >= $@CAVE3_MONSTERS_QTY[1] + $@CAVE3_MONSTERS_QTY[2] + $@CAVE3_MONSTERS_QTY[3]) goto L_Done; @@ -254,16 +272,6 @@ L_no_root: mes "I don't have any roots in my inventory!"; close; -onInit: -// Here you can define the specifics of each battle cave. -// Monsters IDs to be spawned. - setarray $@CAVE3_MONSTERS_IDS[1], 1087, 1088, 1083, 1084; -// Number of monsters of each ID. - setarray $@CAVE3_MONSTERS_QTY[1], 3, 2, 2, 2; -// Number of waves. - set $@CAVE3_WAVES, 3; -// Maximum time (in seconds) for the player to finish the fight. - set $@CAVE3_TIME, 900; } // --------------------- Cave 3 Checker ---------------------------- @@ -322,17 +330,6 @@ L_Done: set cavefights, (cavefights ^ BATTLE_CAVE4); end; -L_Cleaning: - attachrid(getcharid(3,$@cave4fighter$)); - set $@wave_cave4, 0; - set $@cave4_kills, 0; - set $@cave4start, 0; - set $@cave4fighter$, ""; - set $@cave4fighterdeaths$, 0; - set $@battlecave4, 0; - killmonster "025-4.gat", "#StartCaveFight4::OnMonsterDeath"; - end; - OnMonsterDeath: set $@cave4_kills, $@cave4_kills + 1; if ($@cave4_kills >= $@CAVE4_MONSTERS_QTY[1] + $@CAVE4_MONSTERS_QTY[2] + $@CAVE4_MONSTERS_QTY[3]) goto L_Done; @@ -345,16 +342,6 @@ L_no_root: mes "I don't have any roots in my inventory!"; close; -onInit: -// Here you can define the specifics of each battle cave. -// Monsters IDs to be spawned. - setarray $@CAVE4_MONSTERS_IDS[1], 1087, 1088, 1083, 1084; -// Number of monsters of each ID. - setarray $@CAVE4_MONSTERS_QTY[1], 3, 2, 2, 2; -// Number of waves. - set $@CAVE4_WAVES, 3; -// Maximum time (in seconds) for the player to finish the fight. - set $@CAVE4_TIME, 900; } // --------------------- Cave 4 Checker ---------------------------- @@ -414,17 +401,6 @@ L_Done: set cavefights, (cavefights ^ BATTLE_CAVE5); end; -L_Cleaning: - attachrid(getcharid(3,$@cave5fighter$)); - set $@wave_cave5, 0; - set $@cave5_kills, 0; - set $@cave5start, 0; - set $@cave5fighter$, ""; - set $@cave5fighterdeaths$, 0; - set $@battlecave5, 0; - killmonster "025-4.gat", "#StartCaveFight5::OnMonsterDeath"; - end; - OnMonsterDeath: set $@cave5_kills, $@cave5_kills + 1; if ($@cave5_kills >= $@CAVE5_MONSTERS_QTY[1] + $@CAVE5_MONSTERS_QTY[2] + $@CAVE5_MONSTERS_QTY[3]) goto L_Done; @@ -437,16 +413,6 @@ L_no_root: mes "I don't have any roots in my inventory!"; close; -onInit: -// Here you can define the specifics of each battle cave. -// Monsters IDs to be spawned. - setarray $@CAVE5_MONSTERS_IDS[1], 1087, 1088, 1083, 1084; -// Number of monsters of each ID. - setarray $@CAVE5_MONSTERS_QTY[1], 3, 2, 2, 2; -// Number of waves. - set $@CAVE5_WAVES, 3; -// Maximum time (in seconds) for the player to finish the fight. - set $@CAVE5_TIME, 900; } // --------------------- Cave 5 Checker ---------------------------- @@ -506,17 +472,6 @@ L_Done: set cavefights, (cavefights ^ BATTLE_CAVE6); end; -L_Cleaning: - attachrid(getcharid(3,$@cave6fighter$)); - set $@wave_cave6, 0; - set $@cave6_kills, 0; - set $@cave6start, 0; - set $@cave6fighter$, ""; - set $@cave6fighterdeaths$, 0; - set $@battlecave6, 0; - killmonster "025-4.gat", "#StartCaveFight6::OnMonsterDeath"; - end; - OnMonsterDeath: set $@cave6_kills, $@cave6_kills + 1; if ($@cave6_kills >= $@CAVE6_MONSTERS_QTY[1] + $@CAVE6_MONSTERS_QTY[2] + $@CAVE6_MONSTERS_QTY[3]) goto L_Done; @@ -529,16 +484,6 @@ L_no_root: mes "I don't have any roots in my inventory!"; close; -onInit: -// Here you can define the specifics of each battle cave. -// Monsters IDs to be spawned. - setarray $@CAVE6_MONSTERS_IDS[1], 1087, 1088, 1083, 1084; -// Number of monsters of each ID. - setarray $@CAVE6_MONSTERS_QTY[1], 3, 2, 2, 2; -// Number of waves. - set $@CAVE6_WAVES, 3; -// Maximum time (in seconds) for the player to finish the fight. - set $@CAVE6_TIME, 900; } // --------------------- Cave 6 Checker ---------------------------- @@ -599,17 +544,6 @@ L_Done: set cavefights, (cavefights ^ BATTLE_CAVE7); end; -L_Cleaning: - attachrid(getcharid(3,$@cave7fighter$)); - set $@wave_cave7, 0; - set $@cave7_kills, 0; - set $@cave7start, 0; - set $@cave7fighter$, ""; - set $@cave7fighterdeaths$, 0; - set $@battlecave7, 0; - killmonster "025-4.gat", "#StartCaveFight7::OnMonsterDeath"; - end; - OnMonsterDeath: set $@cave7_kills, $@cave7_kills + 1; if ($@cave7_kills >= $@CAVE7_MONSTERS_QTY[1] + $@CAVE7_MONSTERS_QTY[2] + $@CAVE7_MONSTERS_QTY[3]) goto L_Done; @@ -622,16 +556,6 @@ L_no_root: mes "I don't have any roots in my inventory!"; close; -onInit: -// Here you can define the specifics of each battle cave. -// Monsters IDs to be spawned. - setarray $@CAVE7_MONSTERS_IDS[1], 1087, 1088, 1083, 1084; -// Number of monsters of each ID. - setarray $@CAVE7_MONSTERS_QTY[1], 3, 2, 2, 2; -// Number of waves. - set $@CAVE7_WAVES, 3; -// Maximum time (in seconds) for the player to finish the fight. - set $@CAVE7_TIME, 900; } // --------------------- Cave 7 Checker ---------------------------- @@ -692,17 +616,6 @@ L_Done: set cavefights, (cavefights ^ BATTLE_CAVE8); end; -L_Cleaning: - attachrid(getcharid(3,$@cave8fighter$)); - set $@wave_cave8, 0; - set $@cave8_kills, 0; - set $@cave8start, 0; - set $@cave8fighter$, ""; - set $@cave8fighterdeaths$, 0; - set $@battlecave8, 0; - killmonster "025-4.gat", "#StartCaveFight8::OnMonsterDeath"; - end; - OnMonsterDeath: set $@cave8_kills, $@cave8_kills + 1; if ($@cave8_kills >= $@CAVE8_MONSTERS_QTY[1] + $@CAVE8_MONSTERS_QTY[2] + $@CAVE8_MONSTERS_QTY[3]) goto L_Done; @@ -715,16 +628,6 @@ L_no_root: mes "I don't have any roots in my inventory!"; close; -onInit: -// Here you can define the specifics of each battle cave. -// Monsters IDs to be spawned. - setarray $@CAVE8_MONSTERS_IDS[1], 1087, 1088, 1083, 1084; -// Number of monsters of each ID. - setarray $@CAVE8_MONSTERS_QTY[1], 3, 2, 2, 2; -// Number of waves. - set $@CAVE8_WAVES, 3; -// Maximum time (in seconds) for the player to finish the fight. - set $@CAVE8_TIME, 900; } // --------------------- Cave 8 Checker ---------------------------- @@ -784,17 +687,6 @@ L_Done: set cavefights, (cavefights ^ BATTLE_CAVE9); end; -L_Cleaning: - attachrid(getcharid(3,$@cave9fighter$)); - set $@wave_cave9, 0; - set $@cave9_kills, 0; - set $@cave9start, 0; - set $@cave9fighter$, ""; - set $@cave9fighterdeaths$, 0; - set $@battlecave9, 0; - killmonster "025-4.gat", "#StartCaveFight9::OnMonsterDeath"; - end; - OnMonsterDeath: set $@cave9_kills, $@cave9_kills + 1; if ($@cave9_kills >= $@CAVE9_MONSTERS_QTY[1] + $@CAVE9_MONSTERS_QTY[2] + $@CAVE9_MONSTERS_QTY[3]) goto L_Done; @@ -807,16 +699,6 @@ L_no_root: mes "I don't have any roots in my inventory!"; close; -onInit: -// Here you can define the specifics of each battle cave. -// Monsters IDs to be spawned. - setarray $@CAVE9_MONSTERS_IDS[1], 1087, 1088, 1083, 1084; -// Number of monsters of each ID. - setarray $@CAVE9_MONSTERS_QTY[1], 3, 2, 2, 2; -// Number of waves. - set $@CAVE9_WAVES, 3; -// Maximum time (in seconds) for the player to finish the fight. - set $@CAVE9_TIME, 900; } // --------------------- Cave 9 Checker ---------------------------- @@ -879,21 +761,10 @@ L_Done: if ($@wave_cave10 < $@CAVE10_WAVES) goto L_Summon; set $@wave_cave10, 5; + set @boss, 0; startnpctimer; end; -L_Cleaning: - attachrid(getcharid(3,$@cave10fighter$)); - set $@wave_cave10, 0; - set $@cave10_kills, 0; - set $@cave10start, 0; - set $@cave10fighter$, ""; - set $@cave10fighterdeaths$, 0; - set $@battlecave10, 0; - killmonster "025-4.gat", "#StartBossCaveFight::OnMonsterDeath"; - killmonster "025-4.gat", "#StartBossCaveFight::OnBossDeath"; - end; - L_CleaningNorid: stopnpctimer; setnpctimer 0; @@ -935,18 +806,6 @@ L_no_root: mes "I don't have any roots in my inventory!"; close; -onInit: -// Here you can define the specifics of each battle cave. -// Monsters IDs to be spawned. before the boss. - setarray $@CAVE10_MONSTERS_IDS[1], 1087, 1088, 1083, 1084; -// Number of monsters of each ID. - setarray $@CAVE10_MONSTERS_QTY[1], 3, 2, 2, 2; -// ID of the boss monster. - set $@BOSS, 1086; -// Number of waves. before the boss. - set $@CAVE10_WAVES, 4; -// Maximum time (in seconds) for the player to finish the fight. - set $@CAVE10_TIME, 1500; } // --------------------- Boss Cave Checker ---------------------------- -- cgit v1.2.3-60-g2f50