- script Server_Maintenance -1,{
OnTalk:
/***********************************/
/**/.npc$ = "[Server Maintenance]";
/**/.gm = 99; //Level GM
/**/.user$ = "root"; //root
/**/.password = 12345; //Password
/**********************************/
mes .npc$;
if ( getgmlevel() < .gm ) {
mes "Sorry but you don't have a permission";
close;
}
mes "Hello "+ strcharinfo(0) +".";
mes "Please enter the username:";
next;
input .@usr$;
mes .npc$;
mes "Please enter password";
next;
input .@psw;
mes .npc$;
if ( .@usr$ != .user$ || .@psw != .password ) {
mes "There was a problem with your login information!";
close;
}
mes "Current state of the server : "+( ($server_maintenance)? "^00FFFFON": "^FF0000OFF" )+"^000000.";
mes "Do you want to activate the server in maintenance mode?";
next;
if ( select( "Turn On", "Turn Off" ) == 1 ) {
mes .npc$;
if ( $server_maintenance == true ) {
mes "The server is already turn on maintenance mode";
close;
}
mes "Server in maintenance mode ^00ff7fenabled^000000";
donpcevent "#maintenance::OnStartMaintenance";
close;
} else {
mes .npc$;
if ( $server_maintenance == false ) {
mes "The server is already turn off maintenance mode";
close;
}
mes "Server in maintenance mode ^00ff7fdisabled^000000";
$server_maintenance = false;
close;
}
end;
}
prontera,150,185,5 duplicate(Server_Maintenance) Server Maintenance 73
- script #maintenance -1,{
OnInit:
bindatcmd "maintenance", "Server_Maintenance::OnTalk";
end;
OnStartMaintenance:
.@one_sec = 1000; // just to debug this script
announce "The server will be temporarily closed for maintenance -- from 5 minutes", bc_all;
sleep 60 * .@one_sec;
announce "The server will be temporarily closed for maintenance -- from 4 minutes", bc_all;
sleep 60 * .@one_sec;
announce "The server will be temporarily closed for maintenance -- from 3 minutes", bc_all;
sleep 60 * .@one_sec;
announce "The server will be temporarily closed for maintenance -- from 2 minutes", bc_all;
sleep 60 * .@one_sec;
announce "The server will be temporarily closed for maintenance -- from 1 minutes", bc_all;
sleep 30 * .@one_sec;
announce "-- Server Shutdown in 30 seconds --", bc_all;
sleep 10 * .@one_sec;
announce "-- Server Shutdown in 20 seconds --", bc_all;
sleep 10 * .@one_sec;
announce "-- Server Shutdown in 10 seconds --", bc_all;
sleep 5 * .@one_sec;
announce "-- We will be back soon. Bye bye --", bc_all;
$server_maintenance = true;
addrid 0;
if ( getgmlevel() >= 99 ) end; // com'on ... wtf you kick another admin ?
if ( checkvending() & 2 ) end; // shouldn't kick @autotraders too ... hercules members complained in my topic
atcommand "@kick "+ strcharinfo(0);
end;
OnPCLoginEvent:
if ( $server_maintenance == false )
end;
if ( getgmlevel() >= 99 ) {
message strcharinfo(0), "The server is currently in maintenance mode";
end;
}
mes "[^55aaffXXXRO Server^000000]";
mes "Sorry but the server is temporarily out of service,";
mes "for maintenance.";
mes "Please try again later!";
sleep2 5000;
atcommand "@kick "+ strcharinfo(0);
end;
}