summaryrefslogtreecommitdiff
path: root/npc/025-3
diff options
context:
space:
mode:
Diffstat (limited to 'npc/025-3')
-rw-r--r--npc/025-3/barriers.txt172
1 files changed, 112 insertions, 60 deletions
diff --git a/npc/025-3/barriers.txt b/npc/025-3/barriers.txt
index bac28c8a..11d2255c 100644
--- a/npc/025-3/barriers.txt
+++ b/npc/025-3/barriers.txt
@@ -1,11 +1,10 @@
// -----------------------------------Warp to Cave 1 ---------------------------------------
-025-3.gat,78,127,0 script #WarpBattleCave1 127,1,1,{
+025-3.gat,78,127,0 script #WarpBattleCave1 45,1,1,{
- if (Rossy_Quest >= 16 || FLAGS & FLAG_ROSSI_COMPLETED) goto L_AlreadyHelped;
-// Check if someone is already inside. Change the x1, y1, x2, y2 values according to the place the player will be warped
+ if (Rossy_Quest >= 16 || FLAGS & FLAG_ROSSI_COMPLETED) goto L_AlreadyHelped;
if (getareausers("025-4.gat", 26, 63, 60, 97) >= 1) goto L_SomeoneInside;
-// Check if you already done this fight
+ if ($@timercontrol1 != 0) goto L_Wait;
if (cavefights & BATTLE_CAVE1) goto L_AlreadyDone;
if (Rossy_Quest < 15) goto L_Block;
@@ -16,13 +15,17 @@ L_StartFight:
set $@cave1fighterdeaths, PC_DIE_COUNTER;
startnpctimer;
set $@cave1start, gettimetick(2);
- message strcharinfo(0), "As you enter, you feel evil forces filling up this cave.";
+ message strcharinfo(0), "As you enter, you feel an evil force filling up the cave.";
end;
L_SomeoneInside:
- message strcharinfo(0), $@cave1fighter$ + " is already inside.";
+ message strcharinfo(0), $@cave1fighter$ + " is already inside. The cave seems to be blocked.";
end;
+L_Wait:
+ message strcharinfo(0), "Someone just got out of the cave, but it is still blocked. I should try to enter again.";
+ end;
+
L_AlreadyDone:
message strcharinfo(0), "I already defeated the monsters in this cave.";
end;
@@ -86,6 +89,7 @@ L_CleaningNorid:
end;
L_AlreadyClean:
+ set $@timercontrol1, 0;
stopnpctimer;
setnpctimer 0;
end;
@@ -94,12 +98,11 @@ L_AlreadyClean:
// ---------------------------- Warp to Cave 2 ----------------------------
-025-3.gat,53,107,0 script #WarpBattleCave2 127,1,1,{
+025-3.gat,53,107,0 script #WarpBattleCave2 45,1,1,{
- if (Rossy_Quest >= 16 || FLAGS & FLAG_ROSSI_COMPLETED) goto L_AlreadyHelped;
-// Check if someone is already inside. Change the x1, y1, x2, y2 values according to the place the player will be warped
+ if (Rossy_Quest >= 16 || FLAGS & FLAG_ROSSI_COMPLETED) goto L_AlreadyHelped;
if (getareausers("025-4.gat", 97, 62, 126, 96) >= 1) goto L_SomeoneInside;
-// Check if you already done this fight
+ if ($@timercontrol2 != 0) goto L_Wait;
if (cavefights & BATTLE_CAVE2) goto L_AlreadyDone;
if (Rossy_Quest < 15) goto L_Block;
@@ -110,15 +113,15 @@ L_StartFight:
set $@cave2fighterdeaths, PC_DIE_COUNTER;
startnpctimer;
set $@cave2start, gettimetick(2);
- message strcharinfo(0), "As you enter, you feel evil forces filling up this cave.";
+ message strcharinfo(0), "As you enter, you feel an evil force filling up the cave.";
end;
L_SomeoneInside:
- message strcharinfo(0), $@cave2fighter$ + " is already inside.";
+ message strcharinfo(0), $@cave2fighter$ + " is already inside. The cave seems to be blocked.";
end;
-L_AlreadyDone:
- message strcharinfo(0), "I already defeated the monsters in this cave.";
+L_Wait:
+ message strcharinfo(0), "Someone just got out of the cave, but it is still blocked. I should try to enter again.";
end;
L_AlreadyHelped:
@@ -180,6 +183,7 @@ L_CleaningNorid:
end;
L_AlreadyClean:
+ set $@timercontrol2, 0;
stopnpctimer;
setnpctimer 0;
end;
@@ -187,12 +191,11 @@ L_AlreadyClean:
// --------------------------------- Warp to Cave 3 ----------------------------------------
-025-3.gat,71,83,0 script #WarpBattleCave3 127,1,1,{
+025-3.gat,71,83,0 script #WarpBattleCave3 45,1,1,{
- if (Rossy_Quest >= 16 || FLAGS & FLAG_ROSSI_COMPLETED) goto L_AlreadyHelped;
-// Check if someone is already inside. Change the x1, y1, x2, y2 values according to the place the player will be warped
+ if (Rossy_Quest >= 16 || FLAGS & FLAG_ROSSI_COMPLETED) goto L_AlreadyHelped;
if (getareausers("025-4.gat", 150, 84, 177, 117) >= 1) goto L_SomeoneInside;
-// Check if you already done this fight
+ if ($@timercontrol3 != 0) goto L_Wait;
if (cavefights & BATTLE_CAVE3) goto L_AlreadyDone;
if (Rossy_Quest < 15) goto L_Block;
@@ -203,11 +206,15 @@ L_StartFight:
set $@cave3fighterdeaths, PC_DIE_COUNTER;
startnpctimer;
set $@cave3start, gettimetick(2);
- message strcharinfo(0), "As you enter, you feel evil forces filling up this cave.";
+ message strcharinfo(0), "As you enter, you feel an evil force filling up the cave.";
end;
L_SomeoneInside:
- message strcharinfo(0), $@cave3fighter$ + " is already inside.";
+ message strcharinfo(0), $@cave3fighter$ + " is already inside. The cave seems to be blocked.";
+ end;
+
+L_Wait:
+ message strcharinfo(0), "Someone just got out of the cave, but it is still blocked. I should try to enter again.";
end;
L_AlreadyDone:
@@ -273,6 +280,7 @@ L_CleaningNorid:
end;
L_AlreadyClean:
+ set $@timercontrol3, 0;
stopnpctimer;
setnpctimer 0;
end;
@@ -280,12 +288,11 @@ L_AlreadyClean:
// --------------------------- Warp to Cave 4 --------------------------------------
-025-3.gat,80,83,0 script #WarpBattleCave4 127,1,1,{
+025-3.gat,80,83,0 script #WarpBattleCave4 45,1,1,{
- if (Rossy_Quest >= 16 || FLAGS & FLAG_ROSSI_COMPLETED) goto L_AlreadyHelped;
-// Check if someone is already inside. Change the x1, y1, x2, y2 values according to the place the player will be warped
+ if (Rossy_Quest >= 16 || FLAGS & FLAG_ROSSI_COMPLETED) goto L_AlreadyHelped;
if (getareausers("025-4.gat", 28, 124, 57, 156) >= 1) goto L_SomeoneInside;
-// Check if you already done this fight
+ if ($@timercontrol4 != 0) goto L_Wait;
if (cavefights & BATTLE_CAVE4) goto L_AlreadyDone;
if (Rossy_Quest < 15) goto L_Block;
@@ -296,11 +303,15 @@ L_StartFight:
set $@cave4fighterdeaths, PC_DIE_COUNTER;
startnpctimer;
set $@cave4start, gettimetick(2);
- message strcharinfo(0), "As you enter, you feel evil forces filling up this cave.";
+ message strcharinfo(0), "As you enter, you feel an evil force filling up the cave.";
end;
L_SomeoneInside:
- message strcharinfo(0), $@cave4fighter$ + " is already inside.";
+ message strcharinfo(0), $@cave4fighter$ + " is already inside. The cave seems to be blocked.";
+ end;
+
+L_Wait:
+ message strcharinfo(0), "Someone just got out of the cave, but it is still blocked. I should try to enter again.";
end;
L_AlreadyDone:
@@ -366,6 +377,7 @@ L_CleaningNorid:
end;
L_AlreadyClean:
+ set $@timercontrol4, 0;
stopnpctimer;
setnpctimer 0;
end;
@@ -373,12 +385,11 @@ L_AlreadyClean:
// --------------------------- Warp to Cave 5 ----------------------------------------
-025-3.gat,71,30,0 script #WarpBattleCave5 127,1,1,{
+025-3.gat,71,30,0 script #WarpBattleCave5 45,1,1,{
- if (Rossy_Quest >= 16 || FLAGS & FLAG_ROSSI_COMPLETED) goto L_AlreadyHelped;
-// Check if someone is already inside. Change the x1, y1, x2, y2 values according to the place the player will be warped
+ if (Rossy_Quest >= 16 || FLAGS & FLAG_ROSSI_COMPLETED) goto L_AlreadyHelped;
if (getareausers("025-4.gat", 91, 131, 124, 160) >= 1) goto L_SomeoneInside;
-// Check if you already done this fight
+ if ($@timercontrol5 != 0) goto L_Wait;
if (cavefights & BATTLE_CAVE5) goto L_AlreadyDone;
if (Rossy_Quest < 15) goto L_Block;
@@ -389,11 +400,15 @@ L_StartFight:
set $@cave5fighterdeaths, PC_DIE_COUNTER;
startnpctimer;
set $@cave5start, gettimetick(2);
- message strcharinfo(0), "As you enter, you feel evil forces filling up this cave.";
+ message strcharinfo(0), "As you enter, you feel an evil force filling up the cave.";
end;
L_SomeoneInside:
- message strcharinfo(0), $@cave5fighter$ + " is already inside.";
+ message strcharinfo(0), $@cave5fighter$ + " is already inside. The cave seems to be blocked.";
+ end;
+
+L_Wait:
+ message strcharinfo(0), "Someone just got out of the cave, but it is still blocked. I should try to enter again.";
end;
L_AlreadyDone:
@@ -459,6 +474,7 @@ L_CleaningNorid:
end;
L_AlreadyClean:
+ set $@timercontrol5, 0;
stopnpctimer;
setnpctimer 0;
end;
@@ -466,12 +482,11 @@ L_AlreadyClean:
// -------------------------------- Warp to Cave 6 -----------------------------------------
-025-3.gat,128,35,0 script #WarpBattleCave6 127,1,1,{
+025-3.gat,128,35,0 script #WarpBattleCave6 45,1,1,{
- if (Rossy_Quest >= 16 || FLAGS & FLAG_ROSSI_COMPLETED) goto L_AlreadyHelped;
-// Check if someone is already inside. Change the x1, y1, x2, y2 values according to the place the player will be warped
+ if (Rossy_Quest >= 16 || FLAGS & FLAG_ROSSI_COMPLETED) goto L_AlreadyHelped;
if (getareausers("025-4.gat", 153, 143, 178, 174) >= 1) goto L_SomeoneInside;
-// Check if you already done this fight
+ if ($@timercontrol6 != 0) goto L_Wait;
if (cavefights & BATTLE_CAVE6) goto L_AlreadyDone;
if (Rossy_Quest < 15) goto L_Block;
@@ -482,11 +497,15 @@ L_StartFight:
set $@cave6fighterdeaths, PC_DIE_COUNTER;
startnpctimer;
set $@cave6start, gettimetick(2);
- message strcharinfo(0), "As you enter, you feel evil forces filling up this cave.";
+ message strcharinfo(0), "As you enter, you feel an evil force filling up the cave.";
end;
L_SomeoneInside:
- message strcharinfo(0), $@cave6fighter$ + " is already inside.";
+ message strcharinfo(0), $@cave6fighter$ + " is already inside. The cave seems to be blocked.";
+ end;
+
+L_Wait:
+ message strcharinfo(0), "Someone just got out of the cave, but it is still blocked. I should try to enter again.";
end;
L_AlreadyDone:
@@ -552,6 +571,7 @@ L_CleaningNorid:
end;
L_AlreadyClean:
+ set $@timercontrol6, 0;
stopnpctimer;
setnpctimer 0;
end;
@@ -559,12 +579,11 @@ L_AlreadyClean:
// ---------------------------- Warp to Cave 7 ------------------------------------------
-025-3.gat,70,57,0 script #WarpBattleCave7 127,1,1,{
+025-3.gat,70,57,0 script #WarpBattleCave7 45,1,1,{
- if (Rossy_Quest >= 16 || FLAGS & FLAG_ROSSI_COMPLETED) goto L_AlreadyHelped;
-// Check if someone is already inside. Change the x1, y1, x2, y2 values according to the place the player will be warped
+ if (Rossy_Quest >= 16 || FLAGS & FLAG_ROSSI_COMPLETED) goto L_AlreadyHelped;
if (getareausers("025-4.gat", 27, 185, 61, 219) >= 1) goto L_SomeoneInside;
-// Check if you already done this fight
+ if ($@timercontrol7 != 0) goto L_Wait;
if (cavefights & BATTLE_CAVE7) goto L_AlreadyDone;
if (Rossy_Quest < 15) goto L_Block;
@@ -575,11 +594,15 @@ L_StartFight:
set $@cave7fighterdeaths, PC_DIE_COUNTER;
startnpctimer;
set $@cave7start, gettimetick(2);
- message strcharinfo(0), "As you enter, you feel evil forces filling up this cave.";
+ message strcharinfo(0), "As you enter, you feel an evil force filling up the cave.";
end;
L_SomeoneInside:
- message strcharinfo(0), $@cave7fighter$ + " is already inside.";
+ message strcharinfo(0), $@cave7fighter$ + " is already inside. The cave seems to be blocked.";
+ end;
+
+L_Wait:
+ message strcharinfo(0), "Someone just got out of the cave, but it is still blocked. I should try to enter again.";
end;
L_AlreadyDone:
@@ -645,6 +668,7 @@ L_CleaningNorid:
end;
L_AlreadyClean:
+ set $@timercontrol7, 0;
stopnpctimer;
setnpctimer 0;
end;
@@ -652,12 +676,11 @@ L_AlreadyClean:
// -----------------------------------------------Warp to Cave 8-------------------------------------------------------------
-025-3.gat,138,92,0 script #WarpBattleCave8 127,1,1,{
+025-3.gat,138,92,0 script #WarpBattleCave8 45,1,1,{
- if (Rossy_Quest >= 16 || FLAGS & FLAG_ROSSI_COMPLETED) goto L_AlreadyHelped;
-// Check if someone is already inside. Change the x1, y1, x2, y2 values according to the place the player will be warped
+ if (Rossy_Quest >= 16 || FLAGS & FLAG_ROSSI_COMPLETED) goto L_AlreadyHelped;
if (getareausers("025-4.gat", 90, 193, 119, 216) >= 1) goto L_SomeoneInside;
-// Check if you already done this fight
+ if ($@timercontrol8 != 0) goto L_Wait;
if (cavefights & BATTLE_CAVE8) goto L_AlreadyDone;
if (Rossy_Quest < 15) goto L_Block;
@@ -668,11 +691,15 @@ L_StartFight:
set $@cave8fighterdeaths, PC_DIE_COUNTER;
startnpctimer;
set $@cave8start, gettimetick(2);
- message strcharinfo(0), "As you enter, you feel evil forces filling up this cave.";
+ message strcharinfo(0), "As you enter, you feel an evil force filling up the cave.";
end;
L_SomeoneInside:
- message strcharinfo(0), $@cave8fighter$ + " is already inside.";
+ message strcharinfo(0), $@cave8fighter$ + " is already inside. The cave seems to be blocked.";
+ end;
+
+L_Wait:
+ message strcharinfo(0), "Someone just got out of the cave, but it is still blocked. I should try to enter again.";
end;
L_AlreadyDone:
@@ -738,6 +765,7 @@ L_CleaningNorid:
end;
L_AlreadyClean:
+ set $@timercontrol8, 0;
stopnpctimer;
setnpctimer 0;
end;
@@ -745,12 +773,11 @@ L_AlreadyClean:
// ------------------------------ Warp to Cave 9 ----------------------------------------
-025-3.gat,138,160,0 script #WarpBattleCave9 127,1,1,{
+025-3.gat,138,160,0 script #WarpBattleCave9 45,1,1,{
if (Rossy_Quest >= 16 || FLAGS & FLAG_ROSSI_COMPLETED) goto L_AlreadyHelped;
-// Check if someone is already inside. Change the x1, y1, x2, y2 values according to the place the player will be warped
if (getareausers("025-4.gat", 144, 192, 173, 226) >= 1) goto L_SomeoneInside;
-// Check if you already done this fight
+ if ($@timercontrol9 != 0) goto L_Wait;
if (cavefights & BATTLE_CAVE9) goto L_AlreadyDone;
if (Rossy_Quest < 15) goto L_Block;
@@ -761,11 +788,15 @@ L_StartFight:
set $@cave9fighterdeaths, PC_DIE_COUNTER;
startnpctimer;
set $@cave9start, gettimetick(2);
- message strcharinfo(0), "As you enter, you feel evil forces filling up this cave.";
+ message strcharinfo(0), "As you enter, you feel an evil force filling up the cave.";
end;
L_SomeoneInside:
- message strcharinfo(0), $@cave9fighter$ + " is already inside.";
+ message strcharinfo(0), $@cave9fighter$ + " is already inside. The cave seems to be blocked.";
+ end;
+
+L_Wait:
+ message strcharinfo(0), "Someone just got out of the cave, but it is still blocked. I should try to enter again.";
end;
L_AlreadyDone:
@@ -831,6 +862,7 @@ L_CleaningNorid:
end;
L_AlreadyClean:
+ set $@timercontrol9, 0;
stopnpctimer;
setnpctimer 0;
end;
@@ -838,15 +870,34 @@ L_AlreadyClean:
// ----------------------------- Warp to Boss Cave -------------------------------
-025-3.gat,77,170,0 script #WarpBossCave 127,1,1,{
+025-3.gat,77,170,0 script #WarpBossCave 45,1,1,{
if (Rossy_Quest >= 16 || FLAGS & FLAG_ROSSI_COMPLETED) goto L_AlreadyHelped;
-//Check if someone is already inside. Change the x1, y1, x2, y2 values according to the place the player will be warped
+ set @barrier_force, 0;
+ if (cavefights & ~BATTLE_CAVE1) set @barrier_force, @barrier_force - 1;
+ if (cavefights & ~BATTLE_CAVE2) set @barrier_force, @barrier_force - 1;
+ if (cavefights & ~BATTLE_CAVE3) set @barrier_force, @barrier_force - 1;
+ if (cavefights & ~BATTLE_CAVE4) set @barrier_force, @barrier_force - 1;
+ if (cavefights & ~BATTLE_CAVE5) set @barrier_force, @barrier_force - 1;
+ if (cavefights & ~BATTLE_CAVE6) set @barrier_force, @barrier_force - 1;
+ if (cavefights & ~BATTLE_CAVE7) set @barrier_force, @barrier_force - 1;
+ if (cavefights & ~BATTLE_CAVE8) set @barrier_force, @barrier_force - 1;
+ if (cavefights & ~BATTLE_CAVE9) set @barrier_force, @barrier_force - 1;
+ if (@barrier_force != 0) goto L_Hurt;
if (getareausers("025-4.gat", 142, 24, 172, 48) >= 1) goto L_SomeoneInside;
-//Check if you can enter this cave
- if (cavefights & BATTLE_CAVE1 && cavefights & BATTLE_CAVE2 && cavefights & BATTLE_CAVE3 && cavefights & BATTLE_CAVE4 && cavefights & BATTLE_CAVE5 && cavefights & BATTLE_CAVE6 && cavefights & BATTLE_CAVE7 && cavefights & BATTLE_CAVE8 && cavefights & BATTLE_CAVE9) goto L_StartFight;
+ if ($@timercontrol10 != 0) goto L_Wait;
+ if (@barrier_force == 0) goto L_StartFight;
+ end;
+
+L_Hurt:
+ message strcharinfo(0), "As you try to enter, you bump into a magic barrier. Its force pushes you back, hurting you badly.";
+ message strcharinfo(0), @barrier_force;
+ percentheal @barrier_force * 10, 0;
+ warp "025-3.gat", 77, 164;
+ end;
- message strcharinfo(0), "As you try to enter, you bump into an invisible door. You can feel a total of nince small lockets.";
+L_Wait:
+ message strcharinfo(0), "Someone just got out of the cave, but it is still blocked. I should try to enter again.";
end;
L_StartFight:
@@ -923,6 +974,7 @@ L_CleaningNorid:
end;
L_AlreadyClean:
+ set $@timercontrol10, 0;
stopnpctimer;
setnpctimer 0;
end;