diff options
Diffstat (limited to 'src/chat-server')
-rw-r--r-- | src/chat-server/guild.cpp | 34 | ||||
-rw-r--r-- | src/chat-server/guild.hpp | 15 | ||||
-rw-r--r-- | src/chat-server/guildhandler.cpp | 12 |
3 files changed, 24 insertions, 37 deletions
diff --git a/src/chat-server/guild.cpp b/src/chat-server/guild.cpp index 9e5adb87..3807b68f 100644 --- a/src/chat-server/guild.cpp +++ b/src/chat-server/guild.cpp @@ -24,7 +24,7 @@ #include <algorithm> Guild::Guild(const std::string &name) : -mName(name) + mName(name) { } @@ -35,7 +35,7 @@ Guild::~Guild() void Guild::addMember(int playerId, int permissions) { // create new guild member - GuildMember *member = new GuildMember(); + GuildMember *member = new GuildMember; member->mId = playerId; member->mPermissions = permissions; @@ -63,18 +63,15 @@ void Guild::removeMember(int playerId) mMembers.remove(member); } -int Guild::getOwner() +int Guild::getOwner() const { - std::list<GuildMember*>::iterator itr = mMembers.begin(); - std::list<GuildMember*>::iterator itr_end = mMembers.end(); + std::list<GuildMember*>::const_iterator itr = mMembers.begin(); + std::list<GuildMember*>::const_iterator itr_end = mMembers.end(); while (itr != itr_end) { if ((*itr)->mPermissions == GAL_OWNER) - { return (*itr)->mId; - } - ++itr; } @@ -90,7 +87,7 @@ void Guild::setOwner(int playerId) } } -bool Guild::checkInvited(int playerId) +bool Guild::checkInvited(int playerId) const { return std::find(mInvited.begin(), mInvited.end(), playerId) != mInvited.end(); } @@ -100,29 +97,26 @@ void Guild::addInvited(int playerId) mInvited.push_back(playerId); } -bool Guild::checkInGuild(int playerId) +bool Guild::checkInGuild(int playerId) const { - GuildMember *member = getMember(playerId); - return member ? true : false; + return getMember(playerId) != 0; } -GuildMember* Guild::getMember(int playerId) +GuildMember *Guild::getMember(int playerId) const { - std::list<GuildMember*>::iterator itr = mMembers.begin(), itr_end = mMembers.end(); + std::list<GuildMember*>::const_iterator itr = mMembers.begin(), + itr_end = mMembers.end(); while (itr != itr_end) { if ((*itr)->mId == playerId) - { return (*itr); - } - ++itr; } - return NULL; + return 0; } -bool Guild::canInvite(int playerId) +bool Guild::canInvite(int playerId) const { // Guild members with permissions above NONE can invite // Check that guild members permissions are not NONE @@ -132,7 +126,7 @@ bool Guild::canInvite(int playerId) return false; } -int Guild::getUserPermissions(int playerId) +int Guild::getUserPermissions(int playerId) const { GuildMember *member = getMember(playerId); return member->mPermissions; diff --git a/src/chat-server/guild.hpp b/src/chat-server/guild.hpp index 9a90faa4..e9207a31 100644 --- a/src/chat-server/guild.hpp +++ b/src/chat-server/guild.hpp @@ -34,7 +34,6 @@ public: int mId; std::string mName; int mPermissions; - }; /** @@ -67,7 +66,7 @@ class Guild /** * Return owner id */ - int getOwner(); + int getOwner() const; /** * Set player as owner of the guild. @@ -83,7 +82,7 @@ class Guild /** * Check if player has been invited to the guild. */ - bool checkInvited(int playerId); + bool checkInvited(int playerId) const; /** * Add a player to the invite list. @@ -117,17 +116,17 @@ class Guild /** * Find member by name. */ - bool checkInGuild(int playerId); + bool checkInGuild(int playerId) const; /** * Returns whether a user can invite */ - bool canInvite(int playerId); + bool canInvite(int playerId) const; /** * Returns a users permissions */ - int getUserPermissions(int playerId); + int getUserPermissions(int playerId) const; /** * Sets a users permissions @@ -136,9 +135,9 @@ class Guild protected: /** - * Return a member based on their character name + * Searches for a guild member by player ID */ - GuildMember* getMember(int playerId); + GuildMember *getMember(int playerId) const; private: short mId; diff --git a/src/chat-server/guildhandler.cpp b/src/chat-server/guildhandler.cpp index 8067cb7c..523e68ac 100644 --- a/src/chat-server/guildhandler.cpp +++ b/src/chat-server/guildhandler.cpp @@ -54,15 +54,10 @@ void ChatHandler::sendGuildRejoin(ChatClient &client) std::vector<Guild*> guilds = guildManager->getGuildsForPlayer(client.characterId); for (unsigned int i = 0; i != guilds.size(); ++i) { - Guild *guild = guilds[i]; - short permissions; - if (!guild) - { - return; - } - permissions = guild->getUserPermissions(client.characterId); + const Guild *guild = guilds[i]; - std::string guildName = guild->getName(); + const int permissions = guild->getUserPermissions(client.characterId); + const std::string guildName = guild->getName(); // Tell the client what guilds the character belongs to and their permissions MessageOut msg(CPMSG_GUILD_REJOIN); @@ -80,7 +75,6 @@ void ChatHandler::sendGuildRejoin(ChatClient &client) client.send(msg); sendGuildListUpdate(guildName, client.characterName, GUILD_EVENT_ONLINE_PLAYER); - } } |