aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Server
diff options
context:
space:
mode:
authorMachiavelli <machiavelli.trinity@gmail.com>2011-07-27 17:51:57 +0200
committerMachiavelli <machiavelli.trinity@gmail.com>2011-07-27 17:51:57 +0200
commit0dcc22907114508141cbabbca69aeaa0791feb79 (patch)
tree7c06ff9c085d0f10825f12951e41178de852f644 /src/server/game/Server
parent2eb69330b4f15e1fad6702a4829420c1a7f33208 (diff)
Core/Commands: Allow muting offline players - the mute will become effective on next player login.
Diffstat (limited to 'src/server/game/Server')
-rwxr-xr-xsrc/server/game/Server/WorldSocket.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/server/game/Server/WorldSocket.cpp b/src/server/game/Server/WorldSocket.cpp
index fb152cfd331..8c854b7d30c 100755
--- a/src/server/game/Server/WorldSocket.cpp
+++ b/src/server/game/Server/WorldSocket.cpp
@@ -889,7 +889,13 @@ int WorldSocket::HandleAuthSession (WorldPacket& recvPacket)
K.SetHexStr (fields[1].GetCString());
- time_t mutetime = time_t (fields[7].GetUInt64());
+ int64 mutetime = fields[7].GetInt64();
+ //! Negative mutetime indicates amount of seconds to be muted effective on next login - which is now.
+ if (mutetime < 0)
+ {
+ mutetime = time(NULL) + abs(mutetime);
+ LoginDatabase.PExecute("UPDATE account SET mutetime = " SI64FMTD " WHERE id = '%u'", mutetime, id);
+ }
locale = LocaleConstant (fields[8].GetUInt8());
if (locale >= TOTAL_LOCALES)