diff options
Diffstat (limited to 'src/account.cpp')
-rw-r--r-- | src/account.cpp | 23 |
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. |