summaryrefslogtreecommitdiff
path: root/world/map/npc
diff options
context:
space:
mode:
authorCoffee <coffee@coffee-EP45-UD3L.(none)>2011-06-25 09:22:13 -0300
committerCoffee <coffee@coffee-EP45-UD3L.(none)>2011-06-25 09:22:13 -0300
commit0a1a7f497219513d3f7529d36176e87e0b9f5660 (patch)
treed6127d736875bebfa75ad132e0abc2ed13d72588 /world/map/npc
parent87da0d3f01519b0cf445bfcc4508a9aa05c3c02c (diff)
downloadclassic-serverdata-0a1a7f497219513d3f7529d36176e87e0b9f5660.tar.gz
classic-serverdata-0a1a7f497219513d3f7529d36176e87e0b9f5660.tar.bz2
classic-serverdata-0a1a7f497219513d3f7529d36176e87e0b9f5660.tar.xz
classic-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.txt124
-rw-r--r--world/map/npc/025-4/battlecaves.txt18
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: