From 424023ca450e6f44d4d66468c1c3e3b551d9200c Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Wed, 26 Aug 2015 00:33:27 +0300 Subject: Move receive code from elementalhandler into separate file. --- src/CMakeLists.txt | 2 ++ src/Makefile.am | 2 ++ src/net/eathena/elementalhandler.cpp | 22 +++------------- src/net/eathena/elementalhandler.h | 5 ---- src/net/eathena/elementalrecv.cpp | 49 ++++++++++++++++++++++++++++++++++++ src/net/eathena/elementalrecv.h | 37 +++++++++++++++++++++++++++ 6 files changed, 93 insertions(+), 24 deletions(-) create mode 100644 src/net/eathena/elementalrecv.cpp create mode 100644 src/net/eathena/elementalrecv.h (limited to 'src') diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 51c5b7323..59ed284f4 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1573,6 +1573,8 @@ SET(SRCS_EATHENA net/eathena/chatrecv.h net/eathena/elementalhandler.cpp net/eathena/elementalhandler.h + net/eathena/elementalrecv.cpp + net/eathena/elementalrecv.h net/eathena/familyhandler.cpp net/eathena/familyhandler.h net/eathena/friendshandler.cpp diff --git a/src/Makefile.am b/src/Makefile.am index cbc595bf5..e5b1f5787 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1419,6 +1419,8 @@ manaplus_SOURCES += gui/windows/bankwindow.cpp \ net/eathena/chatrecv.h \ net/eathena/elementalhandler.cpp \ net/eathena/elementalhandler.h \ + net/eathena/elementalrecv.cpp \ + net/eathena/elementalrecv.h \ net/eathena/familyhandler.cpp \ net/eathena/familyhandler.h \ net/eathena/friendshandler.cpp \ diff --git a/src/net/eathena/elementalhandler.cpp b/src/net/eathena/elementalhandler.cpp index b1f5b914f..1ddbb491f 100644 --- a/src/net/eathena/elementalhandler.cpp +++ b/src/net/eathena/elementalhandler.cpp @@ -22,6 +22,7 @@ #include "logger.h" +#include "net/eathena/elementalrecv.h" #include "net/eathena/protocol.h" #include "debug.h" @@ -49,11 +50,11 @@ void ElementalHandler::handleMessage(Net::MessageIn &msg) switch (msg.getId()) { case SMSG_ELEMENTAL_UPDATE_STATUS: - processElementalUpdateStatus(msg); + ElementalRecv::processElementalUpdateStatus(msg); break; case SMSG_ELEMENTAL_INFO: - processElementalInfo(msg); + ElementalRecv::processElementalInfo(msg); break; default: @@ -61,21 +62,4 @@ void ElementalHandler::handleMessage(Net::MessageIn &msg) } } -void ElementalHandler::processElementalUpdateStatus(Net::MessageIn &msg) -{ - UNIMPLIMENTEDPACKET; - msg.readInt16("type"); - msg.readInt32("value"); -} - -void ElementalHandler::processElementalInfo(Net::MessageIn &msg) -{ - UNIMPLIMENTEDPACKET; - msg.readInt32("elemental id"); - msg.readInt32("hp"); - msg.readInt32("max hp"); - msg.readInt32("sp"); - msg.readInt32("max sp"); -} - } // namespace EAthena diff --git a/src/net/eathena/elementalhandler.h b/src/net/eathena/elementalhandler.h index 207b8aedc..e8b28233e 100644 --- a/src/net/eathena/elementalhandler.h +++ b/src/net/eathena/elementalhandler.h @@ -36,11 +36,6 @@ class ElementalHandler final : public MessageHandler, A_DELETE_COPY(ElementalHandler) void handleMessage(Net::MessageIn &msg) override final; - - protected: - static void processElementalUpdateStatus(Net::MessageIn &msg); - - static void processElementalInfo(Net::MessageIn &msg); }; } // namespace EAthena diff --git a/src/net/eathena/elementalrecv.cpp b/src/net/eathena/elementalrecv.cpp new file mode 100644 index 000000000..151e23804 --- /dev/null +++ b/src/net/eathena/elementalrecv.cpp @@ -0,0 +1,49 @@ +/* + * The ManaPlus Client + * Copyright (C) 2011-2015 The ManaPlus Developers + * + * This file is part of The ManaPlus Client. + * + * This program 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. + * + * This program 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 this program. If not, see . + */ + +#include "net/eathena/elementalrecv.h" + +#include "logger.h" + +#include "net/eathena/protocol.h" + +#include "debug.h" + +namespace EAthena +{ + +void ElementalRecv::processElementalUpdateStatus(Net::MessageIn &msg) +{ + UNIMPLIMENTEDPACKET; + msg.readInt16("type"); + msg.readInt32("value"); +} + +void ElementalRecv::processElementalInfo(Net::MessageIn &msg) +{ + UNIMPLIMENTEDPACKET; + msg.readInt32("elemental id"); + msg.readInt32("hp"); + msg.readInt32("max hp"); + msg.readInt32("sp"); + msg.readInt32("max sp"); +} + +} // namespace EAthena diff --git a/src/net/eathena/elementalrecv.h b/src/net/eathena/elementalrecv.h new file mode 100644 index 000000000..0b0a2651f --- /dev/null +++ b/src/net/eathena/elementalrecv.h @@ -0,0 +1,37 @@ +/* + * The ManaPlus Client + * Copyright (C) 2011-2015 The ManaPlus Developers + * + * This file is part of The ManaPlus Client. + * + * This program 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. + * + * This program 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 this program. If not, see . + */ + +#ifndef NET_EATHENA_ELEMENTALRECV_H +#define NET_EATHENA_ELEMENTALRECV_H + +#include "net/elementalhandler.h" + +#include "net/eathena/messagehandler.h" + +namespace EAthena +{ + namespace ElementalRecv + { + void processElementalUpdateStatus(Net::MessageIn &msg); + void processElementalInfo(Net::MessageIn &msg); + } // namespace ElementalRecv +} // namespace EAthena + +#endif // NET_EATHENA_ELEMENTALRECV_H -- cgit v1.2.3-70-g09d2