From 7707b4a7508391f95e574ee820559c724f7d230b Mon Sep 17 00:00:00 2001 From: GokuWeedLord Date: Sat, 21 Oct 2017 23:41:09 +1100 Subject: [PATCH] !unlock and !help debug commands --- .../DebugCommand/DebugCommandHandler.cpp | 26 ++++++++++++++++--- .../DebugCommand/DebugCommandHandler.h | 6 +++++ 2 files changed, 28 insertions(+), 4 deletions(-) diff --git a/src/servers/Server_Zone/DebugCommand/DebugCommandHandler.cpp b/src/servers/Server_Zone/DebugCommand/DebugCommandHandler.cpp index c1f8f2f7..0284a1e9 100644 --- a/src/servers/Server_Zone/DebugCommand/DebugCommandHandler.cpp +++ b/src/servers/Server_Zone/DebugCommand/DebugCommandHandler.cpp @@ -44,12 +44,13 @@ Core::DebugCommandHandler::DebugCommandHandler() registerCommand( "set", &DebugCommandHandler::set, "Loads and injects a premade Packet.", 1 ); registerCommand( "get", &DebugCommandHandler::get, "Loads and injects a premade Packet.", 1 ); registerCommand( "add", &DebugCommandHandler::add, "Loads and injects a premade Packet.", 1 ); - registerCommand( "inject", &DebugCommandHandler::injectPacket, "Loads and injects a premade Packet.", 1 ); - registerCommand( "injectc", &DebugCommandHandler::injectChatPacket, "Loads and injects a premade Packet.", 1 ); - registerCommand( "script_reload", &DebugCommandHandler::scriptReload, "Loads and injects a premade Packet.", 1 ); + registerCommand( "inject", &DebugCommandHandler::injectPacket, "Loads and injects a premade packet.", 1 ); + registerCommand( "injectc", &DebugCommandHandler::injectChatPacket, "Loads and injects a premade chat packet.", 1 ); + registerCommand( "script_reload", &DebugCommandHandler::scriptReload, "Reload all server scripts", 1 ); registerCommand( "nudge", &DebugCommandHandler::nudge, "Nudges you forward/up/down", 1 ); registerCommand( "info", &DebugCommandHandler::serverInfo, "Send server info", 0 ); - + registerCommand( "unlock", &DebugCommandHandler::unlockCharacter, "Unlock character", 1 ); + registerCommand( "help", &DebugCommandHandler::help, "Shows registered commands", 0 ); } // clear all loaded commands @@ -121,6 +122,18 @@ void Core::DebugCommandHandler::scriptReload( char * data, Core::Entity::PlayerP pPlayer->sendDebug( "Scripts reloaded." ); } +void Core::DebugCommandHandler::help( char* data, Entity::PlayerPtr pPlayer, boost::shared_ptr< Core::DebugCommand > command ) +{ + pPlayer->sendDebug( "Registered debug commands:" ); + for ( auto cmd : m_commandMap ) + { + if ( pPlayer->getGmRank( ) >= cmd.second->m_gmLevel ) + { + pPlayer->sendDebug( " - " + cmd.first + " - " + cmd.second->getHelpText( ) ); + } + } +} + void Core::DebugCommandHandler::set( char * data, Core::Entity::PlayerPtr pPlayer, boost::shared_ptr command ) { std::string subCommand = ""; @@ -502,3 +515,8 @@ void Core::DebugCommandHandler::serverInfo( char * data, Core::Entity::PlayerPtr pPlayer->sendDebug( "Compiled: " __DATE__ " " __TIME__ ); pPlayer->sendDebug( "Sessions: " + std::to_string( g_serverZone.getSessionCount() ) ); } + +void Core::DebugCommandHandler::unlockCharacter( char* data, Entity::PlayerPtr pPlayer, boost::shared_ptr< Core::DebugCommand > command ) +{ + pPlayer->unlock( ); +} diff --git a/src/servers/Server_Zone/DebugCommand/DebugCommandHandler.h b/src/servers/Server_Zone/DebugCommand/DebugCommandHandler.h index 12ff13b3..17dc3258 100644 --- a/src/servers/Server_Zone/DebugCommand/DebugCommandHandler.h +++ b/src/servers/Server_Zone/DebugCommand/DebugCommandHandler.h @@ -27,6 +27,9 @@ public: // execute command if registered void execCommand( char * data, Entity::PlayerPtr pPlayer ); + // help command + void help( char* data, Entity::PlayerPtr pPlayer, boost::shared_ptr command ); + // command handler callbacks void set( char * data, Entity::PlayerPtr pPlayer, boost::shared_ptr command ); void get( char * data, Entity::PlayerPtr pPlayer, boost::shared_ptr command ); @@ -39,6 +42,9 @@ public: void nudge( char* data, Entity::PlayerPtr pPlayer, boost::shared_ptr command ); void serverInfo( char * data, Entity::PlayerPtr pPlayer, boost::shared_ptr command ); + void unlockCharacter( char* data, Entity::PlayerPtr pPlayer, boost::shared_ptr command ); + void targetInfo( char* data, Entity::PlayerPtr pPlayer, boost::shared_ptr command ); + }; }