[SCRIPT] GM Status Checker

Junior Spellweaver
Joined
Jun 24, 2007
Messages
136
Reaction score
1
OK since is unavailable for download anymore, I thought of sharing this one that I'm using.
This script allows a level 99 GM to add members of the GM Team to a window where-in players can check their status (Online/Offline).

The original script has a "friends online status" feature and is located , but I edited it to just have a GM Status check since the friend status is useless since there is already a friends list feature in RO and besides, it can be exploited. Not all people wants everyone to put their name on other people's "friends list" without their permission, especially when they're not really friends.

I also fixed some typo and basically changed the message in some lines to fit my taste. Anyway, here's the script.

Code:
//------------------------------------------------------------
//Start of GM Status Checker =================================
//------------------------------------------------------------
// Originally made by Schurke alias Littletiger ==============
//============================================================
// Fully edited by Janice of the LoadedRO Team ===============
//============================================================
// ================ www.LoadedRO.com =========================
//------------------------------------------------------------

prontera.gat,139,170,5    script    GM Status Checker    852,{
Start:
if (getgmlevel()==99)goto GM_Start;
mes "[GM Status Checker]";
mes "Hello there!";
mes "Wanna check if a GM is online?";
next;
menu "OK.",GM,"No thanks.",No;

GM_Start:
mes "[GM Status Checker]";
mes "Hello there boss! What do you wanna do today?";
next;
menu "Check the GM Window.",GMAdd,"Nothing in particular.",Non;

GMAdd:
mes "[GM Status Checker]";;
mes "Here, you can add/remove your GMs.";
mes "Make sure to write the name EXACTLY when adding.";
next;
menu "Show Online GMs",GM,"Add",AddGM,"Remove",RemGM,"Show",ShowGM,"Start New",Start,"End",cleanup;

Non:
mes "[GM Status Checker]";
mes "Alright then boss, catch you later!";
close;

No:
mes "[GM Status Checker]";
mes "Alright then, catch you later!";
close;

AddGM:
set $GMDig,$GMDig+1;
input $GMList$[$GMDig];
next;
mes "[GM Status Checker]";
mes "the Name you entered is";
mes $GMList$[$GMDig];
mes "Is that correct?";
next;
menu "No. Redo",-,"Yes",GMAdd;
set $GMDig,$GMDig-1;
goto AddGM;

RemGM:
mes "[GM Status Checker]";
mes "What excatly do you want to do?";
next;
menu "Remove All",RemAllGM,"Remove a Single GM",RemSingGM,"Start New",Start,"End",cleanup;

RemAllGM:
next;
mes "[GM Status Checker]";
mes "Are you sure that you want to remove all gms?";
next;
menu "Yep...",-,"Nope",Start;
mes "[GM Status Checker]";
mes "Please type in this number.";
set @Vari,rand(1,100);
mes @Vari;
input @vari2;
if ( @Vari != @vari2)goto WrongIn;
set $GMDig,0;
next;
mes "[GM Status Checker]";
mes "All gms have been successfully deleted.";
next;
menu "Start New",Start,"End",cleanup;

WrongIn:
next;
mes "[GM Status Checker]";
mes "You typed in the wrong number.";
next;
menu "Try again",RemAllGM,"Start New",Start,"End",cleanup;

RemSingGM:
mes "[GM Status Checker]";
mes "Please choose the GM you want to remove by number";
menu "List GM's",ShowGM,"Put in Number",-,"Start New",Start,"End",cleanup;
input @GMDigit;
if (( @GMDigit > $GMDig ) || ( @GMDigit < 0 ) || ( @GMDigit == 0 ))
{
mes "[GM Status Checker]";
mes "You have no such GM's Added.";
menu "Retry",RemSingGM,"Start New",Start,"End",cleanup;
}
set @counter, @GMDigit-1;
while (1){
set @counter, @counter+1;
setarray $GMList$[@counter],$GMList$[@counter-1];
if ( @counter == $GMDig)goto GMRemCom;
}

GMRemCom:
next;
mes "[GM Status Checker]";
mes "The GM has been successfully removed.";
next;
menu "Remove Another.",RemSingGM,"List Again",ShowGM,"Start New",Start,"End",cleanup;

ShowGM:
mes "[GM Status Checker]";
mes "Your current GM's are...";
mes "...";
set @counter,0; // Array Starts with GM Number 1
while (1) {
set @counter,@counter +1; // When runned the first time the counter is now 1! ( array 0 wont be displayed ! )
mes ""+@counter+": "+$GMList$[@counter]+"";
if (@counter > 200 ){
next;
menu "Next Page",next; //Debug function
}
if (@counter == $GMDig)
{
next;
goto GMAdd;
}
}

GM:
mes "[GM Status Checker]";
if ($GMDig == 0 ){
mes "There are no GM's added right now.";
next;
goto Start;
}
set @counter, 0;
while (1){
set @counter, @counter +1;
if (getcharid(0,$GMList$[@counter])>0){
mes ""+$GMList$[@counter]+" is ^00FF00Online^000000";}
else{
mes ""+$GMList$[@counter]+" is ^FF0000Offline^000000";}
//mes getcharid(0,$GMList$[@counter]);
if ( @counter == $GMDig){
close;}
}


cleanup:
close;

}

//------------------------------------------------------------
//End of GM Status Checker =================================
//------------------------------------------------------------
 
Last edited:
Back