diff options
author | Coffee <coffee@coffee-EP45-UD3L.(none)> | 2011-06-25 09:22:13 -0300 |
---|---|---|
committer | Coffee <coffee@coffee-EP45-UD3L.(none)> | 2011-06-25 09:22:13 -0300 |
commit | 0a1a7f497219513d3f7529d36176e87e0b9f5660 (patch) | |
tree | d6127d736875bebfa75ad132e0abc2ed13d72588 /world/map/npc | |
parent | 87da0d3f01519b0cf445bfcc4508a9aa05c3c02c (diff) | |
download | serverdata-0a1a7f497219513d3f7529d36176e87e0b9f5660.tar.gz serverdata-0a1a7f497219513d3f7529d36176e87e0b9f5660.tar.bz2 serverdata-0a1a7f497219513d3f7529d36176e87e0b9f5660.tar.xz serverdata-0a1a7f497219513d3f7529d36176e87e0b9f5660.zip |
Fixes a bug in the timer before the boss is spawned. Makes the player appear in the boss cave a few tiles up, to avoid being warp back all the time. Adds an additional check while fighting, so if a player gets out of the fight using #alonzialonzo or one of the towels the fight is stopped. Warps the player directly into the place where julia is hidden, so there is no way he just sit in the cave making it impossible for other players to enter.
Diffstat (limited to 'world/map/npc')
-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: |