summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBjørn Lindeijer <bjorn@lindeijer.nl>2008-05-29 16:50:34 +0000
committerBjørn Lindeijer <bjorn@lindeijer.nl>2008-05-29 16:50:34 +0000
commitd926241b94baa93138ecbb73619bd3a3920493ee (patch)
tree91d401a45e82d9debaefa159f6e85f1fc2fca012
parent8d90d6d742766ef7af2aedc36c4b434c1cc61fda (diff)
downloadmanaserv-d926241b94baa93138ecbb73619bd3a3920493ee.tar.gz
manaserv-d926241b94baa93138ecbb73619bd3a3920493ee.tar.bz2
manaserv-d926241b94baa93138ecbb73619bd3a3920493ee.tar.xz
manaserv-d926241b94baa93138ecbb73619bd3a3920493ee.zip
Fixed execution of commands even if the user has insufficient rights (patch by
rodge).
-rw-r--r--ChangeLog13
-rw-r--r--src/game-server/command.cpp7
2 files changed, 13 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 5b9068eb..4e086a12 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2008-05-29 Roderic Morris <roderic@ccs.neu.edu>
+
+ * src/game-server/command.cpp: Fixed execution of commands even if the
+ user has insufficient rights.
+
2008-05-23 David Athay <ko2fan@gmail.com>
* src/chat-server/guildmanager.cpp,
@@ -8,10 +13,10 @@
* src/game-server/being.hpp, src/game-server/collisiondetection.cpp,
src/game-server/collisiondetection.hpp, src/scripting/lua:cpp,
- data/scripts/libtmw.lua: Implemented script bindings for getting beings
- in a circular map area and damaging beings.
- * data/test.lua: Scripted an NPC which damages all monsters and characters
- which come close to it.
+ data/scripts/libtmw.lua: Implemented script bindings for getting
+ beings in a circular map area and damaging beings.
+ * data/test.lua: Scripted an NPC which damages all monsters and
+ characters which come close to it.
2008-05-22 Roderic Morris <roderic@ccs.neu.edu>
diff --git a/src/game-server/command.cpp b/src/game-server/command.cpp
index 836be6ad..4c9ae116 100644
--- a/src/game-server/command.cpp
+++ b/src/game-server/command.cpp
@@ -204,7 +204,7 @@ static void spawn(Character *from, MonsterClass *specy, int nb)
{
MapComposite *map = from->getMap();
Point const &pos = from->getPosition();
-
+
for (int i = 0; i < nb; ++i)
{
Being *monster = new Monster(specy);
@@ -315,6 +315,7 @@ void runCommand(Character *ch, std::string const &text)
if (c->level > ch->getAccountLevel())
{
say(ch, "You have insufficient rights to perform the " + s + " command");
+ return;
}
intptr_t args[4];
@@ -395,7 +396,7 @@ void runCommand(Character *ch, std::string const &text)
say(ch, "Map " + arg + " was not found");
return;
}
- break;
+ break;
case 'n':
args[i] = atoi(arg.c_str());
@@ -417,7 +418,7 @@ void runCommand(Character *ch, std::string const &text)
case 's':
args[i] = (intptr_t)new std::string(arg);
break;
-
+
}
pos = pos2;
}