summaryrefslogtreecommitdiffstats
path: root/src/game-server/gamehandler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game-server/gamehandler.cpp')
-rw-r--r--src/game-server/gamehandler.cpp42
1 files changed, 42 insertions, 0 deletions
diff --git a/src/game-server/gamehandler.cpp b/src/game-server/gamehandler.cpp
index 81f7a1e..1ca4f75 100644
--- a/src/game-server/gamehandler.cpp
+++ b/src/game-server/gamehandler.cpp
@@ -258,6 +258,48 @@ void GameHandler::processMessage(NetComputer *comp, MessageIn &message)
computer.character = NULL;
computer.status = CLIENT_LOGIN;
} break;
+
+ case PGMSG_GUILD_CREATE:
+ {
+ std::string name = message.readString();
+ int characterId = computer.character->getDatabaseID();
+ messageMap[characterId] = computer.character;
+ accountHandler->playerCreateGuild(characterId, name);
+ } break;
+
+ case PGMSG_GUILD_INVITE:
+ {
+ short guildId = message.readShort();
+ std::string member = message.readString();
+ int characterId = computer.character->getDatabaseID();
+ messageMap[characterId] = computer.character;
+ accountHandler->playerInviteToGuild(characterId, guildId, member);
+ } break;
+
+ case PGMSG_GUILD_ACCEPT:
+ {
+ std::string guildName = message.readString();
+ int characterId = computer.character->getDatabaseID();
+ messageMap[characterId] = computer.character;
+ accountHandler->playerAcceptInvite(characterId, guildName);
+ } break;
+
+ case PGMSG_GUILD_GET_MEMBERS:
+ {
+ short guildId = message.readShort();
+ int characterId = computer.character->getDatabaseID();
+ messageMap[characterId] = computer.character;
+ accountHandler->getGuildMembers(characterId, guildId);
+ } break;
+
+ case PGMSG_GUILD_QUIT:
+ {
+ short guildId = message.readShort();
+ int characterId = computer.character->getDatabaseID();
+ messageMap[characterId] = computer.character;
+ accountHandler->quitGuild(characterId, guildId);
+ } break;
+
default:
LOG_WARN("Invalid message type");
result.writeShort(XXMSG_INVALID);