summaryrefslogtreecommitdiff
path: root/src/account.cpp
diff options
context:
space:
mode:
authorYohann Ferreira <bertram@cegetel.net>2005-12-11 22:31:28 +0000
committerYohann Ferreira <bertram@cegetel.net>2005-12-11 22:31:28 +0000
commit5ef4627a825d2c1ffd59a8ad33d05a6d72240a69 (patch)
treec1103c9a0dfa660f95277823827b5b77a6aa9097 /src/account.cpp
parent85e4cfdb4043ea44ad1cd74041c4589b035fc65b (diff)
downloadmanaserv-5ef4627a825d2c1ffd59a8ad33d05a6d72240a69.tar.gz
manaserv-5ef4627a825d2c1ffd59a8ad33d05a6d72240a69.tar.bz2
manaserv-5ef4627a825d2c1ffd59a8ad33d05a6d72240a69.tar.xz
manaserv-5ef4627a825d2c1ffd59a8ad33d05a6d72240a69.zip
Added logout and character deletion support. Changed the response code as trying to login when already logged in.
Diffstat (limited to 'src/account.cpp')
-rw-r--r--src/account.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/account.cpp b/src/account.cpp
index bf20ac34..86815ed4 100644
--- a/src/account.cpp
+++ b/src/account.cpp
@@ -176,6 +176,29 @@ Account::addCharacter(BeingPtr character)
}
}
+/**
+ * Remove a character.
+ */
+bool
+Account::delCharacter(std::string name)
+{
+ Beings::iterator it =
+ std::find_if(mCharacters.begin(),
+ mCharacters.end(),
+ std::bind2nd(obj_name_is<BeingPtr>(), name)
+ );
+
+ if (it != mCharacters.end()) {
+ // Exists, delete it.
+ mCharacters.erase(it++);
+ return true;
+ }
+ else
+ {
+ return false;
+ }
+}
+
/**
* Get all the characters.