diff options
author | Hello=) <hello@themanaworld.org> | 2024-03-29 04:23:18 +0300 |
---|---|---|
committer | Hello=) <hello@themanaworld.org> | 2024-03-29 04:23:18 +0300 |
commit | 08cd08587be5c8d2ce42ae417098c524f683c6ad (patch) | |
tree | 727aa239372a77e9ca3d72fe761940bb49e8d2d8 /src/net/charserverhandler.cpp | |
parent | db0b1da0060f5eb4b2af040c22ea9373d36970af (diff) | |
download | guildbot-08cd08587be5c8d2ce42ae417098c524f683c6ad.tar.gz guildbot-08cd08587be5c8d2ce42ae417098c524f683c6ad.tar.bz2 guildbot-08cd08587be5c8d2ce42ae417098c524f683c6ad.tar.xz guildbot-08cd08587be5c8d2ce42ae417098c524f683c6ad.zip |
Move actual top level from src/ to top: just one single dir is pointless.
Reported-By: NetSysFire
Diffstat (limited to 'src/net/charserverhandler.cpp')
-rw-r--r-- | src/net/charserverhandler.cpp | 166 |
1 files changed, 0 insertions, 166 deletions
diff --git a/src/net/charserverhandler.cpp b/src/net/charserverhandler.cpp deleted file mode 100644 index d500c0d..0000000 --- a/src/net/charserverhandler.cpp +++ /dev/null @@ -1,166 +0,0 @@ -/* - * The Mana World - * Copyright 2004 The Mana World Development Team - * - * This file is part of The Mana World. - * - * The Mana World is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * any later version. - * - * The Mana World is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with The Mana World; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * $Id: charserverhandler.cpp 2137 2006-02-04 16:54:35Z der_doener $ - */ - -#include "charserverhandler.h" - -#include "messagein.h" -#include "network.h" -#include "protocol.h" - -#include "../game.h" -#include "../logindata.h" -#include "../main.h" - -CharServerHandler::CharServerHandler() -{ - static const Uint16 _messages[] = { - 0x006b, - 0x006c, - 0x006d, - 0x0071, - 0x0081, - 0 - }; - handledMessages = _messages; -} - -void CharServerHandler::handleMessage(MessageIn *msg) -{ - int slot; - - /* logger->log("CharServerHandler: Packet ID: %x, Length: %d", - msg->getId(), msg->getLength());*/ - switch (msg->getId()) - { - case 0x006b: - { - int tmpCharID[3]; - // Skip length word and an additional mysterious 20 bytes - msg->skip(2 + 20); - - // Derive number of characters from message length - n_character = (msg->getLength() - 24) / 106; - - for (int i = 0; i < n_character; i++) - { - - tmpCharID[i] = msg->readInt32(); - msg->readInt32(); //xp - msg->readInt32(); //gp - msg->readInt32(); //jobxp - msg->readInt32(); //joblvl - msg->skip(8); // unknown - msg->readInt32(); // option - msg->readInt32(); // karma - msg->readInt32(); // manner - msg->skip(2); // unknown - msg->readInt16(); //hp - msg->readInt16(); //maxhp - msg->readInt16(); //mp - msg->readInt16(); //maxmp - msg->readInt16(); // speed - msg->readInt16(); // class - msg->readInt16(); //hair - msg->readInt16(); //weapon - msg->readInt16(); //lvl - msg->readInt16(); // skill point - msg->readInt16(); // head bottom - msg->readInt16(); // shield - msg->readInt16(); // head option top - msg->readInt16(); // head option mid - msg->readInt16(); // hair color - msg->readInt16(); // unknown - std::string charname = msg->readString(24); - msg->readInt8(); //ATTR - msg->readInt8(); //ATTR - msg->readInt8(); //ATTR - msg->readInt8(); //ATTR - msg->readInt8(); //ATTR - msg->readInt8(); //ATTR - int slot = msg->readInt8(); // character slot - charID[slot] = tmpCharID[i]; /* Get the Character Id's, needed for map server.*/ - msg->readInt8(); // unknown - - if (slot == main_charno) - char_name = charname; - - /* logger->log("CharServer: Player: %s (%d)", - charname.c_str(), slot);*/ - } - - state = CHAR_SELECT_STATE; - break; - } - - case 0x006c: - switch (msg->readInt8()) { - case 0: - errorMessage = "Access denied"; - break; - case 1: - errorMessage = "Cannot use this ID"; - break; - default: - errorMessage = "Unknown failure to select character"; - break; - } - break; - - case 0x006d: - state = CONNECTING_STATE; - break; - - case 0x0071: - { - msg->skip(4); // CharID, the same as the one we've already recieved. - map_path = msg->readString(16); - mLoginData->hostname = iptostring(msg->readInt32()); - mLoginData->port = msg->readInt16(); - /*logger->log("Map: Server: %s (%s:%d)", - map_path.c_str(), - mLoginData->hostname.c_str(), - mLoginData->port);*/ - - state = CONNECTING_STATE; - break; - } - - case 0x0081: - switch (msg->readInt8()) { - case 1: - errorMessage = "Map server offline"; - break; - case 3: - errorMessage = "Speed hack detected"; - break; - case 8: - errorMessage = "Duplicated login"; - break; - default: - errorMessage = "Unkown error with 0x0081"; - break; - }; - state = ERROR_STATE; - break; - } -} |