// Evol script
// Year: 2022
//
////////////////////////////////////////////////
// Red Corsair Day
002-1,29,61,0|script|#CRC2023|400
{
end;
OnFirst:
if (strcharinfo(0) != "Blanc" && GM < G_ADMIN) end;
wgm "==> Flagship spawned by "+strcharinfo(0);
monster "002-1", 29, 61, "", MontBlanc, 1, "#CRC2022::OnExplode";
areatimer 0, "002-1", 20, 20, 100, 120, 10, "#CRC2023::OnMusic";
initnpctimer;
end;
OnThird:
if (strcharinfo(0) != "Blanc" && GM < G_ADMIN) end;
gmlog strcharinfo(0)+" : @spawn CRCMonsters 25";
//set $@CRC22Mc, mobcount("002-1", "#CRC2022::OnDie")+1;
set $@CRC22Mc, 0;
set $@CRC22Gl, 25;
set $@CRC22M$, "002-1";
set $@CRC22Xm, 52;
set $@CRC22Ym, 100;
if ($@CRC22Mc >= $@CRC22Gl) end;
callsub S_Spawn;
end;
// Use @music instead, but this is to help you
OnMusic:
music "Dramatic.ogg";
end;
OnDeMusic:
music "faith.ogg";
end;
// Main ship cannon (range = infinity)
OnBoom:
misceffect 30, strcharinfo(0);
heal -(rand(BaseLevel*3/2)), 0;
end;
// Extra wave control system [0]
S_Spawn:
set $@CRC_IDX, rand(getarraysize($@crc_mobs));
areamonster $@CRC22M$, 20, 20, $@CRC22Xm, $@CRC22Ym, "", $@crc_mobs[$@CRC_IDX], 1, "#CRC2022::OnDie";
set $@CRC22Mc, $@CRC22Mc + 1;
if($@CRC22Mc < $@CRC22Gl) goto S_Spawn;
return;
OnTimer5000:
areatimer 0, "002-1", 20, 20, 500, 500, 100, "#CRC2023::OnBoom";
initnpctimer;
end;
OnDie:
end;
OnExplodeT:
if (strcharinfo(0) != "Blanc" && GM < G_ADMIN) end;
goto OnExplode;
OnExplode:
wgm "==> Flagship sank by "+strcharinfo(0);
stopnpctimer;
mapannounce "002-1", "Mont Blanc : Captain! Fall back!! They have damaged the hull! WE ARE SINKING!! %%P", 0;
areatimer 0, "002-1", 20, 20, 100, 120, 10, "#CRC2023::OnDeMusic";
fakenpcname "#CRC2023", "#CRC2023", 203;
end;
OnEndEv:
if (strcharinfo(0) != "Blanc" && GM < G_ADMIN) end;
fakenpcname "#CRC2023", "#CRC2023", 400;
end;
OnInit:
setarray $@crc_mobs, Thug, Swashbuckler, Grenadier, Thug, Swashbuckler, Grenadier, VoidSoldier, Bandit, Thug, Swashbuckler, Grenadier, Thug, Swashbuckler;
// Register commands
registercmd "#crcflagship", strnpcinfo(0)+"::OnFirst";
registercmd "#crcmobs", strnpcinfo(0)+"::OnThird";
registercmd "#crcdie", strnpcinfo(0)+"::OnExplodeT";
registercmd "#crcend", strnpcinfo(0)+"::OnEndEv";
end;
}