oh, my bad, I noticed the error I did...
I just forgot to specify the map in the mapannounce and mapflag command.
Also, I optimized the script when deleting the mapflag.
- script Poring Summoner -1,{
OnInit:
//---- NPC Config -----
set .ItemID, 1000;
set .SpecialPorings, 2;
set .NormalPorings, 2;
setarray .Map$[0], "lighthalzen","louyang","comodo","xmas","aldebaran","izlude","payon","geffen","morocc","prontera";
//---------------------
setnpctimer 0;
initnpctimer;
end;
OnTimer360000: //1 hour delay
stopnpctimer;
killmonsterall .Map$[.loc];
set .loc, rand(getarraysize(.Map$));
setmapflag .Map$[.loc], mf_noskill;
monster .Map$[.loc], 0, 0, "Poring", 1002, .SpecialPorings, "Poring Summoner::OnSpecialKill";
monster .Map$[.loc], 0, 0, "Poring", 1002, .NormalPorings, "Poring Summoner::OnNormalKill";
announce "The Poring Event has begun!", 0;
sleep 1000;
announce "Location: " + .Map$[.loc], 0;
sleep 1000;
announce "Special Poring: " + .SpecialPorings, 0;
sleep 1000;
announce "Normal Poring: " + .NormalPorings, 0;
end;
OnSpecialKill:
set .SpecialPorings, .SpecialPorings - 1;
mapannounce .Map$[.loc], strcharinfo(0) + " got a " + getitemname(.ItemID) + "!", bc_blue;
getitem .ItemID,1;
goto PoringCount;
OnNormalKill:
set .NormalPorings, .NormalPorings - 1;
goto PoringCount;
PoringCount:
if( .SpecialPorings || .NormalPorings )
mapannounce .Map$[.loc], "Special Poring: " + .SpecialPorings + " || Normal Poring: " + .NormalPorings, bc_blue;
else {
announce "The Poring Event has ended.", 0;
removemapflag .Map$[.loc], mf_noskill;
deletearray .Map$[0], getarraysize(.Map$);
goto OnInit;
}
end;
}
This should fix my typo.