You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
108 lines
4.3 KiB
Plaintext
108 lines
4.3 KiB
Plaintext
//===== rAthena Script =======================================
|
|
//= Nightmare Biolabs
|
|
//===== Description: =========================================
|
|
//= Nightmare Biolabs Monster Spawn Script.
|
|
//===== Additional Comments: =================================
|
|
//= 1.0 First version. Boss and slaves spawn are assumptions
|
|
// based on lhz_dun.txt monsters spawn. [Capuche]
|
|
//= 1.1 Changed MvP spawn based on the amount of
|
|
// monsters killed. [Capuche]
|
|
//============================================================
|
|
|
|
lhz_dun_n,0,0 monster Eremes Guille 3208,20,5000,0,"lhz_dun_n::OnRegularDead3208"
|
|
lhz_dun_n,0,0 monster Magaleta Sorin 3209,10,5000,0,"lhz_dun_n::OnRegularDead3209"
|
|
lhz_dun_n,0,0 monster Catherine Cheiron 3210,15,5000,0,"lhz_dun_n::OnRegularDead3210"
|
|
lhz_dun_n,0,0 monster Shecil Damon 3211,20,5000,0,"lhz_dun_n::OnRegularDead3211"
|
|
lhz_dun_n,0,0 monster Harword Alt-Eisen 3212,10,5000,0,"lhz_dun_n::OnRegularDead3212"
|
|
lhz_dun_n,0,0 monster Seyren Windsor 3213,10,5000,0,"lhz_dun_n::OnRegularDead3213"
|
|
|
|
lhz_dun_n,0,0 monster Randel Lawrence 3226,10,5000,0,"lhz_dun_n::OnRegularDead3226"
|
|
lhz_dun_n,0,0 monster Flamel Emule 3227,10,5000,0,"lhz_dun_n::OnRegularDead3227"
|
|
lhz_dun_n,0,0 monster Celia Alde 3228,15,5000,0,"lhz_dun_n::OnRegularDead3228"
|
|
lhz_dun_n,0,0 monster Chen Liu 3229,15,5000,0,"lhz_dun_n::OnRegularDead3229"
|
|
lhz_dun_n,0,0 monster Gertie Wie 3230,15,5000,0,"lhz_dun_n::OnRegularDead3230"
|
|
lhz_dun_n,0,0 monster Alphoccio Basil 3231,10,5000,0,"lhz_dun_n::OnRegularDead3231"
|
|
lhz_dun_n,0,0 monster Trentini 3232,10,5000,0,"lhz_dun_n::OnRegularDead3232"
|
|
|
|
lhz_dun_n,0,0,0 script lhz_dun_n -1,{
|
|
end;
|
|
OnRegularDead3208: callsub( S_Regular, 3208 );
|
|
OnRegularDead3209: callsub( S_Regular, 3209 );
|
|
OnRegularDead3210: callsub( S_Regular, 3210 );
|
|
OnRegularDead3211: callsub( S_Regular, 3211 );
|
|
OnRegularDead3212: callsub( S_Regular, 3212 );
|
|
OnRegularDead3213: callsub( S_Regular, 3213 );
|
|
|
|
OnRegularDead3226: callsub( S_Regular, 3226 );
|
|
OnRegularDead3227: callsub( S_Regular, 3227 );
|
|
OnRegularDead3228: callsub( S_Regular, 3228 );
|
|
OnRegularDead3229: callsub( S_Regular, 3229 );
|
|
OnRegularDead3230: callsub( S_Regular, 3230 );
|
|
OnRegularDead3231: callsub( S_Regular, 3231 );
|
|
OnRegularDead3232: callsub( S_Regular, 3232 );
|
|
|
|
S_Regular:
|
|
.@mob_id = getarg(0);
|
|
if (.lhz_dun_n[.@mob_id] < 110 && .lhz_dun_n_boss == 0) {
|
|
.lhz_dun_n[.@mob_id]++;
|
|
if (.lhz_dun_n[.@mob_id] == 110) {
|
|
.@mini_boss = .@mob_id + 6 + (.@mob_id > 3219); // mini boss version ID: regular ID +6 for non-transcendent, +7 for others
|
|
monster "lhz_dun_n",0,0,"--en--",.@mini_boss,1, "lhz_dun_n::OnMiniDead" + .@mini_boss;
|
|
}
|
|
}
|
|
end;
|
|
|
|
OnMiniDead3214: callsub( S_Mini, 3214 );
|
|
OnMiniDead3215: callsub( S_Mini, 3215 );
|
|
OnMiniDead3216: callsub( S_Mini, 3216 );
|
|
OnMiniDead3217: callsub( S_Mini, 3217 );
|
|
OnMiniDead3218: callsub( S_Mini, 3218 );
|
|
OnMiniDead3219: callsub( S_Mini, 3219 );
|
|
|
|
OnMiniDead3233: callsub( S_Mini, 3233 );
|
|
OnMiniDead3234: callsub( S_Mini, 3234 );
|
|
OnMiniDead3235: callsub( S_Mini, 3235 );
|
|
OnMiniDead3236: callsub( S_Mini, 3236 );
|
|
OnMiniDead3237: callsub( S_Mini, 3237 );
|
|
OnMiniDead3238: callsub( S_Mini, 3238 );
|
|
OnMiniDead3239: callsub( S_Mini, 3239 );
|
|
|
|
S_Mini:
|
|
.@mob_id = getarg(0);
|
|
if (.lhz_dun_n[.@mob_id] < 4 && .lhz_dun_n_boss == 0) {
|
|
.lhz_dun_n[.@mob_id]++;
|
|
.@regular = .@mob_id - 6 - (.@mob_id > 3219);
|
|
if (.lhz_dun_n[.@mob_id] < 4)
|
|
.lhz_dun_n[.@regular] = 0; // note: mini boss version can re-spawn when the count of mini boss dead is reached? (currently they don't)
|
|
else {
|
|
setarray .@mini_boss_list[0], 3214,3215,3216,3217,3218,3219,3233,3234,3235,3236,3237,3238,3239;
|
|
for ( .@i = 0; .@i < 13; ++.@i ) {
|
|
if (.lhz_dun_n[.@mini_boss_list[.@i]] < 4)
|
|
end;
|
|
}
|
|
// MvP monster seems to only spawn at 12 o'clock
|
|
monster "lhz_dun_n",140,230,"--en--", F_Rand(3220,3221,3222,3223,3224,3225,3240,3241,3242,3243,3244,3245,3246),1, "lhz_dun_n::OnMyMVPDead";
|
|
mapannounce "lhz_dun_n", "Voice of Reaper: It's been a while.", bc_map; // unknown message
|
|
.lhz_dun_n_boss = 1;
|
|
deletearray .lhz_dun_n;
|
|
}
|
|
}
|
|
end;
|
|
OnMyMVPDead:
|
|
initnpctimer;
|
|
.lhz_dun_n_delay = 0;
|
|
killmonster "lhz_dun_n", "lhz_dun_n::OnMyMVPDead";
|
|
mapannounce "lhz_dun_n", "Voice of Reaper: See you soon.", bc_map, "0x00FF00";
|
|
end;
|
|
OnTimer60000:
|
|
.lhz_dun_n_delay++;
|
|
if (.lhz_dun_n_delay < 100) // unknown delay (currently 100 mins)
|
|
initnpctimer;
|
|
else {
|
|
stopnpctimer;
|
|
.lhz_dun_n_delay = 0;
|
|
.lhz_dun_n_boss = 0;
|
|
}
|
|
end;
|
|
}
|