#include <lib.h> #include <daemons.h> inherit LIB_DAEMON; mixed cmd(string args) { object ob; args = lower_case(args); if(!user_exists(args)) return capitalize(args) + " is not a member of " + possessive_noun(mud_name()) + " reality."; WEB_SESSIONS_D->EndSession(args); if(!ob = find_player(args)){ if(member_array(args, PLAYERS_D->GetPendingUnpauses()) != -1){ PLAYERS_D->RemovePendingUnpause(args); write("Pending unpause for "+capitalize(args)+" removed."); } if(PLAYERS_D->GetPlayerData(args, "Paused")){ return capitalize(args) + " is already paused."; } if(member_array(args, PLAYERS_D->GetPendingPauses()) != -1){ return capitalize(args) + " is already pending a pause."; } PLAYERS_D->AddPendingPause(args); write(capitalize(args)+" will be paused next time they log in."); return 1; } if(ob == this_player()){ write("You can't pause yourself."); return 1; } if(ob->GetPlayerPaused()){ write(capitalize(args) + " is already paused!"); return 1; } write("You pause "+capitalize(args)+"."); ob->SetPlayerPaused(1); ob->eventPrint("You have been paused. Commands will not work until you are unpaused."); return 1; } string GetHelp(){ return ("Syntax: pause <PLAYER>\n\n" "Causes the player to be unable to run any commands. Useful for " "immediately halting problem behavior."); }