summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/CMakeLists.txt5
-rw-r--r--src/Makefile.am9
-rw-r--r--src/net/eathena/generalhandler.cpp5
-rw-r--r--src/net/eathena/generalhandler.h1
-rw-r--r--src/net/eathena/vendinghandler.cpp52
-rw-r--r--src/net/eathena/vendinghandler.h43
-rw-r--r--src/net/net.cpp2
-rw-r--r--src/net/tmwa/generalhandler.cpp5
-rw-r--r--src/net/tmwa/generalhandler.h1
-rw-r--r--src/net/tmwa/vendinghandler.cpp45
-rw-r--r--src/net/tmwa/vendinghandler.h44
-rw-r--r--src/net/vendinghandler.h42
12 files changed, 250 insertions, 4 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 90f82fe88..a0fa78e31 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -577,6 +577,7 @@ SET(SRCS
net/tradehandler.h
enums/net/updatetype.h
net/uploadcharinfo.h
+ net/vendinghandler.h
net/worldinfo.h
net/packetcounters.cpp
net/packetcounters.h
@@ -1391,6 +1392,8 @@ SET(SRCS_TMWA
net/tmwa/sprite.h
net/tmwa/tradehandler.cpp
net/tmwa/tradehandler.h
+ net/tmwa/vendinghandler.cpp
+ net/tmwa/vendinghandler.h
)
SET(SRCS_EATHENA
@@ -1470,6 +1473,8 @@ SET(SRCS_EATHENA
net/eathena/sprite.h
net/eathena/tradehandler.cpp
net/eathena/tradehandler.h
+ net/eathena/vendinghandler.cpp
+ net/eathena/vendinghandler.h
)
IF (WIN32)
diff --git a/src/Makefile.am b/src/Makefile.am
index 0139599e4..f0bcb6686 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -708,6 +708,7 @@ manaplus_SOURCES += gui/widgets/avatarlistbox.cpp \
net/tradehandler.h \
enums/net/updatetype.h \
net/uploadcharinfo.h \
+ net/vendinghandler.h \
net/worldinfo.h \
net/packetcounters.cpp \
net/packetcounters.h \
@@ -1324,7 +1325,9 @@ manaplus_SOURCES += \
net/tmwa/skillhandler.h \
net/tmwa/sprite.h \
net/tmwa/tradehandler.cpp \
- net/tmwa/tradehandler.h
+ net/tmwa/tradehandler.h \
+ net/tmwa/vendinghandler.cpp \
+ net/tmwa/vendinghandler.h
endif
if ENABLE_EATHENA
@@ -1404,7 +1407,9 @@ manaplus_SOURCES += net/eathena/adminhandler.cpp \
net/eathena/skillhandler.h \
net/eathena/sprite.h \
net/eathena/tradehandler.cpp \
- net/eathena/tradehandler.h
+ net/eathena/tradehandler.h \
+ net/eathena/vendinghandler.cpp \
+ net/eathena/vendinghandler.h
endif
manaplus_SOURCES += \
diff --git a/src/net/eathena/generalhandler.cpp b/src/net/eathena/generalhandler.cpp
index 30697388e..570d79136 100644
--- a/src/net/eathena/generalhandler.cpp
+++ b/src/net/eathena/generalhandler.cpp
@@ -69,6 +69,7 @@
#include "net/eathena/tradehandler.h"
#include "net/eathena/skillhandler.h"
#include "net/eathena/questhandler.h"
+#include "net/eathena/vendinghandler.h"
#include "resources/db/itemdbstat.h"
@@ -115,7 +116,8 @@ GeneralHandler::GeneralHandler() :
mHomunculusHandler(new HomunculusHandler),
mFriendsHandler(new FriendsHandler),
mElementalHandler(new ElementalHandler),
- mMarketHandler(new MarketHandler)
+ mMarketHandler(new MarketHandler),
+ mVendingHandler(new VendingHandler)
{
static const uint16_t _messages[] =
{
@@ -304,6 +306,7 @@ void GeneralHandler::load()
mNetwork->registerHandler(mFriendsHandler);
mNetwork->registerHandler(mElementalHandler);
mNetwork->registerHandler(mMarketHandler);
+ mNetwork->registerHandler(mVendingHandler);
}
void GeneralHandler::reload()
diff --git a/src/net/eathena/generalhandler.h b/src/net/eathena/generalhandler.h
index b19a3aeaa..fcd22265e 100644
--- a/src/net/eathena/generalhandler.h
+++ b/src/net/eathena/generalhandler.h
@@ -94,6 +94,7 @@ class GeneralHandler final : public MessageHandler,
MessageHandlerPtr mFriendsHandler;
MessageHandlerPtr mElementalHandler;
MessageHandlerPtr mMarketHandler;
+ MessageHandlerPtr mVendingHandler;
};
} // namespace EAthena
diff --git a/src/net/eathena/vendinghandler.cpp b/src/net/eathena/vendinghandler.cpp
new file mode 100644
index 000000000..ea9ddeda6
--- /dev/null
+++ b/src/net/eathena/vendinghandler.cpp
@@ -0,0 +1,52 @@
+/*
+ * 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 <http://www.gnu.org/licenses/>.
+ */
+
+#include "net/eathena/vendinghandler.h"
+
+#include "net/eathena/protocol.h"
+
+#include "debug.h"
+
+extern Net::VendingHandler *vendingHandler;
+
+namespace EAthena
+{
+
+VendingHandler::VendingHandler() :
+ MessageHandler()
+{
+ static const uint16_t _messages[] =
+ {
+ 0
+ };
+ handledMessages = _messages;
+ vendingHandler = this;
+}
+
+void VendingHandler::handleMessage(Net::MessageIn &msg)
+{
+ switch (msg.getId())
+ {
+ default:
+ break;
+ }
+}
+
+} // namespace EAthena
diff --git a/src/net/eathena/vendinghandler.h b/src/net/eathena/vendinghandler.h
new file mode 100644
index 000000000..46eac0ed9
--- /dev/null
+++ b/src/net/eathena/vendinghandler.h
@@ -0,0 +1,43 @@
+/*
+ * 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 <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef NET_EATHENA_VENDINGHANDLER_H
+#define NET_EATHENA_VENDINGHANDLER_H
+
+#include "net/vendinghandler.h"
+
+#include "net/eathena/messagehandler.h"
+
+namespace EAthena
+{
+class VendingHandler final : public MessageHandler,
+ public Net::VendingHandler
+{
+ public:
+ VendingHandler();
+
+ A_DELETE_COPY(VendingHandler)
+
+ void handleMessage(Net::MessageIn &msg) override final;
+};
+
+} // namespace EAthena
+
+#endif // NET_EATHENA_VENDINGHANDLER_H
diff --git a/src/net/net.cpp b/src/net/net.cpp
index e744786cd..d9b32dc29 100644
--- a/src/net/net.cpp
+++ b/src/net/net.cpp
@@ -68,6 +68,7 @@ namespace Net
class ServerFeatures;
class SkillHandler;
class TradeHandler;
+ class VendingHandler;
} // namespace Net
Net::AdminHandler *adminHandler = nullptr;
@@ -99,6 +100,7 @@ Net::HomunculusHandler *homunculusHandler = nullptr;
Net::FriendsHandler *friendsHandler = nullptr;
Net::ElementalHandler *elementalHandler = nullptr;
Net::MarketHandler *marketHandler = nullptr;
+Net::VendingHandler *vendingHandler = nullptr;
namespace Net
{
diff --git a/src/net/tmwa/generalhandler.cpp b/src/net/tmwa/generalhandler.cpp
index b42020ce0..a34da33dc 100644
--- a/src/net/tmwa/generalhandler.cpp
+++ b/src/net/tmwa/generalhandler.cpp
@@ -67,6 +67,7 @@
#include "net/tmwa/tradehandler.h"
#include "net/tmwa/skillhandler.h"
#include "net/tmwa/questhandler.h"
+#include "net/tmwa/vendinghandler.h"
#include "resources/db/itemdbstat.h"
@@ -113,7 +114,8 @@ GeneralHandler::GeneralHandler() :
mHomunculusHandler(new HomunculusHandler),
mFriendsHandler(new FriendsHandler),
mElementalHandler(new ElementalHandler),
- mMarketHandler(new MarketHandler)
+ mMarketHandler(new MarketHandler),
+ mVendingHandler(new VendingHandler)
{
static const uint16_t _messages[] =
{
@@ -240,6 +242,7 @@ void GeneralHandler::load()
mNetwork->registerHandler(mFriendsHandler);
mNetwork->registerHandler(mElementalHandler);
mNetwork->registerHandler(mMarketHandler);
+ mNetwork->registerHandler(mVendingHandler);
}
void GeneralHandler::reload()
diff --git a/src/net/tmwa/generalhandler.h b/src/net/tmwa/generalhandler.h
index 6da362e96..ed1bc983c 100644
--- a/src/net/tmwa/generalhandler.h
+++ b/src/net/tmwa/generalhandler.h
@@ -92,6 +92,7 @@ class GeneralHandler final : public MessageHandler,
MessageHandlerPtr mFriendsHandler;
MessageHandlerPtr mElementalHandler;
MessageHandlerPtr mMarketHandler;
+ MessageHandlerPtr mVendingHandler;
};
} // namespace TmwAthena
diff --git a/src/net/tmwa/vendinghandler.cpp b/src/net/tmwa/vendinghandler.cpp
new file mode 100644
index 000000000..2250f2f1e
--- /dev/null
+++ b/src/net/tmwa/vendinghandler.cpp
@@ -0,0 +1,45 @@
+/*
+ * 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 <http://www.gnu.org/licenses/>.
+ */
+
+#include "net/tmwa/vendinghandler.h"
+
+#include "debug.h"
+
+extern Net::VendingHandler *vendingHandler;
+
+namespace TmwAthena
+{
+
+VendingHandler::VendingHandler() :
+ MessageHandler()
+{
+ static const uint16_t _messages[] =
+ {
+ 0
+ };
+ handledMessages = _messages;
+ vendingHandler = this;
+}
+
+void VendingHandler::handleMessage(Net::MessageIn &msg A_UNUSED)
+{
+}
+
+} // namespace TmwAthena
diff --git a/src/net/tmwa/vendinghandler.h b/src/net/tmwa/vendinghandler.h
new file mode 100644
index 000000000..567494110
--- /dev/null
+++ b/src/net/tmwa/vendinghandler.h
@@ -0,0 +1,44 @@
+/*
+ * 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 <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef NET_TMWA_VENDINGHANDLER_H
+#define NET_TMWA_VENDINGHANDLER_H
+
+#include "net/vendinghandler.h"
+
+#include "net/tmwa/messagehandler.h"
+
+namespace TmwAthena
+{
+
+class VendingHandler final : public MessageHandler,
+ public Net::VendingHandler
+{
+ public:
+ VendingHandler();
+
+ A_DELETE_COPY(VendingHandler)
+
+ void handleMessage(Net::MessageIn &msg) override final;
+};
+
+} // namespace TmwAthena
+
+#endif // NET_TMWA_VENDINGHANDLER_H
diff --git a/src/net/vendinghandler.h b/src/net/vendinghandler.h
new file mode 100644
index 000000000..d0bff9198
--- /dev/null
+++ b/src/net/vendinghandler.h
@@ -0,0 +1,42 @@
+/*
+ * 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 <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef NET_VENDINGHANDLER_H
+#define NET_VENDINGHANDLER_H
+
+#include <string>
+
+#include "localconsts.h"
+
+namespace Net
+{
+
+class VendingHandler notfinal
+{
+ public:
+ virtual ~VendingHandler()
+ { }
+};
+
+} // namespace Net
+
+extern Net::VendingHandler *vendingHandler;
+
+#endif // NET_VENDINGHANDLER_H