diff options
author | Jesusaves <cpntb1@ymail.com> | 2019-09-01 15:20:20 -0300 |
---|---|---|
committer | Jesusaves <cpntb1@ymail.com> | 2019-09-01 15:20:20 -0300 |
commit | 28784c0c7746e4227d3965e3ffcfeb79d4e1f047 (patch) | |
tree | 5b60a6702f72110b6f568df9e46357a72093c1ff /npc | |
parent | f6c5d31071d68a20b877676dbfcb308f7fa9f903 (diff) | |
download | serverdata-28784c0c7746e4227d3965e3ffcfeb79d4e1f047.tar.gz serverdata-28784c0c7746e4227d3965e3ffcfeb79d4e1f047.tar.bz2 serverdata-28784c0c7746e4227d3965e3ffcfeb79d4e1f047.tar.xz serverdata-28784c0c7746e4227d3965e3ffcfeb79d4e1f047.zip |
Automatize the boss fights so they all look like the same '-'
Diffstat (limited to 'npc')
-rw-r--r-- | npc/018-6-3/main.txt | 40 |
1 files changed, 29 insertions, 11 deletions
diff --git a/npc/018-6-3/main.txt b/npc/018-6-3/main.txt index 9b6fbb503..36227be78 100644 --- a/npc/018-6-3/main.txt +++ b/npc/018-6-3/main.txt @@ -53,20 +53,38 @@ function AreaMonsterBoss { return; } -OnRoomA: +// BossRoom ( RoomID, x1, y1, x2, y2, adjustment ) +// Adjustment is for bigger rooms. Defaults to false. +function BossRoom { + .@id=getarg(0); + .@x1=getarg(1); + .@y1=getarg(2); + .@x2=getarg(3); + .@y2=getarg(4); + .@ad=getarg(5, false); // True: Must spawn boss, False: Allow to use warps - if (01863_RelevanceCheck(1)) { + if (01863_RelevanceCheck(.@id)) { mapannounce getmap(), l("BOSS FIGHT!"), bc_map|bc_pc; - AreaMonsterBoss(getmap(), 62, 41, 121, 58, any(HolyPixie, NulityPixie, VanityPixie, TerraniteProtector, GoboBear, Centaur), 1, 1); // Aggressive: 33% - // 6~12 support units - AreaMonsterB(getmap(), 62, 41, 121, 58, BlackSlime, rand2(3,5)); - AreaMonsterB(getmap(), 62, 41, 121, 58, DarkLizard, rand2(2,3)); - AreaMonsterB(getmap(), 62, 41, 121, 58, BlackScorpion, rand2(1,2)); - // 620ms, AD18, tk710 hp 8.7 - AreaMonsterB(getmap(), 62, 41, 121, 58, Archant, rand2(0,1)); - // 200ms, AD21, tk630 hp 6.4 - AreaMonsterB(getmap(), 62, 41, 121, 58, HoodedNinja, any(0,0,1)); + // Spawn a boss. Aggressive chance: 33% + AreaMonsterBoss(getmap(), .@x1, .@y1, .@x2, .@y2 any(HolyPixie, NulityPixie, VanityPixie, TerraniteProtector, GoboBear, Centaur), 1, 1); + + // BIG ROOM: 6~12 support units + // SMALL ROOM: 5~10 support units + AreaMonsterB(getmap(), .@x1, .@y1, .@x2, .@y2 BlackSlime, rand2(2,4)+.@ad); + AreaMonsterB(getmap(), .@x1, .@y1, .@x2, .@y2 DarkLizard, rand2(1,2)+.@ad); + AreaMonsterB(getmap(), .@x1, .@y1, .@x2, .@y2 BlackScorpion, rand2(1,2)); + AreaMonsterB(getmap(), .@x1, .@y1, .@x2, .@y2 Archant, rand2(1,2)-.@ad); + // Only spawn the fast Hooded Ninja on big rooms + if (.@ad) { + AreaMonsterB(getmap(), .@x1, .@y1, .@x2, .@y2 HoodedNinja, any(0,0,1)); + } } + + return; +} + +OnRoomA: + BossRoom(1, 62, 41, 121, 58, true); end; // Kill boss will use setq3 and also erase any remaining monster |