- script Invasion -1,{ OnClock1151: OnClock1155: set .t, rand(getarraysize(.@map$)); set .cnt, 1; set .killed, .quan; announce "Monsters are invading town "+.map$[.t],0; announce "Wave #"+(.cnt)+" starts!",0; monster .map$[.t],0,0,"Invasion Monster",.mob[rand(getarraysize(.mob))],.quan,strnpcinfo(0)+"::OnInvasionKilled"; end; OnInvasionKilled: set .killed, .killed - 1; switch( .killed ) { case 0: break; default: mapannounce .map$[.t],"Monster left on map: "+.killed,0; end; } set .cnt, .cnt + 1; set .killed, .quan; if( .cnt > .wave ) { announce "The Invasion Boss shows himself!",0; monster .map$[.t],0,0,"Invasion Boss",.boss[rand(getarraysize(.boss))],1,strnpcinfo(0)+"::OnBossKilled"; end; } announce "Wave #"+(.cnt)+" starts!",0; monster .map$[.t],0,0,"Invasion Monster",.mob[rand(getarraysize(.mob))],.quan,strnpcinfo(0)+"::OnInvasionKilled"; end; OnBossKilled: announce strcharinfo(0)+" has ended the invasion in "+.map$[.t],0; getitem 20010,5; end; OnInit: set .wave, 3; // Number of waves BEFORE the boss set .quan, 60; // Number of mobs spawned for each non-MVP wave setarray .boss[0],3006; // Add all MVP IDs that you want to summon at random setarray .mob[0],3002,3003,3004,3005; // Add all the mob IDs that you want to summon at random setarray .map$[0],"guild_vs1","guild_vs2","guild_vs3"; // Add all the map warps you want your invasion to take place at random }