From 79ea710ca5facb2c20fae16d6107dfa16a0f22bc Mon Sep 17 00:00:00 2001 From: skotlex Date: Wed, 20 Sep 2006 00:16:34 +0000 Subject: - Fixed nocommand mapflag causing the "you can't use commands on this map" message to trigger one very single chat, instead of only for actual @/# command invocation. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8817 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/atcommand.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) (limited to 'src/map/atcommand.c') diff --git a/src/map/atcommand.c b/src/map/atcommand.c index 8d3756441..5c579f05b 100644 --- a/src/map/atcommand.c +++ b/src/map/atcommand.c @@ -807,17 +807,20 @@ is_atcommand(const int fd, struct map_session_data* sd, const char* message, int if (!*str) return AtCommand_None; - if (map[sd->bl.m].nocommand && - (gmlvl > 0? gmlvl:pc_isGM(sd)) < map[sd->bl.m].nocommand) - { //Command not allowed on this map. - sprintf(atcmd_output, msg_txt(143)); - clif_displaymessage(fd, atcmd_output); - return AtCommand_None; - } - type = atcommand(sd, gmlvl > 0 ? gmlvl : pc_isGM(sd), str, &info); + if (!gmlvl) gmlvl = pc_isGM(sd); + type = atcommand(sd, gmlvl, str, &info); if (type != AtCommand_None) { char command[100]; const char* p = str; + + if (map[sd->bl.m].nocommand && + gmlvl < map[sd->bl.m].nocommand) + { //Command not allowed on this map. + sprintf(atcmd_output, msg_txt(143)); + clif_displaymessage(fd, atcmd_output); + return AtCommand_None; + } + malloc_tsetdword(command, '\0', sizeof(command)); malloc_tsetdword(atcmd_output, '\0', sizeof(atcmd_output)); while (*p && !isspace(*p)) -- cgit v1.2.3-60-g2f50