diff options
-rw-r--r-- | npc/025-1/ctrl.c | 39 |
1 files changed, 35 insertions, 4 deletions
diff --git a/npc/025-1/ctrl.c b/npc/025-1/ctrl.c index 816bacee3..0a34871af 100644 --- a/npc/025-1/ctrl.c +++ b/npc/025-1/ctrl.c @@ -79,10 +79,8 @@ function script FTStatue { if ($@FORTRESS_STATUE & .@id) return; sc_start SC_STUN, 10000, 1; - //getmapxy(); - //areamonster(); - //mapannounce(); - //maybe spawn monster governor + doevent("Fortress::OnStatueBreach"); + mapannounce("025-1", strcharinfo(0)+" has broken a statue!", bc_map); $@FORTRESS_STATUE=$@FORTRESS_STATUE|.@id; } @@ -199,6 +197,20 @@ OnMPReinforce: summon("Allied Guard", any(FallenGuard1, FallenGuard2, FallenGuard3)); end; +OnStatueBreach: + spawnCore(true); + getmapxy(.@m$, .@x, .@y, 0); + .@x1=.@x-5; + .@x2=.@x+5; + .@y1=.@y-5; + .@y2=.@y+5; + // Statue Guardians (Lv 70~90) + for (.@i = 0; .@i < 6; ++.@i) { + spawnMob(any(AzulSkullSlime, YellowSkullSlime, Forain, GreenDragon, Michel, EliteDuck, Troll, Moonshroom, Terranite, JackO, BlackMamba, Centaur, GoboBear, TerraniteProtector), .@x1, .@y1, .@x2, .@y2); + } + //TODO: Maybe spawn monster governor + end; + ///////////////////////////////////////////////////////// // spawnMob(Mob, X1, Y1, X2, Y2) function spawnMob { @@ -289,6 +301,25 @@ OnConquest: } +///////////////////////////////////////////////////////// +// TODO: Statue NPCs +025-1,80,115,0 script Magic Statue#1 NPC_STATUE_WIZARD,{ + FTStatue(strnpcinfo(2, "0")); + close; + +OnInit: + .distance=2; + end; +} + +025-1,80,115,0 duplicate(Magic Statue#1) Magic Statue#2 NPC_STATUE_BACCHUS +025-1,80,115,0 duplicate(Magic Statue#1) Magic Statue#4 NPC_STATUE_FAFA +025-1,80,115,0 duplicate(Magic Statue#1) Magic Statue#8 NPC_STATUE_EVILMAN +025-1,80,115,0 duplicate(Magic Statue#1) Magic Statue#16 NPC_STATUE_GUARD + + + + ///////////////////////////////////////////////////////// // This exit must work even if gate is closed (bugfix) |