summaryrefslogtreecommitdiff
path: root/npc/025-1/ctrl.c
diff options
context:
space:
mode:
Diffstat (limited to 'npc/025-1/ctrl.c')
-rw-r--r--npc/025-1/ctrl.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/npc/025-1/ctrl.c b/npc/025-1/ctrl.c
index 483f70c5f..44cba78e8 100644
--- a/npc/025-1/ctrl.c
+++ b/npc/025-1/ctrl.c
@@ -13,6 +13,8 @@
// $@FORTRESS_STATUE = bitmask
// 1,2,4,8,16 - broken statues
// 1024 - Fortress Gate
+// $@FORT_BLACKLIST = int array
+// Char ID which already raided this week
// TODO: Use bg() - maybe with dummysd? What will increase allies count?
// TODO: Gate control during siege (not $FORTRESS_STATE). Gate monster.
// TODO: Spawn the monster general for each statue. Count their deaths.
@@ -57,6 +59,7 @@ function script FTCleanup {
donpcevent "#025-1_99_112::OnEnable";
mapwarp("025-1", "025-2", 100, 27);
}
+ deletearray $@FORT_BLACKLIST;
return;
}
@@ -136,6 +139,7 @@ function script FTStatue {
// TODO: Initial defending waves
// TODO: Enable the statues
// TODO: Summon reinforcements
+ // TODO: Player blacklist (unable to use 025-2 warp)
close;
/////////////////////////////////////////////////////////
@@ -185,4 +189,20 @@ OnTouch:
+/////////////////////////////////////////////////////////
+// Real access to 025-1 map
+025-2,96,24,0 script Fortress Town Access NPC_HIDDEN,8,0,{
+ end;
+OnTouch:
+ // Disabled
+ if ($GAME_STORYLINE < 3 && !$@GM_OVERRIDE && !is_gm())
+ end;
+ // Blacklisted
+ if (array_find($@FORT_BLACKLIST, getcharid(0)) != -1)
+ end;
+ // Not blacklisted
+ warp "025-1", 99, 122;
+ end;
+}
+