00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #include "net/tmwserv/generalhandler.h"
00023
00024 #include "net/tmwserv/network.h"
00025 #include "net/tmwserv/connection.h"
00026
00027 #include "net/tmwserv/beinghandler.h"
00028 #include "net/tmwserv/buysellhandler.h"
00029 #include "net/tmwserv/charserverhandler.h"
00030 #include "net/tmwserv/chathandler.h"
00031 #include "net/tmwserv/effecthandler.h"
00032 #include "net/tmwserv/guildhandler.h"
00033 #include "net/tmwserv/inventoryhandler.h"
00034 #include "net/tmwserv/itemhandler.h"
00035 #include "net/tmwserv/loginhandler.h"
00036 #include "net/tmwserv/logouthandler.h"
00037 #include "net/tmwserv/maphandler.h"
00038 #include "net/tmwserv/npchandler.h"
00039 #include "net/tmwserv/partyhandler.h"
00040 #include "net/tmwserv/playerhandler.h"
00041 #include "net/tmwserv/tradehandler.h"
00042
00043 #include "utils/gettext.h"
00044
00045 #include <list>
00046
00047 Net::GeneralHandler *generalHandler;
00048
00049 Net::Connection *gameServerConnection = 0;
00050 Net::Connection *chatServerConnection = 0;
00051 Net::Connection *accountServerConnection = 0;
00052
00053 namespace TmwServ {
00054
00055 GeneralHandler::GeneralHandler():
00056 mBeingHandler(new BeingHandler),
00057 mBuySellHandler(new BuySellHandler),
00058 mCharServerHandler(new CharServerHandler),
00059 mChatHandler(new ChatHandler),
00060 mEffectHandler(new EffectHandler),
00061 mGuildHandler(new GuildHandler),
00062 mInventoryHandler(new InventoryHandler),
00063 mItemHandler(new ItemHandler),
00064 mLoginHandler(new LoginHandler),
00065 mLogoutHandler(new LogoutHandler),
00066 mMapHandler(new MapHandler),
00067 mNpcHandler(new NpcHandler),
00068 mPartyHandler(new PartyHandler),
00069 mPlayerHandler(new PlayerHandler),
00070 mTradeHandler(new TradeHandler)
00071 {
00072 accountServerConnection = Net::getConnection();
00073 gameServerConnection = Net::getConnection();
00074 chatServerConnection = Net::getConnection();
00075
00076 generalHandler = this;
00077
00078 std::list<ItemDB::Stat*> stats;
00079 ItemDB::Stat stat;
00080 stat.tag = "str"; stat.format = N_("Strength: %d");
00081 stats.push_back(&stat);
00082 stat.tag = "agi"; stat.format = N_("Agility: %d");
00083 stats.push_back(&stat);
00084 stat.tag = "dex"; stat.format = N_("Dexterity: %d");
00085 stats.push_back(&stat);
00086 stat.tag = "vit"; stat.format = N_("Vitality: %d");
00087 stats.push_back(&stat);
00088 stat.tag = "int"; stat.format = N_("Intelligence: %d");
00089 stats.push_back(&stat);
00090 stat.tag = "will"; stat.format = N_("Willpower: %d");
00091 stats.push_back(&stat);
00092
00093 ItemDB::setStatsList(stats);
00094 }
00095
00096 void GeneralHandler::load()
00097 {
00098 Net::registerHandler(mBeingHandler.get());
00099 Net::registerHandler(mBuySellHandler.get());
00100 Net::registerHandler(mCharServerHandler.get());
00101 Net::registerHandler(mChatHandler.get());
00102 Net::registerHandler(mEffectHandler.get());
00103 Net::registerHandler(mGuildHandler.get());
00104 Net::registerHandler(mInventoryHandler.get());
00105 Net::registerHandler(mItemHandler.get());
00106 Net::registerHandler(mLoginHandler.get());
00107 Net::registerHandler(mLogoutHandler.get());
00108 Net::registerHandler(mMapHandler.get());
00109 Net::registerHandler(mNpcHandler.get());
00110 Net::registerHandler(mPartyHandler.get());
00111 Net::registerHandler(mPlayerHandler.get());
00112 Net::registerHandler(mTradeHandler.get());
00113 }
00114
00115 void GeneralHandler::unload()
00116 {
00117 Net::clearHandlers();
00118
00119 if (accountServerConnection)
00120 accountServerConnection->disconnect();
00121 if (gameServerConnection)
00122 gameServerConnection->disconnect();
00123 if (chatServerConnection)
00124 chatServerConnection->disconnect();
00125
00126 delete accountServerConnection;
00127 delete gameServerConnection;
00128 delete chatServerConnection;
00129
00130 Net::finalize();
00131 }
00132
00133 void GeneralHandler::flushNetwork()
00134 {
00135 Net::flush();
00136 }
00137
00138 bool GeneralHandler::isNetworkConnected()
00139 {
00140
00141 return true;
00142 }
00143
00144 void GeneralHandler::tick()
00145 {
00146
00147 }
00148
00149 void GeneralHandler::guiWindowsLoaded()
00150 {
00151
00152 }
00153
00154 void GeneralHandler::guiWindowsUnloaded()
00155 {
00156
00157 }
00158
00159 }