From cb10231838c918dbf380899a947599331818a4bc Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Wed, 10 Aug 2016 01:03:32 +0300 Subject: Add gm command for send restart events to all servers. For now it support only one char and one map server. For support this actions need use hercules wrapper. --- src/emap/atcommand.c | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'src/emap/atcommand.c') diff --git a/src/emap/atcommand.c b/src/emap/atcommand.c index 7c3f345..1928620 100644 --- a/src/emap/atcommand.c +++ b/src/emap/atcommand.c @@ -23,6 +23,7 @@ #include "emap/atcommand.h" #include "emap/lang.h" +#include "emap/inter.h" const char* eatcommand_msgsd_pre(struct map_session_data **sdPtr, int *msgPtr) @@ -131,12 +132,30 @@ ACMD2(slide) } ACMD1(mapExit) +{ + int code = 1; + if (!*message || sscanf(message, "%5d", &code) < 1) + code = 1; + + map->retval = code; + map->do_shutdown(); + return true; +} + +// 100 - terminate all servers +// 101 - restart all servers +// 102 - restart char and map servers +// 103 - restart map server +ACMD1(serverExit) { int code = 0; if (!*message || sscanf(message, "%5d", &code) < 1) - code = 0; + return false; + + send_char_exit(code); map->retval = code; map->do_shutdown(); + return true; } -- cgit v1.2.3-70-g09d2