summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-03-18 21:45:38 +0300
committerAndrei Karas <akaras@inbox.ru>2015-03-18 21:45:38 +0300
commitad6e16920c66c3b10c60e000a0ebc20da570bd94 (patch)
tree7be6f4002ab8b2e51fadd72be82436f702d73bfc
parentc16820057eb9d381eb222512bb931da12e898a1f (diff)
downloadmv-ad6e16920c66c3b10c60e000a0ebc20da570bd94.tar.gz
mv-ad6e16920c66c3b10c60e000a0ebc20da570bd94.tar.bz2
mv-ad6e16920c66c3b10c60e000a0ebc20da570bd94.tar.xz
mv-ad6e16920c66c3b10c60e000a0ebc20da570bd94.zip
eathena: add partial support for packet SMSG_ROULETTE_RECV_ITEM_ACK 0x0a22.
-rw-r--r--src/net/eathena/packets.h2
-rw-r--r--src/net/eathena/protocol.h1
-rw-r--r--src/net/eathena/roulettehandler.cpp12
-rw-r--r--src/net/eathena/roulettehandler.h2
4 files changed, 16 insertions, 1 deletions
diff --git a/src/net/eathena/packets.h b/src/net/eathena/packets.h
index 5fdf66caa..4d869efc4 100644
--- a/src/net/eathena/packets.h
+++ b/src/net/eathena/packets.h
@@ -261,7 +261,7 @@ int16_t packet_lengths[] =
// #0x0A00
269, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 344, 0, 0, 7,
- 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// #0x0A40
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h
index 3decb369f..547597741 100644
--- a/src/net/eathena/protocol.h
+++ b/src/net/eathena/protocol.h
@@ -452,6 +452,7 @@
#define SMSG_BATTLE_JOINED 0x08d9
#define SMSG_ROULETTE_INFO_ACK_TYPE 0x0a1c
+#define SMSG_ROULETTE_RECV_ITEM_ACK 0x0a22
/**********************************
* Packets from client to server *
diff --git a/src/net/eathena/roulettehandler.cpp b/src/net/eathena/roulettehandler.cpp
index 372e13f45..f8c330527 100644
--- a/src/net/eathena/roulettehandler.cpp
+++ b/src/net/eathena/roulettehandler.cpp
@@ -38,6 +38,7 @@ RouletteHandler::RouletteHandler() :
static const uint16_t _messages[] =
{
SMSG_ROULETTE_INFO_ACK_TYPE,
+ SMSG_ROULETTE_RECV_ITEM_ACK,
0
};
handledMessages = _messages;
@@ -52,6 +53,10 @@ void RouletteHandler::handleMessage(Net::MessageIn &msg)
processRouletteInfoAckType(msg);
break;
+ case SMSG_ROULETTE_RECV_ITEM_ACK:
+ processRouletteItemAck(msg);
+ break;
+
default:
break;
}
@@ -72,4 +77,11 @@ void RouletteHandler::processRouletteInfoAckType(Net::MessageIn &msg)
}
}
+void RouletteHandler::processRouletteItemAck(Net::MessageIn &msg)
+{
+ UNIMPLIMENTEDPACKET;
+ msg.readUInt8("result");
+ msg.readInt16("item id");
+}
+
} // namespace EAthena
diff --git a/src/net/eathena/roulettehandler.h b/src/net/eathena/roulettehandler.h
index 239ba2e70..72b497e92 100644
--- a/src/net/eathena/roulettehandler.h
+++ b/src/net/eathena/roulettehandler.h
@@ -39,6 +39,8 @@ class RouletteHandler final : public MessageHandler,
protected:
static void processRouletteInfoAckType(Net::MessageIn &msg);
+
+ static void processRouletteItemAck(Net::MessageIn &msg);
};
} // namespace EAthena