summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2021-03-20 20:14:09 -0300
committerJesusaves <cpntb1@ymail.com>2021-03-20 20:14:09 -0300
commitce2c2e349baf034939661fd40e6617e9fd0999cf (patch)
treee71b239f34e38a5119a63835a38b6292d5aed7b9
parent25dcfd86fb6cc2775f9c96f0a5b6e0979317d00d (diff)
downloadserverdata-ce2c2e349baf034939661fd40e6617e9fd0999cf.tar.gz
serverdata-ce2c2e349baf034939661fd40e6617e9fd0999cf.tar.bz2
serverdata-ce2c2e349baf034939661fd40e6617e9fd0999cf.tar.xz
serverdata-ce2c2e349baf034939661fd40e6617e9fd0999cf.zip
Rewrite stun rules to ensure Homunculus and Mercenaries are affected. (029-9 BOSS)
-rw-r--r--npc/029-9/boss.txt26
1 files changed, 11 insertions, 15 deletions
diff --git a/npc/029-9/boss.txt b/npc/029-9/boss.txt
index d17e444bc..c88985834 100644
--- a/npc/029-9/boss.txt
+++ b/npc/029-9/boss.txt
@@ -47,18 +47,13 @@ Level of difficulty setting (100/130/160/190/220)
// PC no longer attached
// Start the event
mapwarp("029-9", "029-9", 96, 41);
- sleep(100);
- maptimer2("029-9", 200, "Book#FoS::OnMFStun");
- .@c = getunits(BL_PC, .@players, MAX_CYCLE_PC);
+ sleep(200);
+ .@c = getunits(BL_PC|BL_MER|BL_HOM, .@players, MAX_CYCLE_PC, "029-9");
for (.@i = 0; .@i < .@c; .@i++) {
- attachrid(.@players[.@i]);
- if (getmap() == "029-9") {
- sc_start(SC_STUN, 18000, 1, 10000,
- SCFLAG_NOAVOID|SCFLAG_FIXEDTICK);
- }
- detachrid();
+ sc_start(SC_STUN, 18000, 1, 10000,
+ SCFLAG_NOAVOID|SCFLAG_FIXEDTICK, .@players[.@i]);
}
- sleep(200);
+ sleep(100);
// Cleanup previous data (if any)
$@FOS_ISB=0;
$@FOS_MOB=0;
@@ -204,6 +199,12 @@ OnProlEnd:
setunitdata(.Support2, UDT_MAXHP, 999999);
setunitdata(.Support2, UDT_HP, 999999);
sleep(18000+100); // Wait for cutscene to start + latebloomers
+ .@c = getunits(BL_PC|BL_MER|BL_HOM, .@players, MAX_CYCLE_PC, "029-9");
+ for (.@i = 0; .@i < .@c; .@i++) {
+ sc_start(SC_STUN, 18000, 1, 10000,
+ SCFLAG_NOAVOID|SCFLAG_FIXEDTICK, .@players[.@i]);
+ }
+ sleep(100);
//////////////////////////////////////////////////////////////
unittalk(.Support1, "...I'm sorry!");
sleep(1000);
@@ -369,10 +370,6 @@ OnEventEnd:
end;
////////////// Map Broadcast //////////////
-OnMFStun:
- sc_start(SC_STUN, 18000, 1, 10000, SCFLAG_NOAVOID|SCFLAG_FIXEDTICK);
- end;
-
OnMFAndreiMagic:
.@stat=max(1, 5-((100-$@FIRESOFSTEAM_DIFF)/30));
dispbottom col(l("Enemies stunned!"), 3);
@@ -388,7 +385,6 @@ OnMFMark:
OnMFScene:
if (!isin("029-9", 20, 20, 60, 50))
warp "029-9", rand2(33,34), rand2(24,26);
- sc_start(SC_STUN, .subitime, 1, 10000, SCFLAG_NOAVOID|SCFLAG_FIXEDTICK);
end;
OnMFShake: