That was my first idea, but it didn't work on level ups. I tried this, and it seems to be working a little more consistently, actually.
Code:
sub EVENT_LEVEL_UP{
quest::settimer("flagcheck", 1);
}
sub EVENT_TIMER{
if ($timer eq "flagcheck"){
quest::stoptimer("flagcheck");
if (!defined($qglobals{maxlevel}) || $ulevel>=$qglobals{maxlevel}) {
quest::setglobal("maxlevel", $ulevel, 5, "F");
}
elsif (!defined($qglobals{kunarkflag}) && $ulevel==51){
$client->Message(5,"Congratulations on reaching level 51! This is the maximum level for the current expansion. It is HIGHLY recommended that you set AA experience to 100 percent until you unlock Kunark. This will avoid any possible bugs resulting from you trying to level beyond 51.");
}
elsif (!defined($qglobals{powerflag}) && $ulevel==60){
$client->Message(5,"Congratulations on reaching level 60! This is the maximum level for the current expansion. It is HIGHLY recommended that you set AA experience to 100 percent until you unlock The Planes of Power. This will avoid any possible bugs resulting from you trying to level beyond 60.");
}
elsif (!defined($qglobals{kunarkflag}) && $ulevel>=52 && $ulevel<=60){
quest::settimer("delevela", 1);
$client->Message(5,"You can not yet go past level 51");
}
elsif (!defined($qglobals{powerflag}) && $ulevel>=61){
$client->Message(5,"You can not yet go past level 60");
quest::settimer("delevelb", 1);
}
}
elsif ($timer eq "delevela"){
$client->SetEXP(180000000, 0, false);
$client->SetLevel(51);
quest::stoptimer("delevela");
}
elsif ($timer eq "delevelb"){
$client->SetEXP(620000000, 0, false);
$client->SetLevel(60);
quest::stoptimer("delevelb");
}
}