summaryrefslogtreecommitdiff
path: root/src/main.cpp
diff options
context:
space:
mode:
authorAaron Marks <nymacro@gmail.com>2005-07-26 13:05:08 +0000
committerAaron Marks <nymacro@gmail.com>2005-07-26 13:05:08 +0000
commit9603167e6b7c364e1a979f5a23420b6289026f46 (patch)
treee4a9c104c12057ab737ce592e64f31a25e18ae76 /src/main.cpp
parent0a7f92741ee87b35d30ccc351fe892e090b1d31a (diff)
downloadmanaserv-9603167e6b7c364e1a979f5a23420b6289026f46.tar.gz
manaserv-9603167e6b7c364e1a979f5a23420b6289026f46.tar.bz2
manaserv-9603167e6b7c364e1a979f5a23420b6289026f46.tar.xz
manaserv-9603167e6b7c364e1a979f5a23420b6289026f46.zip
Added shell for GameHandler (core game message handler).
Updated PostgreSQL tables -- now another unknown error results after various operations. Updated Item class (now inherits from Object).
Diffstat (limited to 'src/main.cpp')
-rw-r--r--src/main.cpp16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/main.cpp b/src/main.cpp
index 6178940f..ff939e12 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -31,6 +31,7 @@
#include "netsession.h"
#include "connectionhandler.h"
#include "accounthandler.h"
+#include "gamehandler.h"
#include "chathandler.h"
#include "storage.h"
#include "configuration.h"
@@ -73,7 +74,8 @@ Skill skillTree("base"); /**< Skill tree */
Configuration config; /**< XML config reader */
AccountHandler *accountHandler = new AccountHandler(); /**< Account message handler */
-ChatHandler *chatHandler = new ChatHandler();
+ChatHandler *chatHandler = new ChatHandler(); /**< Communications (chat) messaqge handler */
+GameHandler *gameHandler = new GameHandler(); /**< Core game message handler */
/**
* SDL timer callback, sends a <code>TMW_WORLD_TICK</code> event.
@@ -168,6 +170,7 @@ void deinitialize()
// destroy message handlers
delete accountHandler;
delete chatHandler;
+ delete gameHandler;
// Get rid of persistent data storage
tmwserv::Storage::destroy();
@@ -207,9 +210,20 @@ int main(int argc, char *argv[])
connectionHandler->registerHandler(CMSG_REGISTER, accountHandler);
connectionHandler->registerHandler(CMSG_CHAR_CREATE, accountHandler);
connectionHandler->registerHandler(CMSG_CHAR_SELECT, accountHandler);
+
connectionHandler->registerHandler(CMSG_SAY, chatHandler);
connectionHandler->registerHandler(CMSG_ANNOUNCE, chatHandler);
+ connectionHandler->registerHandler(CMSG_PICKUP, gameHandler);
+ connectionHandler->registerHandler(CMSG_USE_OBJECT, gameHandler);
+ connectionHandler->registerHandler(CMSG_TARGET, gameHandler);
+ connectionHandler->registerHandler(CMSG_WALK, gameHandler);
+ connectionHandler->registerHandler(CMSG_START_TRADE, gameHandler);
+ connectionHandler->registerHandler(CMSG_START_TALK, gameHandler);
+ connectionHandler->registerHandler(CMSG_REQ_TRADE, gameHandler);
+ connectionHandler->registerHandler(CMSG_USE_ITEM, gameHandler); // NOTE: this is probably redundant (CMSG_USE_OBJECT)
+ connectionHandler->registerHandler(CMSG_EQUIP, gameHandler);
+
//LOG_INFO("The Mana World Server v" << PACKAGE_VERSION) PACKAGE_VERSION undeclared
session->startListen(connectionHandler.get(), SERVER_PORT);
LOG_INFO("Listening on port " << SERVER_PORT << "...")