summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Athay <ko2fan@gmail.com>2008-04-18 15:05:33 +0000
committerDavid Athay <ko2fan@gmail.com>2008-04-18 15:05:33 +0000
commit17637bdf1836b16ce3025ac993e44bb27dbff593 (patch)
treef9bb05a2d565d4f0bfbfef38f7f429768197be20
parent6c9a64ba9686cd4390f8039421b7af903bb436e5 (diff)
downloadmanaserv-17637bdf1836b16ce3025ac993e44bb27dbff593.tar.gz
manaserv-17637bdf1836b16ce3025ac993e44bb27dbff593.tar.bz2
manaserv-17637bdf1836b16ce3025ac993e44bb27dbff593.tar.xz
manaserv-17637bdf1836b16ce3025ac993e44bb27dbff593.zip
Fixed guilds not being removed when leader quits.
-rw-r--r--ChangeLog6
-rw-r--r--src/chat-server/chatchannelmanager.cpp5
-rw-r--r--src/chat-server/chatclient.hpp1
-rw-r--r--src/chat-server/chathandler.cpp9
4 files changed, 11 insertions, 10 deletions
diff --git a/ChangeLog b/ChangeLog
index 18d13064..713d6583 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2008-04-18 David Athay <ko2fan@gmail.com>
+
+ * src/chat-server/chatchannelmanager.cpp,
+ src/chat-server/chatclient.hpp, src/chat-server/chathandler.cpp:
+ Fixed guilds not being removed when leader quits.
+
2008-04-17 David Athay <ko2fan@gmail.com>
* src/chat-server/chathandler.hpp, src/chat-server/chathandler.cpp:
diff --git a/src/chat-server/chatchannelmanager.cpp b/src/chat-server/chatchannelmanager.cpp
index 03a1c78b..258b2d60 100644
--- a/src/chat-server/chatchannelmanager.cpp
+++ b/src/chat-server/chatchannelmanager.cpp
@@ -29,7 +29,7 @@
#include "account-server/dalstorage.hpp"
#include "chat-server/chatclient.hpp"
-ChatChannelManager::ChatChannelManager() : mNextChannelId(0)
+ChatChannelManager::ChatChannelManager() : mNextChannelId(1)
{
// Load stored public chat channels from db
mChatChannels = storage->getChannelList();
@@ -146,7 +146,8 @@ int ChatChannelManager::nextUsable()
}
else
{
- channelId = ++mNextChannelId;
+ channelId = mNextChannelId;
+ ++mNextChannelId;
}
return channelId;
diff --git a/src/chat-server/chatclient.hpp b/src/chat-server/chatclient.hpp
index d8c44ba3..59950577 100644
--- a/src/chat-server/chatclient.hpp
+++ b/src/chat-server/chatclient.hpp
@@ -51,7 +51,6 @@ class ChatClient : public NetComputer
std::string characterName;
std::vector< ChatChannel * > channels;
- std::vector< Guild* > guilds;
Party* party;
unsigned char accountLevel;
};
diff --git a/src/chat-server/chathandler.cpp b/src/chat-server/chathandler.cpp
index 9d146ad1..ca0cc88c 100644
--- a/src/chat-server/chathandler.cpp
+++ b/src/chat-server/chathandler.cpp
@@ -338,7 +338,7 @@ ChatHandler::handleRegisterChannelMessage(ChatClient &client, MessageIn &msg)
else if (guildManager->doesExist(channelName))
{
// Channel already exists
- reply.writeByte(ERRMSG_INVALID_ARGUMENT);
+ reply.writeByte(ERRMSG_ALREADY_TAKEN);
}
else
{
@@ -579,9 +579,6 @@ ChatHandler::handleGuildCreation(ChatClient &client, MessageIn &msg)
// Send autocreated channel id
short channelId = joinGuildChannel(guildName, client);
reply.writeShort(channelId);
-
- // Add new guild to chatclient
- client.guilds.push_back(guild);
}
else
{
@@ -661,8 +658,6 @@ ChatHandler::handleGuildAcceptInvite(ChatClient &client, MessageIn &msg)
short id = joinGuildChannel(guild->getName(), client);
reply.writeShort(id);
-
- client.guilds.push_back(guild);
}
else
{
@@ -723,7 +718,7 @@ ChatHandler::handleGuildQuit(ChatClient &client, MessageIn &msg)
{
reply.writeByte(ERRMSG_OK);
reply.writeShort(guildId);
- guild->removeMember(client.characterName);
+ guildManager->removeGuildMember(guildId, client.characterName);
}
else
{