diff options
Diffstat (limited to 'world')
-rw-r--r-- | world/map/npc/025-3/barriers.txt | 124 | ||||
-rw-r--r-- | world/map/npc/025-4/battlecaves.txt | 18 |
2 files changed, 139 insertions, 3 deletions
diff --git a/world/map/npc/025-3/barriers.txt b/world/map/npc/025-3/barriers.txt index 46048298..0196b6bf 100644 --- a/world/map/npc/025-3/barriers.txt +++ b/world/map/npc/025-3/barriers.txt @@ -43,12 +43,24 @@ L_Block: OnTimer5000: if ($@battlecave1 == 0) goto L_AlreadyClean; if (isloggedin(getcharid(3,$@cave1fighter$))==0) goto L_CleaningNorid; + if (getareausers("025-4.gat", 26, 63, 60, 97) < 1) goto L_Ranaway; attachrid(getcharid(3,$@cave1fighter$)); if (gettimetick(2) - $@cave1start >= $@CAVE1_TIME) goto L_Cleaning; if (PC_DIE_COUNTER > $@cave1fighterdeaths) goto L_CleaningDead; setnpctimer 0; end; +L_Ranaway: + 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_Cleaning: attachrid(getcharid(3,$@cave1fighter$)); warp "025-3.gat", 78, 129; @@ -141,12 +153,24 @@ L_Block: OnTimer5000: if ($@battlecave2 == 0) goto L_AlreadyClean; if (isloggedin(getcharid(3,$@cave2fighter$))==0) goto L_CleaningNorid; + if (getareausers("025-4.gat", 97, 62, 126, 96) < 1) goto L_Ranaway; attachrid(getcharid(3,$@cave2fighter$)); if (gettimetick(2) - $@cave2start >= $@CAVE2_TIME) goto L_Cleaning; if (PC_DIE_COUNTER > $@cave2fighterdeaths) goto L_CleaningDead; setnpctimer 0; end; +L_Ranaway: + 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_Cleaning: attachrid(getcharid(3,$@cave2fighter$)); warp "025-3.gat", 53, 109; @@ -238,12 +262,24 @@ L_Block: OnTimer5000: if ($@battlecave3 == 0) goto L_AlreadyClean; if (isloggedin(getcharid(3,$@cave3fighter$))==0) goto L_CleaningNorid; + if (getareausers("025-4.gat", 150, 84, 177, 117) < 1) goto L_Ranaway; attachrid(getcharid(3,$@cave3fighter$)); if (gettimetick(2) - $@cave3start >= $@CAVE3_TIME) goto L_Cleaning; if (PC_DIE_COUNTER > $@cave3fighterdeaths) goto L_CleaningDead; setnpctimer 0; end; +L_Ranaway: + 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_Cleaning: attachrid(getcharid(3,$@cave3fighter$)); warp "025-3.gat", 71, 85; @@ -335,12 +371,24 @@ L_Block: OnTimer5000: if ($@battlecave4 == 0) goto L_AlreadyClean; if (isloggedin(getcharid(3,$@cave4fighter$))==0) goto L_CleaningNorid; + if (getareausers("025-4.gat", 28, 124, 57, 156) < 1) goto L_Ranaway; attachrid(getcharid(3,$@cave4fighter$)); if (gettimetick(2) - $@cave4start >= $@CAVE4_TIME) goto L_Cleaning; if (PC_DIE_COUNTER > $@cave4fighterdeaths) goto L_CleaningDead; setnpctimer 0; end; +L_Ranaway: + 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_Cleaning: attachrid(getcharid(3,$@cave4fighter$)); warp "025-3.gat", 80, 85; @@ -432,12 +480,24 @@ L_Block: OnTimer5000: if ($@battlecave5 == 0) goto L_AlreadyClean; if (isloggedin(getcharid(3,$@cave5fighter$))==0) goto L_CleaningNorid; + if (getareausers("025-4.gat", 91, 131, 124, 160) < 1) goto L_Ranaway; attachrid(getcharid(3,$@cave5fighter$)); if (gettimetick(2) - $@cave5start >= $@CAVE5_TIME) goto L_Cleaning; if (PC_DIE_COUNTER > $@cave5fighterdeaths) goto L_CleaningDead; setnpctimer 0; end; +L_Ranaway: + 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_Cleaning: attachrid(getcharid(3,$@cave5fighter$)); warp "025-3.gat", 71, 32; @@ -529,12 +589,24 @@ L_Block: OnTimer5000: if ($@battlecave6 == 0) goto L_AlreadyClean; if (isloggedin(getcharid(3,$@cave6fighter$))==0) goto L_CleaningNorid; + if (getareausers("025-4.gat", 153, 143, 178, 174) < 1) goto L_Ranaway; attachrid(getcharid(3,$@cave6fighter$)); if (gettimetick(2) - $@cave6start >= $@CAVE6_TIME) goto L_Cleaning; if (PC_DIE_COUNTER > $@cave6fighterdeaths) goto L_CleaningDead; setnpctimer 0; end; +L_Ranaway: + 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_Cleaning: attachrid(getcharid(3,$@cave6fighter$)); warp "025-3.gat", 128, 37; @@ -626,12 +698,24 @@ L_Block: OnTimer5000: if ($@battlecave7 == 0) goto L_AlreadyClean; if (isloggedin(getcharid(3,$@cave7fighter$))==0) goto L_CleaningNorid; + if (getareausers("025-4.gat", 27, 185, 61, 219) < 1) goto L_Ranaway; attachrid(getcharid(3,$@cave7fighter$)); if (gettimetick(2) - $@cave7start >= $@CAVE7_TIME) goto L_Cleaning; if (PC_DIE_COUNTER > $@cave7fighterdeaths) goto L_CleaningDead; setnpctimer 0; end; +L_Ranaway: + 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_Cleaning: attachrid(getcharid(3,$@cave7fighter$)); warp "025-3.gat", 70, 59; @@ -723,12 +807,24 @@ L_Block: OnTimer5000: if ($@battlecave8 == 0) goto L_AlreadyClean; if (isloggedin(getcharid(3,$@cave8fighter$))==0) goto L_CleaningNorid; + if (getareausers("025-4.gat", 90, 193, 119, 216) < 1) goto L_Ranaway; attachrid(getcharid(3,$@cave8fighter$)); if (gettimetick(2) - $@cave8start >= $@CAVE8_TIME) goto L_Cleaning; if (PC_DIE_COUNTER > $@cave8fighterdeaths) goto L_CleaningDead; setnpctimer 0; end; +L_Ranaway: + 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_Cleaning: attachrid(getcharid(3,$@cave8fighter$)); warp "025-3.gat", 138, 94; @@ -820,12 +916,24 @@ L_Block: OnTimer5000: if ($@battlecave9 == 0) goto L_AlreadyClean; if (isloggedin(getcharid(3,$@cave9fighter$))==0) goto L_CleaningNorid; + if (getareausers("025-4.gat", 144, 192, 173, 226) < 1) goto L_Ranaway; attachrid(getcharid(3,$@cave9fighter$)); if (gettimetick(2) - $@cave9start >= $@CAVE9_TIME) goto L_Cleaning; if (PC_DIE_COUNTER > $@cave9fighterdeaths) goto L_CleaningDead; setnpctimer 0; end; +L_Ranaway: + 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_Cleaning: attachrid(getcharid(3,$@cave9fighter$)); warp "025-3.gat", 138, 158; @@ -906,7 +1014,7 @@ L_Wait: L_StartFight: message strcharinfo(0), "You go through the magic barrier without problems... you can hear screams that seem to be very close."; set $@battlebosscave, 1; - warp "025-4.gat", 157, 46; + warp "025-4.gat", 157, 44; set $@cave10fighter$, strcharinfo(0); set $@cave10fighterdeaths, PC_DIE_COUNTER; startnpctimer; @@ -925,13 +1033,25 @@ L_AlreadyHelped: OnTimer5000: if ($@battlebosscave == 0) goto L_AlreadyClean; if (isloggedin(getcharid(3,$@cave10fighter$))==0) goto L_CleaningNorid; + if (getareausers("025-4.gat", 142, 24, 172, 48) < 1) goto L_Ranaway; attachrid(getcharid(3,$@cave10fighter$)); if (gettimetick(2) - $@cave10start >= $@CAVE10_TIME) goto L_Cleaning; if (PC_DIE_COUNTER > $@cave10fighterdeaths) goto L_CleaningDead; - if ($@wave_cave10 == 5) goto L_SummonBoss; setnpctimer 0; end; +L_Ranaway: + 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_Cleaning: attachrid(getcharid(3,$@cave10fighter$)); warp "025-3.gat", 77, 168; diff --git a/world/map/npc/025-4/battlecaves.txt b/world/map/npc/025-4/battlecaves.txt index 9b802526..a7b596f4 100644 --- a/world/map/npc/025-4/battlecaves.txt +++ b/world/map/npc/025-4/battlecaves.txt @@ -955,7 +955,21 @@ L_Cleaning: killmonster "025-4.gat", "#StartBossCaveFight::OnBossDeath"; end; +L_CleaningNorid: + stopnpctimer; + setnpctimer 0; + set $@wave_cave10, 0; + set $@cave10_kills, 0; + set $@cave10start, 0; + set $@cave10fighter$, ""; + set $@cave10fighterdeaths$, 0; + set $@battlebosscave, 0; + killmonster "025-4.gat", "#StartBossCaveFight::OnMonsterDeath"; + killmonster "025-4.gat", "#StartBossCaveFight::OnBossDeath"; + end; + OnTimer4000: + if (isloggedin(getcharid(3,$@cave10fighter$))==0) goto L_CleaningNorid; attachrid(getcharid(3,$@cave10fighter$)); set @boss, @boss + 1; if (@boss == 1) message strcharinfo(0), "You feel something strange... Looks like something terrible is about to show up in this cave."; @@ -975,8 +989,10 @@ OnBossDeath: set $@cave10start, 0; set $@cave10fighter$, ""; set $@cave10fighterdeaths$, 0; - message strcharinfo(0), "What a harsh battle! I should save Julia now."; + set $@battlebosscave, 0; + message strcharinfo(0), "What a harsh battle! You lose no time and run to the door before more monsters start to appear."; set Rossy_Quest, 16; + warp "025-4.gat", 93, 33; end; L_Close: |