diff options
author | Andrei Karas <akaras@inbox.ru> | 2014-12-12 12:24:21 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2014-12-12 12:24:21 +0300 |
commit | 38d5199a67d59d1ba8fc02a3771a9567d66efd7d (patch) | |
tree | 44612eafba6d690c03097862c065a6a9b00db67d /src/actions | |
parent | ddb8fd5d139292ff1f862384577c723db34cf467 (diff) | |
download | manaplus-38d5199a67d59d1ba8fc02a3771a9567d66efd7d.tar.gz manaplus-38d5199a67d59d1ba8fc02a3771a9567d66efd7d.tar.bz2 manaplus-38d5199a67d59d1ba8fc02a3771a9567d66efd7d.tar.xz manaplus-38d5199a67d59d1ba8fc02a3771a9567d66efd7d.zip |
Add chat command for nuke players.
New chat command: /nuke NAME
Diffstat (limited to 'src/actions')
-rw-r--r-- | src/actions/commands.cpp | 15 | ||||
-rw-r--r-- | src/actions/commands.h | 1 |
2 files changed, 16 insertions, 0 deletions
diff --git a/src/actions/commands.cpp b/src/actions/commands.cpp index c8d4f2b21..09895dc03 100644 --- a/src/actions/commands.cpp +++ b/src/actions/commands.cpp @@ -229,6 +229,21 @@ impHandler(chatEnemy) return true; } +impHandler(chatNuke) +{ + if (!actorManager) + return false; + + const std::string nick = getNick(event); + Being *const being = actorManager->findBeingByName( + nick, ActorType::Player); + if (!being) + return true; + + actorManager->addBlock(static_cast<uint32_t>(being->getId())); + actorManager->destroy(being); +} + impHandler0(present) { if (chatWindow) diff --git a/src/actions/commands.h b/src/actions/commands.h index 085b89663..160737572 100644 --- a/src/actions/commands.h +++ b/src/actions/commands.h @@ -36,6 +36,7 @@ namespace Actions decHandler(chatBlackList); decHandler(chatEnemy); decHandler(chatErase); + decHandler(chatNuke); decHandler(present); decHandler(printAll); decHandler(move); |