summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2023-10-26 19:06:18 -0300
committerJesusaves <cpntb1@ymail.com>2023-10-26 19:06:18 -0300
commit4da4af22f9cfae15f7dbcf87c08db05cf32ed61a (patch)
treec978e2359a99f552b99f6edec5d077c075af5102
parent7398962bfe241d62475d3886bf2fc1c6343bbef6 (diff)
downloadserverdata-4da4af22f9cfae15f7dbcf87c08db05cf32ed61a.tar.gz
serverdata-4da4af22f9cfae15f7dbcf87c08db05cf32ed61a.tar.bz2
serverdata-4da4af22f9cfae15f7dbcf87c08db05cf32ed61a.tar.xz
serverdata-4da4af22f9cfae15f7dbcf87c08db05cf32ed61a.zip
I finally decided what the bonus for sparing Barbara is.
During the Impregnable Fortress Raid, provides limited healing and buffing.
-rw-r--r--npc/026-0/ctrl.c9
-rw-r--r--npc/026-1/ctrl.c9
-rw-r--r--npc/026-2/ctrl.c9
-rw-r--r--npc/026-3/ctrl.c9
-rw-r--r--npc/026-4/ctrl.c9
-rw-r--r--npc/026-5/ctrl.c9
-rw-r--r--npc/026-6/ctrl.c1
-rw-r--r--npc/functions/goodbye.txt31
8 files changed, 38 insertions, 48 deletions
diff --git a/npc/026-0/ctrl.c b/npc/026-0/ctrl.c
index ea7233278..fe853aa65 100644
--- a/npc/026-0/ctrl.c
+++ b/npc/026-0/ctrl.c
@@ -19,14 +19,7 @@ OnTouch:
close;
L_Warp:
- // Not unlocked
- if ($GAME_STORYLINE >= 3 && $MK_TEMPVAR < MKIF_LV_B1F) {
- mesc l("The gate is sealed shut."), 1;
- mesc l("The monster army is still strong on this floor!"), 1;
- mesc l("Minimum wins: %d/%d", $MK_TEMPVAR, MKIF_LV_B1F), 1;
- close;
- }
- warp "026-1", 29, 94;
+ fortwarp(MKIF_LV_B1F, "026-1", 29, 94);
end;
}
diff --git a/npc/026-1/ctrl.c b/npc/026-1/ctrl.c
index e5cc71480..db859266f 100644
--- a/npc/026-1/ctrl.c
+++ b/npc/026-1/ctrl.c
@@ -19,14 +19,7 @@ OnTouch:
close;
L_Warp:
- // Not unlocked
- if ($GAME_STORYLINE >= 3 && $MK_TEMPVAR < MKIF_LV_B2F) {
- mesc l("The gate is sealed shut."), 1;
- mesc l("The monster army is still strong on this floor!"), 1;
- mesc l("Minimum wins: %d/%d", $MK_TEMPVAR, MKIF_LV_B2F), 1;
- close;
- }
- warp "026-2", 32, 96;
+ fortwarp(MKIF_LV_B2F, "026-2", 32, 96);
end;
// Disarm & reset everything
diff --git a/npc/026-2/ctrl.c b/npc/026-2/ctrl.c
index 0864d3265..dbff5ff3e 100644
--- a/npc/026-2/ctrl.c
+++ b/npc/026-2/ctrl.c
@@ -69,14 +69,7 @@ OnTouch:
close;
L_Warp:
- // Not unlocked
- if ($GAME_STORYLINE >= 3 && $MK_TEMPVAR < MKIF_LV_B3F) {
- mesc l("The gate is sealed shut."), 1;
- mesc l("The monster army is still strong on this floor!"), 1;
- mesc l("Minimum wins: %d/%d", $MK_TEMPVAR, MKIF_LV_B3F), 1;
- close;
- }
- warp "026-3", 82, 19;
+ fortwarp(MKIF_LV_B3F, "026-3", 82, 19);
end;
OnTalkNearby:
diff --git a/npc/026-3/ctrl.c b/npc/026-3/ctrl.c
index 059b903b6..c2fd79423 100644
--- a/npc/026-3/ctrl.c
+++ b/npc/026-3/ctrl.c
@@ -39,13 +39,6 @@ OnTouch:
close;
L_Warp:
- // Not unlocked
- if ($GAME_STORYLINE >= 3 && $MK_TEMPVAR < MKIF_LV_B4F) {
- mesc l("The gate is sealed shut."), 1;
- mesc l("The monster army is still strong on this floor!"), 1;
- mesc l("Minimum wins: %d/%d", $MK_TEMPVAR, MKIF_LV_B4F), 1;
- close;
- }
// This is a more complex warp
.@e = 0;
do {
@@ -54,7 +47,7 @@ L_Warp:
.@y = rand2(20, 40);
.@e+=1;
} while (!checknpccell("026-4", .@x, .@y, cell_chkpass));
- warp "026-4", .@x, .@y;
+ fortwarp(MKIF_LV_B4F, "026-4", .@x, .@y);
end;
// Reset the switches
diff --git a/npc/026-4/ctrl.c b/npc/026-4/ctrl.c
index 72520315f..73914ac31 100644
--- a/npc/026-4/ctrl.c
+++ b/npc/026-4/ctrl.c
@@ -140,13 +140,6 @@ OnTouch:
close;
L_Warp:
- // Not unlocked
- if ($GAME_STORYLINE >= 3 && $MK_TEMPVAR < MKIF_LV_B5F) {
- mesc l("The gate is sealed shut."), 1;
- mesc l("The monster army is still strong on this floor!"), 1;
- mesc l("Minimum wins: %d/%d", $MK_TEMPVAR, MKIF_LV_B5F), 1;
- close;
- }
// This is a more complex warp
.@e = 0;
do {
@@ -155,7 +148,7 @@ L_Warp:
.@y = rand2(20, 40);
.@e+=1;
} while (!checknpccell("026-5", .@x, .@y, cell_chkpass));
- warp "026-5", .@x, .@y;
+ fortwarp(MKIF_LV_B5F, "026-5", .@x, .@y);
end;
OnInit:
diff --git a/npc/026-5/ctrl.c b/npc/026-5/ctrl.c
index 939bd5ae5..53445f9d8 100644
--- a/npc/026-5/ctrl.c
+++ b/npc/026-5/ctrl.c
@@ -142,14 +142,7 @@ OnTouch:
close;
L_Warp:
- // Not unlocked
- if ($GAME_STORYLINE >= 3 && $MK_TEMPVAR < MKIF_LV_B6F) {
- mesc l("The gate is sealed shut."), 1;
- mesc l("The monster army is still strong on this floor!"), 1;
- mesc l("Minimum wins: %d/%d", $MK_TEMPVAR, MKIF_LV_B6F), 1;
- close;
- }
- warp "026-6", 100, 90;
+ fortwarp(MKIF_LV_B6F, "026-6", 100, 90);
end;
OnInit:
diff --git a/npc/026-6/ctrl.c b/npc/026-6/ctrl.c
index 9e961ba56..10539b0d0 100644
--- a/npc/026-6/ctrl.c
+++ b/npc/026-6/ctrl.c
@@ -54,6 +54,7 @@ OnInit:
026-6,22,40,0, script #MKBossFightFire NPC_HIDDEN,0,0,{
end;
OnTouch:
+ // NOT a fortwarp() - there is no Barbara Bonus for the Showdown!
warp "026-7", 21, 28;
if (!$@MK_CHALLENGE) {
$@MK_CHALLENGE=true;
diff --git a/npc/functions/goodbye.txt b/npc/functions/goodbye.txt
index b52146188..07697885f 100644
--- a/npc/functions/goodbye.txt
+++ b/npc/functions/goodbye.txt
@@ -150,3 +150,34 @@ function script goodbye2 {
end;
}
+
+
+
+// fortwarp(floor ID, dest map, dest x, dest y)
+// warps player along the Fortress
+
+function script fortwarp {
+ // Not unlocked
+ if ($GAME_STORYLINE >= 3 && $MK_TEMPVAR < getarg(0)) {
+ mesc l("The gate is sealed shut."), 1;
+ mesc l("The monster army is still strong on this floor!"), 1;
+ mesc l("Minimum wins: %d/%d", $MK_TEMPVAR, getarg(0)), 1;
+ close;
+ }
+
+ // If you pledged for Barbara's life, your invincibility timer is vastly better
+ if (BARBARA_STATE == 3) {
+ if (!@barb)
+ percentheal 100, 100;
+ else if ((@barb + 180) < gettimetick(2))
+ percentheal 5, 5;
+ if (@barb < gettimetick(2))
+ sc_start SC_PRESTIGE, 4500, 3500, 5000, SCFLAG_NOAVOID|SCFLAG_FIXEDTICK|SCFLAG_FIXEDRATE, getcharid(3); // 4.5 seconds duration
+ @barb = gettimetick(2) + 15;
+ }
+
+ // The actual warp within the Impregnable Fortress
+ warp getarg(1), getarg(2), getarg(3);
+ return;
+}
+