summaryrefslogtreecommitdiff
path: root/src/proto2
diff options
context:
space:
mode:
authorBen Longbons <b.r.longbons@gmail.com>2014-05-19 21:05:38 -0700
committerBen Longbons <b.r.longbons@gmail.com>2014-05-19 21:05:38 -0700
commitb06dd5aaa0cf47b0b6f73ae858b2e2c267e60bbf (patch)
tree7dae1afc45ef86c5fb66faa4cb5135227f2bbf0c /src/proto2
parent42a46737d480c997e6f6ebbf57e1c8f3b56ac940 (diff)
downloadtmwa-b06dd5aaa0cf47b0b6f73ae858b2e2c267e60bbf.tar.gz
tmwa-b06dd5aaa0cf47b0b6f73ae858b2e2c267e60bbf.tar.bz2
tmwa-b06dd5aaa0cf47b0b6f73ae858b2e2c267e60bbf.tar.xz
tmwa-b06dd5aaa0cf47b0b6f73ae858b2e2c267e60bbf.zip
make packets be non-type templates
Diffstat (limited to 'src/proto2')
-rw-r--r--src/proto2/any-user.hpp50
-rw-r--r--src/proto2/fwd.hpp483
-rw-r--r--src/proto2/login-admin.hpp986
-rw-r--r--src/proto2/login-char.hpp512
-rw-r--r--src/proto2/map-user.hpp26
5 files changed, 1191 insertions, 866 deletions
diff --git a/src/proto2/any-user.hpp b/src/proto2/any-user.hpp
index 037171c..ea2e20d 100644
--- a/src/proto2/any-user.hpp
+++ b/src/proto2/any-user.hpp
@@ -27,66 +27,72 @@
// This is a public protocol, and changes require client cooperation
-struct RPacket_0x7530_Fixed
+template<>
+struct Packet_Fixed<0x7530>
{
- using NetType = NetRPacket_0x7530_Fixed;
static const uint16_t PACKET_ID = 0x7530;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
};
-struct SPacket_0x7531_Fixed
+template<>
+struct Packet_Fixed<0x7531>
{
- using NetType = NetSPacket_0x7531_Fixed;
static const uint16_t PACKET_ID = 0x7531;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
Version version = {};
};
-struct RPacket_0x7532_Fixed
+template<>
+struct Packet_Fixed<0x7532>
{
- using NetType = NetRPacket_0x7532_Fixed;
static const uint16_t PACKET_ID = 0x7532;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
};
-struct NetRPacket_0x7530_Fixed
+template<>
+struct NetPacket_Fixed<0x7530>
{
Little16 magic_packet_id;
};
-static_assert(offsetof(NetRPacket_0x7530_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x7530_Fixed, magic_packet_id) == 0");
-static_assert(sizeof(NetRPacket_0x7530_Fixed) == 2, "sizeof(NetRPacket_0x7530_Fixed) == 2");
-struct NetSPacket_0x7531_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7530>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7530>, magic_packet_id) == 0");
+static_assert(sizeof(NetPacket_Fixed<0x7530>) == 2, "sizeof(NetPacket_Fixed<0x7530>) == 2");
+template<>
+struct NetPacket_Fixed<0x7531>
{
Little16 magic_packet_id;
NetVersion version;
};
-static_assert(offsetof(NetSPacket_0x7531_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x7531_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x7531_Fixed, version) == 2, "offsetof(NetSPacket_0x7531_Fixed, version) == 2");
-static_assert(sizeof(NetSPacket_0x7531_Fixed) == 10, "sizeof(NetSPacket_0x7531_Fixed) == 10");
-struct NetRPacket_0x7532_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7531>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7531>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7531>, version) == 2, "offsetof(NetPacket_Fixed<0x7531>, version) == 2");
+static_assert(sizeof(NetPacket_Fixed<0x7531>) == 10, "sizeof(NetPacket_Fixed<0x7531>) == 10");
+template<>
+struct NetPacket_Fixed<0x7532>
{
Little16 magic_packet_id;
};
-static_assert(offsetof(NetRPacket_0x7532_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x7532_Fixed, magic_packet_id) == 0");
-static_assert(sizeof(NetRPacket_0x7532_Fixed) == 2, "sizeof(NetRPacket_0x7532_Fixed) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x7532>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7532>, magic_packet_id) == 0");
+static_assert(sizeof(NetPacket_Fixed<0x7532>) == 2, "sizeof(NetPacket_Fixed<0x7532>) == 2");
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x7530_Fixed *network, RPacket_0x7530_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7530> *network, Packet_Fixed<0x7530> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x7530_Fixed *native, NetRPacket_0x7530_Fixed network)
+bool network_to_native(Packet_Fixed<0x7530> *native, NetPacket_Fixed<0x7530> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x7531_Fixed *network, SPacket_0x7531_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7531> *network, Packet_Fixed<0x7531> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -94,7 +100,7 @@ bool native_to_network(NetSPacket_0x7531_Fixed *network, SPacket_0x7531_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x7531_Fixed *native, NetSPacket_0x7531_Fixed network)
+bool network_to_native(Packet_Fixed<0x7531> *native, NetPacket_Fixed<0x7531> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -102,14 +108,14 @@ bool network_to_native(SPacket_0x7531_Fixed *native, NetSPacket_0x7531_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x7532_Fixed *network, RPacket_0x7532_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7532> *network, Packet_Fixed<0x7532> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x7532_Fixed *native, NetRPacket_0x7532_Fixed network)
+bool network_to_native(Packet_Fixed<0x7532> *native, NetPacket_Fixed<0x7532> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
diff --git a/src/proto2/fwd.hpp b/src/proto2/fwd.hpp
index a18d0ef..f8dc786 100644
--- a/src/proto2/fwd.hpp
+++ b/src/proto2/fwd.hpp
@@ -21,170 +21,337 @@
# include "../sanity.hpp"
-struct RPacket_0x2709_Fixed;
-struct NetRPacket_0x2709_Fixed;
-struct RPacket_0x2712_Fixed;
-struct NetRPacket_0x2712_Fixed;
-struct SPacket_0x2713_Fixed;
-struct NetSPacket_0x2713_Fixed;
-struct RPacket_0x2714_Fixed;
-struct NetRPacket_0x2714_Fixed;
-struct RPacket_0x2715_Fixed;
-struct NetRPacket_0x2715_Fixed;
-struct RPacket_0x2716_Fixed;
-struct NetRPacket_0x2716_Fixed;
-struct SPacket_0x2717_Fixed;
-struct NetSPacket_0x2717_Fixed;
-struct RPacket_0x2720_Head;
-struct NetRPacket_0x2720_Head;
-struct RPacket_0x2720_Repeat;
-struct NetRPacket_0x2720_Repeat;
-struct SPacket_0x2721_Fixed;
-struct NetSPacket_0x2721_Fixed;
-struct RPacket_0x2722_Fixed;
-struct NetRPacket_0x2722_Fixed;
-struct SPacket_0x2723_Fixed;
-struct NetSPacket_0x2723_Fixed;
-struct RPacket_0x2724_Fixed;
-struct NetRPacket_0x2724_Fixed;
-struct RPacket_0x2725_Fixed;
-struct NetRPacket_0x2725_Fixed;
-struct RPacket_0x2727_Fixed;
-struct NetRPacket_0x2727_Fixed;
-struct RPacket_0x2728_Head;
-struct NetRPacket_0x2728_Head;
-struct RPacket_0x2728_Repeat;
-struct NetRPacket_0x2728_Repeat;
-struct SPacket_0x2729_Head;
-struct NetSPacket_0x2729_Head;
-struct SPacket_0x2729_Repeat;
-struct NetSPacket_0x2729_Repeat;
-struct RPacket_0x272a_Fixed;
-struct NetRPacket_0x272a_Fixed;
-struct SPacket_0x2730_Fixed;
-struct NetSPacket_0x2730_Fixed;
-struct SPacket_0x2731_Fixed;
-struct NetSPacket_0x2731_Fixed;
-struct SPacket_0x2732_Head;
-struct NetSPacket_0x2732_Head;
-struct SPacket_0x2732_Repeat;
-struct NetSPacket_0x2732_Repeat;
-struct RPacket_0x2740_Fixed;
-struct NetRPacket_0x2740_Fixed;
-struct SPacket_0x2741_Fixed;
-struct NetSPacket_0x2741_Fixed;
+# include <cstdint>
-struct SPacket_0x2726_Head;
-struct NetSPacket_0x2726_Head;
-struct SPacket_0x2726_Repeat;
-struct NetSPacket_0x2726_Repeat;
-struct RPacket_0x7920_Fixed;
-struct NetRPacket_0x7920_Fixed;
-struct SPacket_0x7921_Head;
-struct NetSPacket_0x7921_Head;
-struct SPacket_0x7921_Repeat;
-struct NetSPacket_0x7921_Repeat;
-struct RPacket_0x7924_Fixed;
-struct NetRPacket_0x7924_Fixed;
-struct SPacket_0x7925_Fixed;
-struct NetSPacket_0x7925_Fixed;
-struct RPacket_0x7930_Fixed;
-struct NetRPacket_0x7930_Fixed;
-struct SPacket_0x7931_Fixed;
-struct NetSPacket_0x7931_Fixed;
-struct RPacket_0x7932_Fixed;
-struct NetRPacket_0x7932_Fixed;
-struct SPacket_0x7933_Fixed;
-struct NetSPacket_0x7933_Fixed;
-struct RPacket_0x7934_Fixed;
-struct NetRPacket_0x7934_Fixed;
-struct SPacket_0x7935_Fixed;
-struct NetSPacket_0x7935_Fixed;
-struct RPacket_0x7936_Fixed;
-struct NetRPacket_0x7936_Fixed;
-struct SPacket_0x7937_Fixed;
-struct NetSPacket_0x7937_Fixed;
-struct RPacket_0x7938_Fixed;
-struct NetRPacket_0x7938_Fixed;
-struct SPacket_0x7939_Head;
-struct NetSPacket_0x7939_Head;
-struct SPacket_0x7939_Repeat;
-struct NetSPacket_0x7939_Repeat;
-struct RPacket_0x793a_Fixed;
-struct NetRPacket_0x793a_Fixed;
-struct SPacket_0x793b_Fixed;
-struct NetSPacket_0x793b_Fixed;
-struct RPacket_0x793c_Fixed;
-struct NetRPacket_0x793c_Fixed;
-struct SPacket_0x793d_Fixed;
-struct NetSPacket_0x793d_Fixed;
-struct RPacket_0x793e_Fixed;
-struct NetRPacket_0x793e_Fixed;
-struct SPacket_0x793f_Fixed;
-struct NetSPacket_0x793f_Fixed;
-struct RPacket_0x7940_Fixed;
-struct NetRPacket_0x7940_Fixed;
-struct SPacket_0x7941_Fixed;
-struct NetSPacket_0x7941_Fixed;
-struct RPacket_0x7942_Head;
-struct NetRPacket_0x7942_Head;
-struct RPacket_0x7942_Repeat;
-struct NetRPacket_0x7942_Repeat;
-struct SPacket_0x7943_Fixed;
-struct NetSPacket_0x7943_Fixed;
-struct RPacket_0x7944_Fixed;
-struct NetRPacket_0x7944_Fixed;
-struct SPacket_0x7945_Fixed;
-struct NetSPacket_0x7945_Fixed;
-struct RPacket_0x7946_Fixed;
-struct NetRPacket_0x7946_Fixed;
-struct SPacket_0x7947_Fixed;
-struct NetSPacket_0x7947_Fixed;
-struct RPacket_0x7948_Fixed;
-struct NetRPacket_0x7948_Fixed;
-struct SPacket_0x7949_Fixed;
-struct NetSPacket_0x7949_Fixed;
-struct RPacket_0x794a_Fixed;
-struct NetRPacket_0x794a_Fixed;
-struct SPacket_0x794b_Fixed;
-struct NetSPacket_0x794b_Fixed;
-struct RPacket_0x794c_Fixed;
-struct NetRPacket_0x794c_Fixed;
-struct SPacket_0x794d_Fixed;
-struct NetSPacket_0x794d_Fixed;
-struct RPacket_0x794e_Head;
-struct NetRPacket_0x794e_Head;
-struct RPacket_0x794e_Repeat;
-struct NetRPacket_0x794e_Repeat;
-struct SPacket_0x794f_Fixed;
-struct NetSPacket_0x794f_Fixed;
-struct RPacket_0x7950_Fixed;
-struct NetRPacket_0x7950_Fixed;
-struct SPacket_0x7951_Fixed;
-struct NetSPacket_0x7951_Fixed;
-struct RPacket_0x7952_Fixed;
-struct NetRPacket_0x7952_Fixed;
-struct SPacket_0x7953_Head;
-struct NetSPacket_0x7953_Head;
-struct SPacket_0x7953_Repeat;
-struct NetSPacket_0x7953_Repeat;
-struct RPacket_0x7954_Fixed;
-struct NetRPacket_0x7954_Fixed;
-struct RPacket_0x7955_Fixed;
-struct NetRPacket_0x7955_Fixed;
+template<uint16_t PACKET_ID> class Packet_Fixed;
+template<uint16_t PACKET_ID> class NetPacket_Fixed;
+template<uint16_t PACKET_ID> class Packet_Head;
+template<uint16_t PACKET_ID> class NetPacket_Head;
+template<uint16_t PACKET_ID> class Packet_Repeat;
+template<uint16_t PACKET_ID> class NetPacket_Repeat;
+template<>
+struct Packet_Fixed<0x2709>;
+template<>
+struct NetPacket_Fixed<0x2709>;
+template<>
+struct Packet_Fixed<0x2712>;
+template<>
+struct NetPacket_Fixed<0x2712>;
+template<>
+struct Packet_Fixed<0x2713>;
+template<>
+struct NetPacket_Fixed<0x2713>;
+template<>
+struct Packet_Fixed<0x2714>;
+template<>
+struct NetPacket_Fixed<0x2714>;
+template<>
+struct Packet_Fixed<0x2715>;
+template<>
+struct NetPacket_Fixed<0x2715>;
+template<>
+struct Packet_Fixed<0x2716>;
+template<>
+struct NetPacket_Fixed<0x2716>;
+template<>
+struct Packet_Fixed<0x2717>;
+template<>
+struct NetPacket_Fixed<0x2717>;
+template<>
+struct Packet_Head<0x2720>;
+template<>
+struct NetPacket_Head<0x2720>;
+template<>
+struct Packet_Repeat<0x2720>;
+template<>
+struct NetPacket_Repeat<0x2720>;
+template<>
+struct Packet_Fixed<0x2721>;
+template<>
+struct NetPacket_Fixed<0x2721>;
+template<>
+struct Packet_Fixed<0x2722>;
+template<>
+struct NetPacket_Fixed<0x2722>;
+template<>
+struct Packet_Fixed<0x2723>;
+template<>
+struct NetPacket_Fixed<0x2723>;
+template<>
+struct Packet_Fixed<0x2724>;
+template<>
+struct NetPacket_Fixed<0x2724>;
+template<>
+struct Packet_Fixed<0x2725>;
+template<>
+struct NetPacket_Fixed<0x2725>;
+template<>
+struct Packet_Fixed<0x2727>;
+template<>
+struct NetPacket_Fixed<0x2727>;
+template<>
+struct Packet_Head<0x2728>;
+template<>
+struct NetPacket_Head<0x2728>;
+template<>
+struct Packet_Repeat<0x2728>;
+template<>
+struct NetPacket_Repeat<0x2728>;
+template<>
+struct Packet_Head<0x2729>;
+template<>
+struct NetPacket_Head<0x2729>;
+template<>
+struct Packet_Repeat<0x2729>;
+template<>
+struct NetPacket_Repeat<0x2729>;
+template<>
+struct Packet_Fixed<0x272a>;
+template<>
+struct NetPacket_Fixed<0x272a>;
+template<>
+struct Packet_Fixed<0x2730>;
+template<>
+struct NetPacket_Fixed<0x2730>;
+template<>
+struct Packet_Fixed<0x2731>;
+template<>
+struct NetPacket_Fixed<0x2731>;
+template<>
+struct Packet_Head<0x2732>;
+template<>
+struct NetPacket_Head<0x2732>;
+template<>
+struct Packet_Repeat<0x2732>;
+template<>
+struct NetPacket_Repeat<0x2732>;
+template<>
+struct Packet_Fixed<0x2740>;
+template<>
+struct NetPacket_Fixed<0x2740>;
+template<>
+struct Packet_Fixed<0x2741>;
+template<>
+struct NetPacket_Fixed<0x2741>;
+template<>
+struct Packet_Head<0x2726>;
+template<>
+struct NetPacket_Head<0x2726>;
+template<>
+struct Packet_Repeat<0x2726>;
+template<>
+struct NetPacket_Repeat<0x2726>;
+template<>
+struct Packet_Fixed<0x7920>;
+template<>
+struct NetPacket_Fixed<0x7920>;
+template<>
+struct Packet_Head<0x7921>;
+template<>
+struct NetPacket_Head<0x7921>;
+template<>
+struct Packet_Repeat<0x7921>;
+template<>
+struct NetPacket_Repeat<0x7921>;
+template<>
+struct Packet_Fixed<0x7924>;
+template<>
+struct NetPacket_Fixed<0x7924>;
+template<>
+struct Packet_Fixed<0x7925>;
+template<>
+struct NetPacket_Fixed<0x7925>;
+template<>
+struct Packet_Fixed<0x7930>;
+template<>
+struct NetPacket_Fixed<0x7930>;
+template<>
+struct Packet_Fixed<0x7931>;
+template<>
+struct NetPacket_Fixed<0x7931>;
+template<>
+struct Packet_Fixed<0x7932>;
+template<>
+struct NetPacket_Fixed<0x7932>;
+template<>
+struct Packet_Fixed<0x7933>;
+template<>
+struct NetPacket_Fixed<0x7933>;
+template<>
+struct Packet_Fixed<0x7934>;
+template<>
+struct NetPacket_Fixed<0x7934>;
+template<>
+struct Packet_Fixed<0x7935>;
+template<>
+struct NetPacket_Fixed<0x7935>;
+template<>
+struct Packet_Fixed<0x7936>;
+template<>
+struct NetPacket_Fixed<0x7936>;
+template<>
+struct Packet_Fixed<0x7937>;
+template<>
+struct NetPacket_Fixed<0x7937>;
+template<>
+struct Packet_Fixed<0x7938>;
+template<>
+struct NetPacket_Fixed<0x7938>;
+template<>
+struct Packet_Head<0x7939>;
+template<>
+struct NetPacket_Head<0x7939>;
+template<>
+struct Packet_Repeat<0x7939>;
+template<>
+struct NetPacket_Repeat<0x7939>;
+template<>
+struct Packet_Fixed<0x793a>;
+template<>
+struct NetPacket_Fixed<0x793a>;
+template<>
+struct Packet_Fixed<0x793b>;
+template<>
+struct NetPacket_Fixed<0x793b>;
+template<>
+struct Packet_Fixed<0x793c>;
+template<>
+struct NetPacket_Fixed<0x793c>;
+template<>
+struct Packet_Fixed<0x793d>;
+template<>
+struct NetPacket_Fixed<0x793d>;
+template<>
+struct Packet_Fixed<0x793e>;
+template<>
+struct NetPacket_Fixed<0x793e>;
+template<>
+struct Packet_Fixed<0x793f>;
+template<>
+struct NetPacket_Fixed<0x793f>;
+template<>
+struct Packet_Fixed<0x7940>;
+template<>
+struct NetPacket_Fixed<0x7940>;
+template<>
+struct Packet_Fixed<0x7941>;
+template<>
+struct NetPacket_Fixed<0x7941>;
+template<>
+struct Packet_Head<0x7942>;
+template<>
+struct NetPacket_Head<0x7942>;
+template<>
+struct Packet_Repeat<0x7942>;
+template<>
+struct NetPacket_Repeat<0x7942>;
+template<>
+struct Packet_Fixed<0x7943>;
+template<>
+struct NetPacket_Fixed<0x7943>;
+template<>
+struct Packet_Fixed<0x7944>;
+template<>
+struct NetPacket_Fixed<0x7944>;
+template<>
+struct Packet_Fixed<0x7945>;
+template<>
+struct NetPacket_Fixed<0x7945>;
+template<>
+struct Packet_Fixed<0x7946>;
+template<>
+struct NetPacket_Fixed<0x7946>;
+template<>
+struct Packet_Fixed<0x7947>;
+template<>
+struct NetPacket_Fixed<0x7947>;
+template<>
+struct Packet_Fixed<0x7948>;
+template<>
+struct NetPacket_Fixed<0x7948>;
+template<>
+struct Packet_Fixed<0x7949>;
+template<>
+struct NetPacket_Fixed<0x7949>;
+template<>
+struct Packet_Fixed<0x794a>;
+template<>
+struct NetPacket_Fixed<0x794a>;
+template<>
+struct Packet_Fixed<0x794b>;
+template<>
+struct NetPacket_Fixed<0x794b>;
+template<>
+struct Packet_Fixed<0x794c>;
+template<>
+struct NetPacket_Fixed<0x794c>;
+template<>
+struct Packet_Fixed<0x794d>;
+template<>
+struct NetPacket_Fixed<0x794d>;
+template<>
+struct Packet_Head<0x794e>;
+template<>
+struct NetPacket_Head<0x794e>;
+template<>
+struct Packet_Repeat<0x794e>;
+template<>
+struct NetPacket_Repeat<0x794e>;
+template<>
+struct Packet_Fixed<0x794f>;
+template<>
+struct NetPacket_Fixed<0x794f>;
+template<>
+struct Packet_Fixed<0x7950>;
+template<>
+struct NetPacket_Fixed<0x7950>;
+template<>
+struct Packet_Fixed<0x7951>;
+template<>
+struct NetPacket_Fixed<0x7951>;
+template<>
+struct Packet_Fixed<0x7952>;
+template<>
+struct NetPacket_Fixed<0x7952>;
+template<>
+struct Packet_Head<0x7953>;
+template<>
+struct NetPacket_Head<0x7953>;
+template<>
+struct Packet_Repeat<0x7953>;
+template<>
+struct NetPacket_Repeat<0x7953>;
+template<>
+struct Packet_Fixed<0x7954>;
+template<>
+struct NetPacket_Fixed<0x7954>;
+template<>
+struct Packet_Fixed<0x7955>;
+template<>
+struct NetPacket_Fixed<0x7955>;
-struct SPacket_0x0212_Fixed;
-struct NetSPacket_0x0212_Fixed;
-struct RPacket_0x7530_Fixed;
-struct NetRPacket_0x7530_Fixed;
-struct SPacket_0x7531_Fixed;
-struct NetSPacket_0x7531_Fixed;
-struct RPacket_0x7532_Fixed;
-struct NetRPacket_0x7532_Fixed;
+
+template<>
+struct Packet_Fixed<0x0212>;
+template<>
+struct NetPacket_Fixed<0x0212>;
+
+template<>
+struct Packet_Fixed<0x7530>;
+template<>
+struct NetPacket_Fixed<0x7530>;
+template<>
+struct Packet_Fixed<0x7531>;
+template<>
+struct NetPacket_Fixed<0x7531>;
+template<>
+struct Packet_Fixed<0x7532>;
+template<>
+struct NetPacket_Fixed<0x7532>;
#endif // TMWA_PROTO2_FWD_HPP
diff --git a/src/proto2/login-admin.hpp b/src/proto2/login-admin.hpp
index 005ecfc..fed3ad6 100644
--- a/src/proto2/login-admin.hpp
+++ b/src/proto2/login-admin.hpp
@@ -27,42 +27,47 @@
// This is an internal protocol, and can be changed without notice
-struct SPacket_0x2726_Head
+template<>
+struct Packet_Head<0x2726>
{
- using NetType = NetSPacket_0x2726_Head;
static const uint16_t PACKET_ID = 0x2726;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
uint16_t unused = {};
+ // TODO remove this
uint32_t magic_packet_length = {};
};
-struct SPacket_0x2726_Repeat
+template<>
+struct Packet_Repeat<0x2726>
{
- using NetType = NetSPacket_0x2726_Repeat;
static const uint16_t PACKET_ID = 0x2726;
uint8_t c = {};
};
-struct RPacket_0x7920_Fixed
+template<>
+struct Packet_Fixed<0x7920>
{
- using NetType = NetRPacket_0x7920_Fixed;
static const uint16_t PACKET_ID = 0x7920;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId start_account_id = {};
AccountId end_account_id = {};
};
-struct SPacket_0x7921_Head
+template<>
+struct Packet_Head<0x7921>
{
- using NetType = NetSPacket_0x7921_Head;
static const uint16_t PACKET_ID = 0x7921;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
+ // TODO remove this
uint16_t magic_packet_length = {};
};
-struct SPacket_0x7921_Repeat
+template<>
+struct Packet_Repeat<0x7921>
{
- using NetType = NetSPacket_0x7921_Repeat;
static const uint16_t PACKET_ID = 0x7921;
AccountId account_id = {};
@@ -72,115 +77,128 @@ struct SPacket_0x7921_Repeat
uint32_t login_count = {};
uint32_t status = {};
};
-struct RPacket_0x7924_Fixed
+template<>
+struct Packet_Fixed<0x7924>
{
- using NetType = NetRPacket_0x7924_Fixed;
static const uint16_t PACKET_ID = 0x7924;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
ItemNameId source_item_id = {};
ItemNameId dest_item_id = {};
};
-struct SPacket_0x7925_Fixed
+template<>
+struct Packet_Fixed<0x7925>
{
- using NetType = NetSPacket_0x7925_Fixed;
static const uint16_t PACKET_ID = 0x7925;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
};
-struct RPacket_0x7930_Fixed
+template<>
+struct Packet_Fixed<0x7930>
{
- using NetType = NetRPacket_0x7930_Fixed;
static const uint16_t PACKET_ID = 0x7930;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountName account_name = {};
AccountPass password = {};
SEX sex = {};
AccountEmail email = {};
};
-struct SPacket_0x7931_Fixed
+template<>
+struct Packet_Fixed<0x7931>
{
- using NetType = NetSPacket_0x7931_Fixed;
static const uint16_t PACKET_ID = 0x7931;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
AccountName account_name = {};
};
-struct RPacket_0x7932_Fixed
+template<>
+struct Packet_Fixed<0x7932>
{
- using NetType = NetRPacket_0x7932_Fixed;
static const uint16_t PACKET_ID = 0x7932;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountName account_name = {};
};
-struct SPacket_0x7933_Fixed
+template<>
+struct Packet_Fixed<0x7933>
{
- using NetType = NetSPacket_0x7933_Fixed;
static const uint16_t PACKET_ID = 0x7933;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
AccountName account_name = {};
};
-struct RPacket_0x7934_Fixed
+template<>
+struct Packet_Fixed<0x7934>
{
- using NetType = NetRPacket_0x7934_Fixed;
static const uint16_t PACKET_ID = 0x7934;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountName account_name = {};
AccountPass password = {};
};
-struct SPacket_0x7935_Fixed
+template<>
+struct Packet_Fixed<0x7935>
{
- using NetType = NetSPacket_0x7935_Fixed;
static const uint16_t PACKET_ID = 0x7935;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
AccountName account_name = {};
};
-struct RPacket_0x7936_Fixed
+template<>
+struct Packet_Fixed<0x7936>
{
- using NetType = NetRPacket_0x7936_Fixed;
static const uint16_t PACKET_ID = 0x7936;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountName account_name = {};
uint32_t status = {};
timestamp_seconds_buffer error_message = {};
};
-struct SPacket_0x7937_Fixed
+template<>
+struct Packet_Fixed<0x7937>
{
- using NetType = NetSPacket_0x7937_Fixed;
static const uint16_t PACKET_ID = 0x7937;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
AccountName account_name = {};
uint32_t status = {};
};
-struct RPacket_0x7938_Fixed
+template<>
+struct Packet_Fixed<0x7938>
{
- using NetType = NetRPacket_0x7938_Fixed;
static const uint16_t PACKET_ID = 0x7938;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
};
-struct SPacket_0x7939_Head
+template<>
+struct Packet_Head<0x7939>
{
- using NetType = NetSPacket_0x7939_Head;
static const uint16_t PACKET_ID = 0x7939;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
+ // TODO remove this
uint16_t magic_packet_length = {};
};
-struct SPacket_0x7939_Repeat
+template<>
+struct Packet_Repeat<0x7939>
{
- using NetType = NetSPacket_0x7939_Repeat;
static const uint16_t PACKET_ID = 0x7939;
IP4Address ip = {};
@@ -190,250 +208,278 @@ struct SPacket_0x7939_Repeat
uint16_t maintenance = {};
uint16_t is_new = {};
};
-struct RPacket_0x793a_Fixed
+template<>
+struct Packet_Fixed<0x793a>
{
- using NetType = NetRPacket_0x793a_Fixed;
static const uint16_t PACKET_ID = 0x793a;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountName account_name = {};
AccountPass password = {};
};
-struct SPacket_0x793b_Fixed
+template<>
+struct Packet_Fixed<0x793b>
{
- using NetType = NetSPacket_0x793b_Fixed;
static const uint16_t PACKET_ID = 0x793b;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
AccountName account_name = {};
};
-struct RPacket_0x793c_Fixed
+template<>
+struct Packet_Fixed<0x793c>
{
- using NetType = NetRPacket_0x793c_Fixed;
static const uint16_t PACKET_ID = 0x793c;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountName account_name = {};
SEX sex = {};
};
-struct SPacket_0x793d_Fixed
+template<>
+struct Packet_Fixed<0x793d>
{
- using NetType = NetSPacket_0x793d_Fixed;
static const uint16_t PACKET_ID = 0x793d;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
AccountName account_name = {};
};
-struct RPacket_0x793e_Fixed
+template<>
+struct Packet_Fixed<0x793e>
{
- using NetType = NetRPacket_0x793e_Fixed;
static const uint16_t PACKET_ID = 0x793e;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountName account_name = {};
GmLevel gm_level = {};
};
-struct SPacket_0x793f_Fixed
+template<>
+struct Packet_Fixed<0x793f>
{
- using NetType = NetSPacket_0x793f_Fixed;
static const uint16_t PACKET_ID = 0x793f;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
AccountName account_name = {};
};
-struct RPacket_0x7940_Fixed
+template<>
+struct Packet_Fixed<0x7940>
{
- using NetType = NetRPacket_0x7940_Fixed;
static const uint16_t PACKET_ID = 0x7940;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountName account_name = {};
AccountEmail email = {};
};
-struct SPacket_0x7941_Fixed
+template<>
+struct Packet_Fixed<0x7941>
{
- using NetType = NetSPacket_0x7941_Fixed;
static const uint16_t PACKET_ID = 0x7941;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
AccountName account_name = {};
};
-struct RPacket_0x7942_Head
+template<>
+struct Packet_Head<0x7942>
{
- using NetType = NetRPacket_0x7942_Head;
static const uint16_t PACKET_ID = 0x7942;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountName account_name = {};
+ // TODO remove this
uint16_t magic_packet_length = {};
};
-struct RPacket_0x7942_Repeat
+template<>
+struct Packet_Repeat<0x7942>
{
- using NetType = NetRPacket_0x7942_Repeat;
static const uint16_t PACKET_ID = 0x7942;
uint8_t c = {};
};
-struct SPacket_0x7943_Fixed
+template<>
+struct Packet_Fixed<0x7943>
{
- using NetType = NetSPacket_0x7943_Fixed;
static const uint16_t PACKET_ID = 0x7943;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
AccountName account_name = {};
};
-struct RPacket_0x7944_Fixed
+template<>
+struct Packet_Fixed<0x7944>
{
- using NetType = NetRPacket_0x7944_Fixed;
static const uint16_t PACKET_ID = 0x7944;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountName account_name = {};
};
-struct SPacket_0x7945_Fixed
+template<>
+struct Packet_Fixed<0x7945>
{
- using NetType = NetSPacket_0x7945_Fixed;
static const uint16_t PACKET_ID = 0x7945;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
AccountName account_name = {};
};
-struct RPacket_0x7946_Fixed
+template<>
+struct Packet_Fixed<0x7946>
{
- using NetType = NetRPacket_0x7946_Fixed;
static const uint16_t PACKET_ID = 0x7946;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
};
-struct SPacket_0x7947_Fixed
+template<>
+struct Packet_Fixed<0x7947>
{
- using NetType = NetSPacket_0x7947_Fixed;
static const uint16_t PACKET_ID = 0x7947;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
AccountName account_name = {};
};
-struct RPacket_0x7948_Fixed
+template<>
+struct Packet_Fixed<0x7948>
{
- using NetType = NetRPacket_0x7948_Fixed;
static const uint16_t PACKET_ID = 0x7948;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountName account_name = {};
TimeT valid_until = {};
};
-struct SPacket_0x7949_Fixed
+template<>
+struct Packet_Fixed<0x7949>
{
- using NetType = NetSPacket_0x7949_Fixed;
static const uint16_t PACKET_ID = 0x7949;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
AccountName account_name = {};
TimeT valid_until = {};
};
-struct RPacket_0x794a_Fixed
+template<>
+struct Packet_Fixed<0x794a>
{
- using NetType = NetRPacket_0x794a_Fixed;
static const uint16_t PACKET_ID = 0x794a;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountName account_name = {};
TimeT ban_until = {};
};
-struct SPacket_0x794b_Fixed
+template<>
+struct Packet_Fixed<0x794b>
{
- using NetType = NetSPacket_0x794b_Fixed;
static const uint16_t PACKET_ID = 0x794b;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
AccountName account_name = {};
TimeT ban_until = {};
};
-struct RPacket_0x794c_Fixed
+template<>
+struct Packet_Fixed<0x794c>
{
- using NetType = NetRPacket_0x794c_Fixed;
static const uint16_t PACKET_ID = 0x794c;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountName account_name = {};
HumanTimeDiff ban_add = {};
};
-struct SPacket_0x794d_Fixed
+template<>
+struct Packet_Fixed<0x794d>
{
- using NetType = NetSPacket_0x794d_Fixed;
static const uint16_t PACKET_ID = 0x794d;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
AccountName account_name = {};
TimeT ban_until = {};
};
-struct RPacket_0x794e_Head
+template<>
+struct Packet_Head<0x794e>
{
- using NetType = NetRPacket_0x794e_Head;
static const uint16_t PACKET_ID = 0x794e;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
uint16_t unused = {};
+ // TODO remove this
uint32_t magic_packet_length = {};
};
-struct RPacket_0x794e_Repeat
+template<>
+struct Packet_Repeat<0x794e>
{
- using NetType = NetRPacket_0x794e_Repeat;
static const uint16_t PACKET_ID = 0x794e;
uint8_t c = {};
};
-struct SPacket_0x794f_Fixed
+template<>
+struct Packet_Fixed<0x794f>
{
- using NetType = NetSPacket_0x794f_Fixed;
static const uint16_t PACKET_ID = 0x794f;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
uint16_t error = {};
};
-struct RPacket_0x7950_Fixed
+template<>
+struct Packet_Fixed<0x7950>
{
- using NetType = NetRPacket_0x7950_Fixed;
static const uint16_t PACKET_ID = 0x7950;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountName account_name = {};
HumanTimeDiff valid_add = {};
};
-struct SPacket_0x7951_Fixed
+template<>
+struct Packet_Fixed<0x7951>
{
- using NetType = NetSPacket_0x7951_Fixed;
static const uint16_t PACKET_ID = 0x7951;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
AccountName account_name = {};
TimeT valid_until = {};
};
-struct RPacket_0x7952_Fixed
+template<>
+struct Packet_Fixed<0x7952>
{
- using NetType = NetRPacket_0x7952_Fixed;
static const uint16_t PACKET_ID = 0x7952;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountName account_name = {};
};
-struct SPacket_0x7953_Head
+template<>
+struct Packet_Head<0x7953>
{
- using NetType = NetSPacket_0x7953_Head;
static const uint16_t PACKET_ID = 0x7953;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
GmLevel gm_level = {};
@@ -447,66 +493,74 @@ struct SPacket_0x7953_Head
AccountEmail email = {};
TimeT connect_until = {};
TimeT ban_until = {};
+ // TODO remove this
uint16_t magic_packet_length = {};
};
-struct SPacket_0x7953_Repeat
+template<>
+struct Packet_Repeat<0x7953>
{
- using NetType = NetSPacket_0x7953_Repeat;
static const uint16_t PACKET_ID = 0x7953;
uint8_t c = {};
};
-struct RPacket_0x7954_Fixed
+template<>
+struct Packet_Fixed<0x7954>
{
- using NetType = NetRPacket_0x7954_Fixed;
static const uint16_t PACKET_ID = 0x7954;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
};
-struct RPacket_0x7955_Fixed
+template<>
+struct Packet_Fixed<0x7955>
{
- using NetType = NetRPacket_0x7955_Fixed;
static const uint16_t PACKET_ID = 0x7955;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
};
-struct NetSPacket_0x2726_Head
+template<>
+struct NetPacket_Head<0x2726>
{
Little16 magic_packet_id;
Little16 unused;
SkewedLength<Little32, 8> magic_packet_length;
};
-static_assert(offsetof(NetSPacket_0x2726_Head, magic_packet_id) == 0, "offsetof(NetSPacket_0x2726_Head, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x2726_Head, unused) == 2, "offsetof(NetSPacket_0x2726_Head, unused) == 2");
-static_assert(offsetof(NetSPacket_0x2726_Head, magic_packet_length) == 4, "offsetof(NetSPacket_0x2726_Head, magic_packet_length) == 4");
-static_assert(sizeof(NetSPacket_0x2726_Head) == 8, "sizeof(NetSPacket_0x2726_Head) == 8");
-struct NetSPacket_0x2726_Repeat
+static_assert(offsetof(NetPacket_Head<0x2726>, magic_packet_id) == 0, "offsetof(NetPacket_Head<0x2726>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Head<0x2726>, unused) == 2, "offsetof(NetPacket_Head<0x2726>, unused) == 2");
+static_assert(offsetof(NetPacket_Head<0x2726>, magic_packet_length) == 4, "offsetof(NetPacket_Head<0x2726>, magic_packet_length) == 4");
+static_assert(sizeof(NetPacket_Head<0x2726>) == 8, "sizeof(NetPacket_Head<0x2726>) == 8");
+template<>
+struct NetPacket_Repeat<0x2726>
{
Byte c;
};
-static_assert(offsetof(NetSPacket_0x2726_Repeat, c) == 0, "offsetof(NetSPacket_0x2726_Repeat, c) == 0");
-static_assert(sizeof(NetSPacket_0x2726_Repeat) == 1, "sizeof(NetSPacket_0x2726_Repeat) == 1");
-struct NetRPacket_0x7920_Fixed
+static_assert(offsetof(NetPacket_Repeat<0x2726>, c) == 0, "offsetof(NetPacket_Repeat<0x2726>, c) == 0");
+static_assert(sizeof(NetPacket_Repeat<0x2726>) == 1, "sizeof(NetPacket_Repeat<0x2726>) == 1");
+template<>
+struct NetPacket_Fixed<0x7920>
{
Little16 magic_packet_id;
Little32 start_account_id;
Little32 end_account_id;
};
-static_assert(offsetof(NetRPacket_0x7920_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x7920_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x7920_Fixed, start_account_id) == 2, "offsetof(NetRPacket_0x7920_Fixed, start_account_id) == 2");
-static_assert(offsetof(NetRPacket_0x7920_Fixed, end_account_id) == 6, "offsetof(NetRPacket_0x7920_Fixed, end_account_id) == 6");
-static_assert(sizeof(NetRPacket_0x7920_Fixed) == 10, "sizeof(NetRPacket_0x7920_Fixed) == 10");
-struct NetSPacket_0x7921_Head
+static_assert(offsetof(NetPacket_Fixed<0x7920>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7920>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7920>, start_account_id) == 2, "offsetof(NetPacket_Fixed<0x7920>, start_account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x7920>, end_account_id) == 6, "offsetof(NetPacket_Fixed<0x7920>, end_account_id) == 6");
+static_assert(sizeof(NetPacket_Fixed<0x7920>) == 10, "sizeof(NetPacket_Fixed<0x7920>) == 10");
+template<>
+struct NetPacket_Head<0x7921>
{
Little16 magic_packet_id;
Little16 magic_packet_length;
};
-static_assert(offsetof(NetSPacket_0x7921_Head, magic_packet_id) == 0, "offsetof(NetSPacket_0x7921_Head, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x7921_Head, magic_packet_length) == 2, "offsetof(NetSPacket_0x7921_Head, magic_packet_length) == 2");
-static_assert(sizeof(NetSPacket_0x7921_Head) == 4, "sizeof(NetSPacket_0x7921_Head) == 4");
-struct NetSPacket_0x7921_Repeat
+static_assert(offsetof(NetPacket_Head<0x7921>, magic_packet_id) == 0, "offsetof(NetPacket_Head<0x7921>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Head<0x7921>, magic_packet_length) == 2, "offsetof(NetPacket_Head<0x7921>, magic_packet_length) == 2");
+static_assert(sizeof(NetPacket_Head<0x7921>) == 4, "sizeof(NetPacket_Head<0x7921>) == 4");
+template<>
+struct NetPacket_Repeat<0x7921>
{
Little32 account_id;
Byte gm_level;
@@ -515,30 +569,33 @@ struct NetSPacket_0x7921_Repeat
Little32 login_count;
Little32 status;
};
-static_assert(offsetof(NetSPacket_0x7921_Repeat, account_id) == 0, "offsetof(NetSPacket_0x7921_Repeat, account_id) == 0");
-static_assert(offsetof(NetSPacket_0x7921_Repeat, gm_level) == 4, "offsetof(NetSPacket_0x7921_Repeat, gm_level) == 4");
-static_assert(offsetof(NetSPacket_0x7921_Repeat, account_name) == 5, "offsetof(NetSPacket_0x7921_Repeat, account_name) == 5");
-static_assert(offsetof(NetSPacket_0x7921_Repeat, sex) == 29, "offsetof(NetSPacket_0x7921_Repeat, sex) == 29");
-static_assert(offsetof(NetSPacket_0x7921_Repeat, login_count) == 30, "offsetof(NetSPacket_0x7921_Repeat, login_count) == 30");
-static_assert(offsetof(NetSPacket_0x7921_Repeat, status) == 34, "offsetof(NetSPacket_0x7921_Repeat, status) == 34");
-static_assert(sizeof(NetSPacket_0x7921_Repeat) == 38, "sizeof(NetSPacket_0x7921_Repeat) == 38");
-struct NetRPacket_0x7924_Fixed
+static_assert(offsetof(NetPacket_Repeat<0x7921>, account_id) == 0, "offsetof(NetPacket_Repeat<0x7921>, account_id) == 0");
+static_assert(offsetof(NetPacket_Repeat<0x7921>, gm_level) == 4, "offsetof(NetPacket_Repeat<0x7921>, gm_level) == 4");
+static_assert(offsetof(NetPacket_Repeat<0x7921>, account_name) == 5, "offsetof(NetPacket_Repeat<0x7921>, account_name) == 5");
+static_assert(offsetof(NetPacket_Repeat<0x7921>, sex) == 29, "offsetof(NetPacket_Repeat<0x7921>, sex) == 29");
+static_assert(offsetof(NetPacket_Repeat<0x7921>, login_count) == 30, "offsetof(NetPacket_Repeat<0x7921>, login_count) == 30");
+static_assert(offsetof(NetPacket_Repeat<0x7921>, status) == 34, "offsetof(NetPacket_Repeat<0x7921>, status) == 34");
+static_assert(sizeof(NetPacket_Repeat<0x7921>) == 38, "sizeof(NetPacket_Repeat<0x7921>) == 38");
+template<>
+struct NetPacket_Fixed<0x7924>
{
Little16 magic_packet_id;
Little32 source_item_id;
Little32 dest_item_id;
};
-static_assert(offsetof(NetRPacket_0x7924_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x7924_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x7924_Fixed, source_item_id) == 2, "offsetof(NetRPacket_0x7924_Fixed, source_item_id) == 2");
-static_assert(offsetof(NetRPacket_0x7924_Fixed, dest_item_id) == 6, "offsetof(NetRPacket_0x7924_Fixed, dest_item_id) == 6");
-static_assert(sizeof(NetRPacket_0x7924_Fixed) == 10, "sizeof(NetRPacket_0x7924_Fixed) == 10");
-struct NetSPacket_0x7925_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7924>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7924>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7924>, source_item_id) == 2, "offsetof(NetPacket_Fixed<0x7924>, source_item_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x7924>, dest_item_id) == 6, "offsetof(NetPacket_Fixed<0x7924>, dest_item_id) == 6");
+static_assert(sizeof(NetPacket_Fixed<0x7924>) == 10, "sizeof(NetPacket_Fixed<0x7924>) == 10");
+template<>
+struct NetPacket_Fixed<0x7925>
{
Little16 magic_packet_id;
};
-static_assert(offsetof(NetSPacket_0x7925_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x7925_Fixed, magic_packet_id) == 0");
-static_assert(sizeof(NetSPacket_0x7925_Fixed) == 2, "sizeof(NetSPacket_0x7925_Fixed) == 2");
-struct NetRPacket_0x7930_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7925>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7925>, magic_packet_id) == 0");
+static_assert(sizeof(NetPacket_Fixed<0x7925>) == 2, "sizeof(NetPacket_Fixed<0x7925>) == 2");
+template<>
+struct NetPacket_Fixed<0x7930>
{
Little16 magic_packet_id;
NetString<sizeof(AccountName)> account_name;
@@ -546,99 +603,109 @@ struct NetRPacket_0x7930_Fixed
char sex;
NetString<sizeof(AccountEmail)> email;
};
-static_assert(offsetof(NetRPacket_0x7930_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x7930_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x7930_Fixed, account_name) == 2, "offsetof(NetRPacket_0x7930_Fixed, account_name) == 2");
-static_assert(offsetof(NetRPacket_0x7930_Fixed, password) == 26, "offsetof(NetRPacket_0x7930_Fixed, password) == 26");
-static_assert(offsetof(NetRPacket_0x7930_Fixed, sex) == 50, "offsetof(NetRPacket_0x7930_Fixed, sex) == 50");
-static_assert(offsetof(NetRPacket_0x7930_Fixed, email) == 51, "offsetof(NetRPacket_0x7930_Fixed, email) == 51");
-static_assert(sizeof(NetRPacket_0x7930_Fixed) == 91, "sizeof(NetRPacket_0x7930_Fixed) == 91");
-struct NetSPacket_0x7931_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7930>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7930>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7930>, account_name) == 2, "offsetof(NetPacket_Fixed<0x7930>, account_name) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x7930>, password) == 26, "offsetof(NetPacket_Fixed<0x7930>, password) == 26");
+static_assert(offsetof(NetPacket_Fixed<0x7930>, sex) == 50, "offsetof(NetPacket_Fixed<0x7930>, sex) == 50");
+static_assert(offsetof(NetPacket_Fixed<0x7930>, email) == 51, "offsetof(NetPacket_Fixed<0x7930>, email) == 51");
+static_assert(sizeof(NetPacket_Fixed<0x7930>) == 91, "sizeof(NetPacket_Fixed<0x7930>) == 91");
+template<>
+struct NetPacket_Fixed<0x7931>
{
Little16 magic_packet_id;
Little32 account_id;
NetString<sizeof(AccountName)> account_name;
};
-static_assert(offsetof(NetSPacket_0x7931_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x7931_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x7931_Fixed, account_id) == 2, "offsetof(NetSPacket_0x7931_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x7931_Fixed, account_name) == 6, "offsetof(NetSPacket_0x7931_Fixed, account_name) == 6");
-static_assert(sizeof(NetSPacket_0x7931_Fixed) == 30, "sizeof(NetSPacket_0x7931_Fixed) == 30");
-struct NetRPacket_0x7932_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7931>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7931>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7931>, account_id) == 2, "offsetof(NetPacket_Fixed<0x7931>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x7931>, account_name) == 6, "offsetof(NetPacket_Fixed<0x7931>, account_name) == 6");
+static_assert(sizeof(NetPacket_Fixed<0x7931>) == 30, "sizeof(NetPacket_Fixed<0x7931>) == 30");
+template<>
+struct NetPacket_Fixed<0x7932>
{
Little16 magic_packet_id;
NetString<sizeof(AccountName)> account_name;
};
-static_assert(offsetof(NetRPacket_0x7932_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x7932_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x7932_Fixed, account_name) == 2, "offsetof(NetRPacket_0x7932_Fixed, account_name) == 2");
-static_assert(sizeof(NetRPacket_0x7932_Fixed) == 26, "sizeof(NetRPacket_0x7932_Fixed) == 26");
-struct NetSPacket_0x7933_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7932>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7932>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7932>, account_name) == 2, "offsetof(NetPacket_Fixed<0x7932>, account_name) == 2");
+static_assert(sizeof(NetPacket_Fixed<0x7932>) == 26, "sizeof(NetPacket_Fixed<0x7932>) == 26");
+template<>
+struct NetPacket_Fixed<0x7933>
{
Little16 magic_packet_id;
Little32 account_id;
NetString<sizeof(AccountName)> account_name;
};
-static_assert(offsetof(NetSPacket_0x7933_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x7933_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x7933_Fixed, account_id) == 2, "offsetof(NetSPacket_0x7933_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x7933_Fixed, account_name) == 6, "offsetof(NetSPacket_0x7933_Fixed, account_name) == 6");
-static_assert(sizeof(NetSPacket_0x7933_Fixed) == 30, "sizeof(NetSPacket_0x7933_Fixed) == 30");
-struct NetRPacket_0x7934_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7933>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7933>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7933>, account_id) == 2, "offsetof(NetPacket_Fixed<0x7933>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x7933>, account_name) == 6, "offsetof(NetPacket_Fixed<0x7933>, account_name) == 6");
+static_assert(sizeof(NetPacket_Fixed<0x7933>) == 30, "sizeof(NetPacket_Fixed<0x7933>) == 30");
+template<>
+struct NetPacket_Fixed<0x7934>
{
Little16 magic_packet_id;
NetString<sizeof(AccountName)> account_name;
NetString<sizeof(AccountPass)> password;
};
-static_assert(offsetof(NetRPacket_0x7934_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x7934_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x7934_Fixed, account_name) == 2, "offsetof(NetRPacket_0x7934_Fixed, account_name) == 2");
-static_assert(offsetof(NetRPacket_0x7934_Fixed, password) == 26, "offsetof(NetRPacket_0x7934_Fixed, password) == 26");
-static_assert(sizeof(NetRPacket_0x7934_Fixed) == 50, "sizeof(NetRPacket_0x7934_Fixed) == 50");
-struct NetSPacket_0x7935_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7934>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7934>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7934>, account_name) == 2, "offsetof(NetPacket_Fixed<0x7934>, account_name) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x7934>, password) == 26, "offsetof(NetPacket_Fixed<0x7934>, password) == 26");
+static_assert(sizeof(NetPacket_Fixed<0x7934>) == 50, "sizeof(NetPacket_Fixed<0x7934>) == 50");
+template<>
+struct NetPacket_Fixed<0x7935>
{
Little16 magic_packet_id;
Little32 account_id;
NetString<sizeof(AccountName)> account_name;
};
-static_assert(offsetof(NetSPacket_0x7935_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x7935_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x7935_Fixed, account_id) == 2, "offsetof(NetSPacket_0x7935_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x7935_Fixed, account_name) == 6, "offsetof(NetSPacket_0x7935_Fixed, account_name) == 6");
-static_assert(sizeof(NetSPacket_0x7935_Fixed) == 30, "sizeof(NetSPacket_0x7935_Fixed) == 30");
-struct NetRPacket_0x7936_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7935>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7935>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7935>, account_id) == 2, "offsetof(NetPacket_Fixed<0x7935>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x7935>, account_name) == 6, "offsetof(NetPacket_Fixed<0x7935>, account_name) == 6");
+static_assert(sizeof(NetPacket_Fixed<0x7935>) == 30, "sizeof(NetPacket_Fixed<0x7935>) == 30");
+template<>
+struct NetPacket_Fixed<0x7936>
{
Little16 magic_packet_id;
NetString<sizeof(AccountName)> account_name;
Little32 status;
NetString<sizeof(timestamp_seconds_buffer)> error_message;
};
-static_assert(offsetof(NetRPacket_0x7936_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x7936_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x7936_Fixed, account_name) == 2, "offsetof(NetRPacket_0x7936_Fixed, account_name) == 2");
-static_assert(offsetof(NetRPacket_0x7936_Fixed, status) == 26, "offsetof(NetRPacket_0x7936_Fixed, status) == 26");
-static_assert(offsetof(NetRPacket_0x7936_Fixed, error_message) == 30, "offsetof(NetRPacket_0x7936_Fixed, error_message) == 30");
-static_assert(sizeof(NetRPacket_0x7936_Fixed) == 50, "sizeof(NetRPacket_0x7936_Fixed) == 50");
-struct NetSPacket_0x7937_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7936>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7936>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7936>, account_name) == 2, "offsetof(NetPacket_Fixed<0x7936>, account_name) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x7936>, status) == 26, "offsetof(NetPacket_Fixed<0x7936>, status) == 26");
+static_assert(offsetof(NetPacket_Fixed<0x7936>, error_message) == 30, "offsetof(NetPacket_Fixed<0x7936>, error_message) == 30");
+static_assert(sizeof(NetPacket_Fixed<0x7936>) == 50, "sizeof(NetPacket_Fixed<0x7936>) == 50");
+template<>
+struct NetPacket_Fixed<0x7937>
{
Little16 magic_packet_id;
Little32 account_id;
NetString<sizeof(AccountName)> account_name;
Little32 status;
};
-static_assert(offsetof(NetSPacket_0x7937_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x7937_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x7937_Fixed, account_id) == 2, "offsetof(NetSPacket_0x7937_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x7937_Fixed, account_name) == 6, "offsetof(NetSPacket_0x7937_Fixed, account_name) == 6");
-static_assert(offsetof(NetSPacket_0x7937_Fixed, status) == 30, "offsetof(NetSPacket_0x7937_Fixed, status) == 30");
-static_assert(sizeof(NetSPacket_0x7937_Fixed) == 34, "sizeof(NetSPacket_0x7937_Fixed) == 34");
-struct NetRPacket_0x7938_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7937>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7937>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7937>, account_id) == 2, "offsetof(NetPacket_Fixed<0x7937>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x7937>, account_name) == 6, "offsetof(NetPacket_Fixed<0x7937>, account_name) == 6");
+static_assert(offsetof(NetPacket_Fixed<0x7937>, status) == 30, "offsetof(NetPacket_Fixed<0x7937>, status) == 30");
+static_assert(sizeof(NetPacket_Fixed<0x7937>) == 34, "sizeof(NetPacket_Fixed<0x7937>) == 34");
+template<>
+struct NetPacket_Fixed<0x7938>
{
Little16 magic_packet_id;
};
-static_assert(offsetof(NetRPacket_0x7938_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x7938_Fixed, magic_packet_id) == 0");
-static_assert(sizeof(NetRPacket_0x7938_Fixed) == 2, "sizeof(NetRPacket_0x7938_Fixed) == 2");
-struct NetSPacket_0x7939_Head
+static_assert(offsetof(NetPacket_Fixed<0x7938>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7938>, magic_packet_id) == 0");
+static_assert(sizeof(NetPacket_Fixed<0x7938>) == 2, "sizeof(NetPacket_Fixed<0x7938>) == 2");
+template<>
+struct NetPacket_Head<0x7939>
{
Little16 magic_packet_id;
Little16 magic_packet_length;
};
-static_assert(offsetof(NetSPacket_0x7939_Head, magic_packet_id) == 0, "offsetof(NetSPacket_0x7939_Head, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x7939_Head, magic_packet_length) == 2, "offsetof(NetSPacket_0x7939_Head, magic_packet_length) == 2");
-static_assert(sizeof(NetSPacket_0x7939_Head) == 4, "sizeof(NetSPacket_0x7939_Head) == 4");
-struct NetSPacket_0x7939_Repeat
+static_assert(offsetof(NetPacket_Head<0x7939>, magic_packet_id) == 0, "offsetof(NetPacket_Head<0x7939>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Head<0x7939>, magic_packet_length) == 2, "offsetof(NetPacket_Head<0x7939>, magic_packet_length) == 2");
+static_assert(sizeof(NetPacket_Head<0x7939>) == 4, "sizeof(NetPacket_Head<0x7939>) == 4");
+template<>
+struct NetPacket_Repeat<0x7939>
{
IP4Address ip;
Little16 port;
@@ -647,276 +714,304 @@ struct NetSPacket_0x7939_Repeat
Little16 maintenance;
Little16 is_new;
};
-static_assert(offsetof(NetSPacket_0x7939_Repeat, ip) == 0, "offsetof(NetSPacket_0x7939_Repeat, ip) == 0");
-static_assert(offsetof(NetSPacket_0x7939_Repeat, port) == 4, "offsetof(NetSPacket_0x7939_Repeat, port) == 4");
-static_assert(offsetof(NetSPacket_0x7939_Repeat, name) == 6, "offsetof(NetSPacket_0x7939_Repeat, name) == 6");
-static_assert(offsetof(NetSPacket_0x7939_Repeat, users) == 26, "offsetof(NetSPacket_0x7939_Repeat, users) == 26");
-static_assert(offsetof(NetSPacket_0x7939_Repeat, maintenance) == 28, "offsetof(NetSPacket_0x7939_Repeat, maintenance) == 28");
-static_assert(offsetof(NetSPacket_0x7939_Repeat, is_new) == 30, "offsetof(NetSPacket_0x7939_Repeat, is_new) == 30");
-static_assert(sizeof(NetSPacket_0x7939_Repeat) == 32, "sizeof(NetSPacket_0x7939_Repeat) == 32");
-struct NetRPacket_0x793a_Fixed
+static_assert(offsetof(NetPacket_Repeat<0x7939>, ip) == 0, "offsetof(NetPacket_Repeat<0x7939>, ip) == 0");
+static_assert(offsetof(NetPacket_Repeat<0x7939>, port) == 4, "offsetof(NetPacket_Repeat<0x7939>, port) == 4");
+static_assert(offsetof(NetPacket_Repeat<0x7939>, name) == 6, "offsetof(NetPacket_Repeat<0x7939>, name) == 6");
+static_assert(offsetof(NetPacket_Repeat<0x7939>, users) == 26, "offsetof(NetPacket_Repeat<0x7939>, users) == 26");
+static_assert(offsetof(NetPacket_Repeat<0x7939>, maintenance) == 28, "offsetof(NetPacket_Repeat<0x7939>, maintenance) == 28");
+static_assert(offsetof(NetPacket_Repeat<0x7939>, is_new) == 30, "offsetof(NetPacket_Repeat<0x7939>, is_new) == 30");
+static_assert(sizeof(NetPacket_Repeat<0x7939>) == 32, "sizeof(NetPacket_Repeat<0x7939>) == 32");
+template<>
+struct NetPacket_Fixed<0x793a>
{
Little16 magic_packet_id;
NetString<sizeof(AccountName)> account_name;
NetString<sizeof(AccountPass)> password;
};
-static_assert(offsetof(NetRPacket_0x793a_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x793a_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x793a_Fixed, account_name) == 2, "offsetof(NetRPacket_0x793a_Fixed, account_name) == 2");
-static_assert(offsetof(NetRPacket_0x793a_Fixed, password) == 26, "offsetof(NetRPacket_0x793a_Fixed, password) == 26");
-static_assert(sizeof(NetRPacket_0x793a_Fixed) == 50, "sizeof(NetRPacket_0x793a_Fixed) == 50");
-struct NetSPacket_0x793b_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x793a>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x793a>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x793a>, account_name) == 2, "offsetof(NetPacket_Fixed<0x793a>, account_name) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x793a>, password) == 26, "offsetof(NetPacket_Fixed<0x793a>, password) == 26");
+static_assert(sizeof(NetPacket_Fixed<0x793a>) == 50, "sizeof(NetPacket_Fixed<0x793a>) == 50");
+template<>
+struct NetPacket_Fixed<0x793b>
{
Little16 magic_packet_id;
Little32 account_id;
NetString<sizeof(AccountName)> account_name;
};
-static_assert(offsetof(NetSPacket_0x793b_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x793b_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x793b_Fixed, account_id) == 2, "offsetof(NetSPacket_0x793b_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x793b_Fixed, account_name) == 6, "offsetof(NetSPacket_0x793b_Fixed, account_name) == 6");
-static_assert(sizeof(NetSPacket_0x793b_Fixed) == 30, "sizeof(NetSPacket_0x793b_Fixed) == 30");
-struct NetRPacket_0x793c_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x793b>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x793b>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x793b>, account_id) == 2, "offsetof(NetPacket_Fixed<0x793b>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x793b>, account_name) == 6, "offsetof(NetPacket_Fixed<0x793b>, account_name) == 6");
+static_assert(sizeof(NetPacket_Fixed<0x793b>) == 30, "sizeof(NetPacket_Fixed<0x793b>) == 30");
+template<>
+struct NetPacket_Fixed<0x793c>
{
Little16 magic_packet_id;
NetString<sizeof(AccountName)> account_name;
char sex;
};
-static_assert(offsetof(NetRPacket_0x793c_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x793c_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x793c_Fixed, account_name) == 2, "offsetof(NetRPacket_0x793c_Fixed, account_name) == 2");
-static_assert(offsetof(NetRPacket_0x793c_Fixed, sex) == 26, "offsetof(NetRPacket_0x793c_Fixed, sex) == 26");
-static_assert(sizeof(NetRPacket_0x793c_Fixed) == 27, "sizeof(NetRPacket_0x793c_Fixed) == 27");
-struct NetSPacket_0x793d_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x793c>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x793c>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x793c>, account_name) == 2, "offsetof(NetPacket_Fixed<0x793c>, account_name) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x793c>, sex) == 26, "offsetof(NetPacket_Fixed<0x793c>, sex) == 26");
+static_assert(sizeof(NetPacket_Fixed<0x793c>) == 27, "sizeof(NetPacket_Fixed<0x793c>) == 27");
+template<>
+struct NetPacket_Fixed<0x793d>
{
Little16 magic_packet_id;
Little32 account_id;
NetString<sizeof(AccountName)> account_name;
};
-static_assert(offsetof(NetSPacket_0x793d_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x793d_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x793d_Fixed, account_id) == 2, "offsetof(NetSPacket_0x793d_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x793d_Fixed, account_name) == 6, "offsetof(NetSPacket_0x793d_Fixed, account_name) == 6");
-static_assert(sizeof(NetSPacket_0x793d_Fixed) == 30, "sizeof(NetSPacket_0x793d_Fixed) == 30");
-struct NetRPacket_0x793e_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x793d>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x793d>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x793d>, account_id) == 2, "offsetof(NetPacket_Fixed<0x793d>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x793d>, account_name) == 6, "offsetof(NetPacket_Fixed<0x793d>, account_name) == 6");
+static_assert(sizeof(NetPacket_Fixed<0x793d>) == 30, "sizeof(NetPacket_Fixed<0x793d>) == 30");
+template<>
+struct NetPacket_Fixed<0x793e>
{
Little16 magic_packet_id;
NetString<sizeof(AccountName)> account_name;
Byte gm_level;
};
-static_assert(offsetof(NetRPacket_0x793e_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x793e_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x793e_Fixed, account_name) == 2, "offsetof(NetRPacket_0x793e_Fixed, account_name) == 2");
-static_assert(offsetof(NetRPacket_0x793e_Fixed, gm_level) == 26, "offsetof(NetRPacket_0x793e_Fixed, gm_level) == 26");
-static_assert(sizeof(NetRPacket_0x793e_Fixed) == 27, "sizeof(NetRPacket_0x793e_Fixed) == 27");
-struct NetSPacket_0x793f_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x793e>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x793e>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x793e>, account_name) == 2, "offsetof(NetPacket_Fixed<0x793e>, account_name) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x793e>, gm_level) == 26, "offsetof(NetPacket_Fixed<0x793e>, gm_level) == 26");
+static_assert(sizeof(NetPacket_Fixed<0x793e>) == 27, "sizeof(NetPacket_Fixed<0x793e>) == 27");
+template<>
+struct NetPacket_Fixed<0x793f>
{
Little16 magic_packet_id;
Little32 account_id;
NetString<sizeof(AccountName)> account_name;
};
-static_assert(offsetof(NetSPacket_0x793f_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x793f_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x793f_Fixed, account_id) == 2, "offsetof(NetSPacket_0x793f_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x793f_Fixed, account_name) == 6, "offsetof(NetSPacket_0x793f_Fixed, account_name) == 6");
-static_assert(sizeof(NetSPacket_0x793f_Fixed) == 30, "sizeof(NetSPacket_0x793f_Fixed) == 30");
-struct NetRPacket_0x7940_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x793f>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x793f>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x793f>, account_id) == 2, "offsetof(NetPacket_Fixed<0x793f>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x793f>, account_name) == 6, "offsetof(NetPacket_Fixed<0x793f>, account_name) == 6");
+static_assert(sizeof(NetPacket_Fixed<0x793f>) == 30, "sizeof(NetPacket_Fixed<0x793f>) == 30");
+template<>
+struct NetPacket_Fixed<0x7940>
{
Little16 magic_packet_id;
NetString<sizeof(AccountName)> account_name;
NetString<sizeof(AccountEmail)> email;
};
-static_assert(offsetof(NetRPacket_0x7940_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x7940_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x7940_Fixed, account_name) == 2, "offsetof(NetRPacket_0x7940_Fixed, account_name) == 2");
-static_assert(offsetof(NetRPacket_0x7940_Fixed, email) == 26, "offsetof(NetRPacket_0x7940_Fixed, email) == 26");
-static_assert(sizeof(NetRPacket_0x7940_Fixed) == 66, "sizeof(NetRPacket_0x7940_Fixed) == 66");
-struct NetSPacket_0x7941_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7940>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7940>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7940>, account_name) == 2, "offsetof(NetPacket_Fixed<0x7940>, account_name) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x7940>, email) == 26, "offsetof(NetPacket_Fixed<0x7940>, email) == 26");
+static_assert(sizeof(NetPacket_Fixed<0x7940>) == 66, "sizeof(NetPacket_Fixed<0x7940>) == 66");
+template<>
+struct NetPacket_Fixed<0x7941>
{
Little16 magic_packet_id;
Little32 account_id;
NetString<sizeof(AccountName)> account_name;
};
-static_assert(offsetof(NetSPacket_0x7941_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x7941_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x7941_Fixed, account_id) == 2, "offsetof(NetSPacket_0x7941_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x7941_Fixed, account_name) == 6, "offsetof(NetSPacket_0x7941_Fixed, account_name) == 6");
-static_assert(sizeof(NetSPacket_0x7941_Fixed) == 30, "sizeof(NetSPacket_0x7941_Fixed) == 30");
-struct NetRPacket_0x7942_Head
+static_assert(offsetof(NetPacket_Fixed<0x7941>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7941>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7941>, account_id) == 2, "offsetof(NetPacket_Fixed<0x7941>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x7941>, account_name) == 6, "offsetof(NetPacket_Fixed<0x7941>, account_name) == 6");
+static_assert(sizeof(NetPacket_Fixed<0x7941>) == 30, "sizeof(NetPacket_Fixed<0x7941>) == 30");
+template<>
+struct NetPacket_Head<0x7942>
{
Little16 magic_packet_id;
NetString<sizeof(AccountName)> account_name;
SkewedLength<Little16, 28> magic_packet_length;
};
-static_assert(offsetof(NetRPacket_0x7942_Head, magic_packet_id) == 0, "offsetof(NetRPacket_0x7942_Head, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x7942_Head, account_name) == 2, "offsetof(NetRPacket_0x7942_Head, account_name) == 2");
-static_assert(offsetof(NetRPacket_0x7942_Head, magic_packet_length) == 26, "offsetof(NetRPacket_0x7942_Head, magic_packet_length) == 26");
-static_assert(sizeof(NetRPacket_0x7942_Head) == 28, "sizeof(NetRPacket_0x7942_Head) == 28");
-struct NetRPacket_0x7942_Repeat
+static_assert(offsetof(NetPacket_Head<0x7942>, magic_packet_id) == 0, "offsetof(NetPacket_Head<0x7942>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Head<0x7942>, account_name) == 2, "offsetof(NetPacket_Head<0x7942>, account_name) == 2");
+static_assert(offsetof(NetPacket_Head<0x7942>, magic_packet_length) == 26, "offsetof(NetPacket_Head<0x7942>, magic_packet_length) == 26");
+static_assert(sizeof(NetPacket_Head<0x7942>) == 28, "sizeof(NetPacket_Head<0x7942>) == 28");
+template<>
+struct NetPacket_Repeat<0x7942>
{
Byte c;
};
-static_assert(offsetof(NetRPacket_0x7942_Repeat, c) == 0, "offsetof(NetRPacket_0x7942_Repeat, c) == 0");
-static_assert(sizeof(NetRPacket_0x7942_Repeat) == 1, "sizeof(NetRPacket_0x7942_Repeat) == 1");
-struct NetSPacket_0x7943_Fixed
+static_assert(offsetof(NetPacket_Repeat<0x7942>, c) == 0, "offsetof(NetPacket_Repeat<0x7942>, c) == 0");
+static_assert(sizeof(NetPacket_Repeat<0x7942>) == 1, "sizeof(NetPacket_Repeat<0x7942>) == 1");
+template<>
+struct NetPacket_Fixed<0x7943>
{
Little16 magic_packet_id;
Little32 account_id;
NetString<sizeof(AccountName)> account_name;
};
-static_assert(offsetof(NetSPacket_0x7943_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x7943_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x7943_Fixed, account_id) == 2, "offsetof(NetSPacket_0x7943_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x7943_Fixed, account_name) == 6, "offsetof(NetSPacket_0x7943_Fixed, account_name) == 6");
-static_assert(sizeof(NetSPacket_0x7943_Fixed) == 30, "sizeof(NetSPacket_0x7943_Fixed) == 30");
-struct NetRPacket_0x7944_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7943>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7943>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7943>, account_id) == 2, "offsetof(NetPacket_Fixed<0x7943>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x7943>, account_name) == 6, "offsetof(NetPacket_Fixed<0x7943>, account_name) == 6");
+static_assert(sizeof(NetPacket_Fixed<0x7943>) == 30, "sizeof(NetPacket_Fixed<0x7943>) == 30");
+template<>
+struct NetPacket_Fixed<0x7944>
{
Little16 magic_packet_id;
NetString<sizeof(AccountName)> account_name;
};
-static_assert(offsetof(NetRPacket_0x7944_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x7944_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x7944_Fixed, account_name) == 2, "offsetof(NetRPacket_0x7944_Fixed, account_name) == 2");
-static_assert(sizeof(NetRPacket_0x7944_Fixed) == 26, "sizeof(NetRPacket_0x7944_Fixed) == 26");
-struct NetSPacket_0x7945_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7944>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7944>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7944>, account_name) == 2, "offsetof(NetPacket_Fixed<0x7944>, account_name) == 2");
+static_assert(sizeof(NetPacket_Fixed<0x7944>) == 26, "sizeof(NetPacket_Fixed<0x7944>) == 26");
+template<>
+struct NetPacket_Fixed<0x7945>
{
Little16 magic_packet_id;
Little32 account_id;
NetString<sizeof(AccountName)> account_name;
};
-static_assert(offsetof(NetSPacket_0x7945_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x7945_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x7945_Fixed, account_id) == 2, "offsetof(NetSPacket_0x7945_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x7945_Fixed, account_name) == 6, "offsetof(NetSPacket_0x7945_Fixed, account_name) == 6");
-static_assert(sizeof(NetSPacket_0x7945_Fixed) == 30, "sizeof(NetSPacket_0x7945_Fixed) == 30");
-struct NetRPacket_0x7946_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7945>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7945>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7945>, account_id) == 2, "offsetof(NetPacket_Fixed<0x7945>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x7945>, account_name) == 6, "offsetof(NetPacket_Fixed<0x7945>, account_name) == 6");
+static_assert(sizeof(NetPacket_Fixed<0x7945>) == 30, "sizeof(NetPacket_Fixed<0x7945>) == 30");
+template<>
+struct NetPacket_Fixed<0x7946>
{
Little16 magic_packet_id;
Little32 account_id;
};
-static_assert(offsetof(NetRPacket_0x7946_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x7946_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x7946_Fixed, account_id) == 2, "offsetof(NetRPacket_0x7946_Fixed, account_id) == 2");
-static_assert(sizeof(NetRPacket_0x7946_Fixed) == 6, "sizeof(NetRPacket_0x7946_Fixed) == 6");
-struct NetSPacket_0x7947_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7946>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7946>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7946>, account_id) == 2, "offsetof(NetPacket_Fixed<0x7946>, account_id) == 2");
+static_assert(sizeof(NetPacket_Fixed<0x7946>) == 6, "sizeof(NetPacket_Fixed<0x7946>) == 6");
+template<>
+struct NetPacket_Fixed<0x7947>
{
Little16 magic_packet_id;
Little32 account_id;
NetString<sizeof(AccountName)> account_name;
};
-static_assert(offsetof(NetSPacket_0x7947_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x7947_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x7947_Fixed, account_id) == 2, "offsetof(NetSPacket_0x7947_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x7947_Fixed, account_name) == 6, "offsetof(NetSPacket_0x7947_Fixed, account_name) == 6");
-static_assert(sizeof(NetSPacket_0x7947_Fixed) == 30, "sizeof(NetSPacket_0x7947_Fixed) == 30");
-struct NetRPacket_0x7948_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7947>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7947>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7947>, account_id) == 2, "offsetof(NetPacket_Fixed<0x7947>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x7947>, account_name) == 6, "offsetof(NetPacket_Fixed<0x7947>, account_name) == 6");
+static_assert(sizeof(NetPacket_Fixed<0x7947>) == 30, "sizeof(NetPacket_Fixed<0x7947>) == 30");
+template<>
+struct NetPacket_Fixed<0x7948>
{
Little16 magic_packet_id;
NetString<sizeof(AccountName)> account_name;
Little32 valid_until;
};
-static_assert(offsetof(NetRPacket_0x7948_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x7948_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x7948_Fixed, account_name) == 2, "offsetof(NetRPacket_0x7948_Fixed, account_name) == 2");
-static_assert(offsetof(NetRPacket_0x7948_Fixed, valid_until) == 26, "offsetof(NetRPacket_0x7948_Fixed, valid_until) == 26");
-static_assert(sizeof(NetRPacket_0x7948_Fixed) == 30, "sizeof(NetRPacket_0x7948_Fixed) == 30");
-struct NetSPacket_0x7949_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7948>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7948>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7948>, account_name) == 2, "offsetof(NetPacket_Fixed<0x7948>, account_name) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x7948>, valid_until) == 26, "offsetof(NetPacket_Fixed<0x7948>, valid_until) == 26");
+static_assert(sizeof(NetPacket_Fixed<0x7948>) == 30, "sizeof(NetPacket_Fixed<0x7948>) == 30");
+template<>
+struct NetPacket_Fixed<0x7949>
{
Little16 magic_packet_id;
Little32 account_id;
NetString<sizeof(AccountName)> account_name;
Little32 valid_until;
};
-static_assert(offsetof(NetSPacket_0x7949_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x7949_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x7949_Fixed, account_id) == 2, "offsetof(NetSPacket_0x7949_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x7949_Fixed, account_name) == 6, "offsetof(NetSPacket_0x7949_Fixed, account_name) == 6");
-static_assert(offsetof(NetSPacket_0x7949_Fixed, valid_until) == 30, "offsetof(NetSPacket_0x7949_Fixed, valid_until) == 30");
-static_assert(sizeof(NetSPacket_0x7949_Fixed) == 34, "sizeof(NetSPacket_0x7949_Fixed) == 34");
-struct NetRPacket_0x794a_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7949>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7949>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7949>, account_id) == 2, "offsetof(NetPacket_Fixed<0x7949>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x7949>, account_name) == 6, "offsetof(NetPacket_Fixed<0x7949>, account_name) == 6");
+static_assert(offsetof(NetPacket_Fixed<0x7949>, valid_until) == 30, "offsetof(NetPacket_Fixed<0x7949>, valid_until) == 30");
+static_assert(sizeof(NetPacket_Fixed<0x7949>) == 34, "sizeof(NetPacket_Fixed<0x7949>) == 34");
+template<>
+struct NetPacket_Fixed<0x794a>
{
Little16 magic_packet_id;
NetString<sizeof(AccountName)> account_name;
Little32 ban_until;
};
-static_assert(offsetof(NetRPacket_0x794a_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x794a_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x794a_Fixed, account_name) == 2, "offsetof(NetRPacket_0x794a_Fixed, account_name) == 2");
-static_assert(offsetof(NetRPacket_0x794a_Fixed, ban_until) == 26, "offsetof(NetRPacket_0x794a_Fixed, ban_until) == 26");
-static_assert(sizeof(NetRPacket_0x794a_Fixed) == 30, "sizeof(NetRPacket_0x794a_Fixed) == 30");
-struct NetSPacket_0x794b_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x794a>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x794a>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x794a>, account_name) == 2, "offsetof(NetPacket_Fixed<0x794a>, account_name) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x794a>, ban_until) == 26, "offsetof(NetPacket_Fixed<0x794a>, ban_until) == 26");
+static_assert(sizeof(NetPacket_Fixed<0x794a>) == 30, "sizeof(NetPacket_Fixed<0x794a>) == 30");
+template<>
+struct NetPacket_Fixed<0x794b>
{
Little16 magic_packet_id;
Little32 account_id;
NetString<sizeof(AccountName)> account_name;
Little32 ban_until;
};
-static_assert(offsetof(NetSPacket_0x794b_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x794b_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x794b_Fixed, account_id) == 2, "offsetof(NetSPacket_0x794b_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x794b_Fixed, account_name) == 6, "offsetof(NetSPacket_0x794b_Fixed, account_name) == 6");
-static_assert(offsetof(NetSPacket_0x794b_Fixed, ban_until) == 30, "offsetof(NetSPacket_0x794b_Fixed, ban_until) == 30");
-static_assert(sizeof(NetSPacket_0x794b_Fixed) == 34, "sizeof(NetSPacket_0x794b_Fixed) == 34");
-struct NetRPacket_0x794c_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x794b>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x794b>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x794b>, account_id) == 2, "offsetof(NetPacket_Fixed<0x794b>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x794b>, account_name) == 6, "offsetof(NetPacket_Fixed<0x794b>, account_name) == 6");
+static_assert(offsetof(NetPacket_Fixed<0x794b>, ban_until) == 30, "offsetof(NetPacket_Fixed<0x794b>, ban_until) == 30");
+static_assert(sizeof(NetPacket_Fixed<0x794b>) == 34, "sizeof(NetPacket_Fixed<0x794b>) == 34");
+template<>
+struct NetPacket_Fixed<0x794c>
{
Little16 magic_packet_id;
NetString<sizeof(AccountName)> account_name;
NetHumanTimeDiff ban_add;
};
-static_assert(offsetof(NetRPacket_0x794c_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x794c_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x794c_Fixed, account_name) == 2, "offsetof(NetRPacket_0x794c_Fixed, account_name) == 2");
-static_assert(offsetof(NetRPacket_0x794c_Fixed, ban_add) == 26, "offsetof(NetRPacket_0x794c_Fixed, ban_add) == 26");
-static_assert(sizeof(NetRPacket_0x794c_Fixed) == 38, "sizeof(NetRPacket_0x794c_Fixed) == 38");
-struct NetSPacket_0x794d_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x794c>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x794c>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x794c>, account_name) == 2, "offsetof(NetPacket_Fixed<0x794c>, account_name) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x794c>, ban_add) == 26, "offsetof(NetPacket_Fixed<0x794c>, ban_add) == 26");
+static_assert(sizeof(NetPacket_Fixed<0x794c>) == 38, "sizeof(NetPacket_Fixed<0x794c>) == 38");
+template<>
+struct NetPacket_Fixed<0x794d>
{
Little16 magic_packet_id;
Little32 account_id;
NetString<sizeof(AccountName)> account_name;
Little32 ban_until;
};
-static_assert(offsetof(NetSPacket_0x794d_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x794d_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x794d_Fixed, account_id) == 2, "offsetof(NetSPacket_0x794d_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x794d_Fixed, account_name) == 6, "offsetof(NetSPacket_0x794d_Fixed, account_name) == 6");
-static_assert(offsetof(NetSPacket_0x794d_Fixed, ban_until) == 30, "offsetof(NetSPacket_0x794d_Fixed, ban_until) == 30");
-static_assert(sizeof(NetSPacket_0x794d_Fixed) == 34, "sizeof(NetSPacket_0x794d_Fixed) == 34");
-struct NetRPacket_0x794e_Head
+static_assert(offsetof(NetPacket_Fixed<0x794d>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x794d>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x794d>, account_id) == 2, "offsetof(NetPacket_Fixed<0x794d>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x794d>, account_name) == 6, "offsetof(NetPacket_Fixed<0x794d>, account_name) == 6");
+static_assert(offsetof(NetPacket_Fixed<0x794d>, ban_until) == 30, "offsetof(NetPacket_Fixed<0x794d>, ban_until) == 30");
+static_assert(sizeof(NetPacket_Fixed<0x794d>) == 34, "sizeof(NetPacket_Fixed<0x794d>) == 34");
+template<>
+struct NetPacket_Head<0x794e>
{
Little16 magic_packet_id;
Little16 unused;
SkewedLength<Little32, 8> magic_packet_length;
};
-static_assert(offsetof(NetRPacket_0x794e_Head, magic_packet_id) == 0, "offsetof(NetRPacket_0x794e_Head, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x794e_Head, unused) == 2, "offsetof(NetRPacket_0x794e_Head, unused) == 2");
-static_assert(offsetof(NetRPacket_0x794e_Head, magic_packet_length) == 4, "offsetof(NetRPacket_0x794e_Head, magic_packet_length) == 4");
-static_assert(sizeof(NetRPacket_0x794e_Head) == 8, "sizeof(NetRPacket_0x794e_Head) == 8");
-struct NetRPacket_0x794e_Repeat
+static_assert(offsetof(NetPacket_Head<0x794e>, magic_packet_id) == 0, "offsetof(NetPacket_Head<0x794e>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Head<0x794e>, unused) == 2, "offsetof(NetPacket_Head<0x794e>, unused) == 2");
+static_assert(offsetof(NetPacket_Head<0x794e>, magic_packet_length) == 4, "offsetof(NetPacket_Head<0x794e>, magic_packet_length) == 4");
+static_assert(sizeof(NetPacket_Head<0x794e>) == 8, "sizeof(NetPacket_Head<0x794e>) == 8");
+template<>
+struct NetPacket_Repeat<0x794e>
{
Byte c;
};
-static_assert(offsetof(NetRPacket_0x794e_Repeat, c) == 0, "offsetof(NetRPacket_0x794e_Repeat, c) == 0");
-static_assert(sizeof(NetRPacket_0x794e_Repeat) == 1, "sizeof(NetRPacket_0x794e_Repeat) == 1");
-struct NetSPacket_0x794f_Fixed
+static_assert(offsetof(NetPacket_Repeat<0x794e>, c) == 0, "offsetof(NetPacket_Repeat<0x794e>, c) == 0");
+static_assert(sizeof(NetPacket_Repeat<0x794e>) == 1, "sizeof(NetPacket_Repeat<0x794e>) == 1");
+template<>
+struct NetPacket_Fixed<0x794f>
{
Little16 magic_packet_id;
Little16 error;
};
-static_assert(offsetof(NetSPacket_0x794f_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x794f_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x794f_Fixed, error) == 2, "offsetof(NetSPacket_0x794f_Fixed, error) == 2");
-static_assert(sizeof(NetSPacket_0x794f_Fixed) == 4, "sizeof(NetSPacket_0x794f_Fixed) == 4");
-struct NetRPacket_0x7950_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x794f>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x794f>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x794f>, error) == 2, "offsetof(NetPacket_Fixed<0x794f>, error) == 2");
+static_assert(sizeof(NetPacket_Fixed<0x794f>) == 4, "sizeof(NetPacket_Fixed<0x794f>) == 4");
+template<>
+struct NetPacket_Fixed<0x7950>
{
Little16 magic_packet_id;
NetString<sizeof(AccountName)> account_name;
NetHumanTimeDiff valid_add;
};
-static_assert(offsetof(NetRPacket_0x7950_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x7950_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x7950_Fixed, account_name) == 2, "offsetof(NetRPacket_0x7950_Fixed, account_name) == 2");
-static_assert(offsetof(NetRPacket_0x7950_Fixed, valid_add) == 26, "offsetof(NetRPacket_0x7950_Fixed, valid_add) == 26");
-static_assert(sizeof(NetRPacket_0x7950_Fixed) == 38, "sizeof(NetRPacket_0x7950_Fixed) == 38");
-struct NetSPacket_0x7951_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7950>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7950>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7950>, account_name) == 2, "offsetof(NetPacket_Fixed<0x7950>, account_name) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x7950>, valid_add) == 26, "offsetof(NetPacket_Fixed<0x7950>, valid_add) == 26");
+static_assert(sizeof(NetPacket_Fixed<0x7950>) == 38, "sizeof(NetPacket_Fixed<0x7950>) == 38");
+template<>
+struct NetPacket_Fixed<0x7951>
{
Little16 magic_packet_id;
Little32 account_id;
NetString<sizeof(AccountName)> account_name;
Little32 valid_until;
};
-static_assert(offsetof(NetSPacket_0x7951_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x7951_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x7951_Fixed, account_id) == 2, "offsetof(NetSPacket_0x7951_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x7951_Fixed, account_name) == 6, "offsetof(NetSPacket_0x7951_Fixed, account_name) == 6");
-static_assert(offsetof(NetSPacket_0x7951_Fixed, valid_until) == 30, "offsetof(NetSPacket_0x7951_Fixed, valid_until) == 30");
-static_assert(sizeof(NetSPacket_0x7951_Fixed) == 34, "sizeof(NetSPacket_0x7951_Fixed) == 34");
-struct NetRPacket_0x7952_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7951>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7951>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7951>, account_id) == 2, "offsetof(NetPacket_Fixed<0x7951>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x7951>, account_name) == 6, "offsetof(NetPacket_Fixed<0x7951>, account_name) == 6");
+static_assert(offsetof(NetPacket_Fixed<0x7951>, valid_until) == 30, "offsetof(NetPacket_Fixed<0x7951>, valid_until) == 30");
+static_assert(sizeof(NetPacket_Fixed<0x7951>) == 34, "sizeof(NetPacket_Fixed<0x7951>) == 34");
+template<>
+struct NetPacket_Fixed<0x7952>
{
Little16 magic_packet_id;
NetString<sizeof(AccountName)> account_name;
};
-static_assert(offsetof(NetRPacket_0x7952_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x7952_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x7952_Fixed, account_name) == 2, "offsetof(NetRPacket_0x7952_Fixed, account_name) == 2");
-static_assert(sizeof(NetRPacket_0x7952_Fixed) == 26, "sizeof(NetRPacket_0x7952_Fixed) == 26");
-struct NetSPacket_0x7953_Head
+static_assert(offsetof(NetPacket_Fixed<0x7952>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7952>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7952>, account_name) == 2, "offsetof(NetPacket_Fixed<0x7952>, account_name) == 2");
+static_assert(sizeof(NetPacket_Fixed<0x7952>) == 26, "sizeof(NetPacket_Fixed<0x7952>) == 26");
+template<>
+struct NetPacket_Head<0x7953>
{
Little16 magic_packet_id;
Little32 account_id;
@@ -933,44 +1028,47 @@ struct NetSPacket_0x7953_Head
Little32 ban_until;
SkewedLength<Little16, 150> magic_packet_length;
};
-static_assert(offsetof(NetSPacket_0x7953_Head, magic_packet_id) == 0, "offsetof(NetSPacket_0x7953_Head, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x7953_Head, account_id) == 2, "offsetof(NetSPacket_0x7953_Head, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x7953_Head, gm_level) == 6, "offsetof(NetSPacket_0x7953_Head, gm_level) == 6");
-static_assert(offsetof(NetSPacket_0x7953_Head, account_name) == 7, "offsetof(NetSPacket_0x7953_Head, account_name) == 7");
-static_assert(offsetof(NetSPacket_0x7953_Head, sex) == 31, "offsetof(NetSPacket_0x7953_Head, sex) == 31");
-static_assert(offsetof(NetSPacket_0x7953_Head, login_count) == 32, "offsetof(NetSPacket_0x7953_Head, login_count) == 32");
-static_assert(offsetof(NetSPacket_0x7953_Head, state) == 36, "offsetof(NetSPacket_0x7953_Head, state) == 36");
-static_assert(offsetof(NetSPacket_0x7953_Head, error_message) == 40, "offsetof(NetSPacket_0x7953_Head, error_message) == 40");
-static_assert(offsetof(NetSPacket_0x7953_Head, last_login_string) == 60, "offsetof(NetSPacket_0x7953_Head, last_login_string) == 60");
-static_assert(offsetof(NetSPacket_0x7953_Head, ip_string) == 84, "offsetof(NetSPacket_0x7953_Head, ip_string) == 84");
-static_assert(offsetof(NetSPacket_0x7953_Head, email) == 100, "offsetof(NetSPacket_0x7953_Head, email) == 100");
-static_assert(offsetof(NetSPacket_0x7953_Head, connect_until) == 140, "offsetof(NetSPacket_0x7953_Head, connect_until) == 140");
-static_assert(offsetof(NetSPacket_0x7953_Head, ban_until) == 144, "offsetof(NetSPacket_0x7953_Head, ban_until) == 144");
-static_assert(offsetof(NetSPacket_0x7953_Head, magic_packet_length) == 148, "offsetof(NetSPacket_0x7953_Head, magic_packet_length) == 148");
-static_assert(sizeof(NetSPacket_0x7953_Head) == 150, "sizeof(NetSPacket_0x7953_Head) == 150");
-struct NetSPacket_0x7953_Repeat
+static_assert(offsetof(NetPacket_Head<0x7953>, magic_packet_id) == 0, "offsetof(NetPacket_Head<0x7953>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Head<0x7953>, account_id) == 2, "offsetof(NetPacket_Head<0x7953>, account_id) == 2");
+static_assert(offsetof(NetPacket_Head<0x7953>, gm_level) == 6, "offsetof(NetPacket_Head<0x7953>, gm_level) == 6");
+static_assert(offsetof(NetPacket_Head<0x7953>, account_name) == 7, "offsetof(NetPacket_Head<0x7953>, account_name) == 7");
+static_assert(offsetof(NetPacket_Head<0x7953>, sex) == 31, "offsetof(NetPacket_Head<0x7953>, sex) == 31");
+static_assert(offsetof(NetPacket_Head<0x7953>, login_count) == 32, "offsetof(NetPacket_Head<0x7953>, login_count) == 32");
+static_assert(offsetof(NetPacket_Head<0x7953>, state) == 36, "offsetof(NetPacket_Head<0x7953>, state) == 36");
+static_assert(offsetof(NetPacket_Head<0x7953>, error_message) == 40, "offsetof(NetPacket_Head<0x7953>, error_message) == 40");
+static_assert(offsetof(NetPacket_Head<0x7953>, last_login_string) == 60, "offsetof(NetPacket_Head<0x7953>, last_login_string) == 60");
+static_assert(offsetof(NetPacket_Head<0x7953>, ip_string) == 84, "offsetof(NetPacket_Head<0x7953>, ip_string) == 84");
+static_assert(offsetof(NetPacket_Head<0x7953>, email) == 100, "offsetof(NetPacket_Head<0x7953>, email) == 100");
+static_assert(offsetof(NetPacket_Head<0x7953>, connect_until) == 140, "offsetof(NetPacket_Head<0x7953>, connect_until) == 140");
+static_assert(offsetof(NetPacket_Head<0x7953>, ban_until) == 144, "offsetof(NetPacket_Head<0x7953>, ban_until) == 144");
+static_assert(offsetof(NetPacket_Head<0x7953>, magic_packet_length) == 148, "offsetof(NetPacket_Head<0x7953>, magic_packet_length) == 148");
+static_assert(sizeof(NetPacket_Head<0x7953>) == 150, "sizeof(NetPacket_Head<0x7953>) == 150");
+template<>
+struct NetPacket_Repeat<0x7953>
{
Byte c;
};
-static_assert(offsetof(NetSPacket_0x7953_Repeat, c) == 0, "offsetof(NetSPacket_0x7953_Repeat, c) == 0");
-static_assert(sizeof(NetSPacket_0x7953_Repeat) == 1, "sizeof(NetSPacket_0x7953_Repeat) == 1");
-struct NetRPacket_0x7954_Fixed
+static_assert(offsetof(NetPacket_Repeat<0x7953>, c) == 0, "offsetof(NetPacket_Repeat<0x7953>, c) == 0");
+static_assert(sizeof(NetPacket_Repeat<0x7953>) == 1, "sizeof(NetPacket_Repeat<0x7953>) == 1");
+template<>
+struct NetPacket_Fixed<0x7954>
{
Little16 magic_packet_id;
Little32 account_id;
};
-static_assert(offsetof(NetRPacket_0x7954_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x7954_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x7954_Fixed, account_id) == 2, "offsetof(NetRPacket_0x7954_Fixed, account_id) == 2");
-static_assert(sizeof(NetRPacket_0x7954_Fixed) == 6, "sizeof(NetRPacket_0x7954_Fixed) == 6");
-struct NetRPacket_0x7955_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x7954>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7954>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x7954>, account_id) == 2, "offsetof(NetPacket_Fixed<0x7954>, account_id) == 2");
+static_assert(sizeof(NetPacket_Fixed<0x7954>) == 6, "sizeof(NetPacket_Fixed<0x7954>) == 6");
+template<>
+struct NetPacket_Fixed<0x7955>
{
Little16 magic_packet_id;
};
-static_assert(offsetof(NetRPacket_0x7955_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x7955_Fixed, magic_packet_id) == 0");
-static_assert(sizeof(NetRPacket_0x7955_Fixed) == 2, "sizeof(NetRPacket_0x7955_Fixed) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x7955>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x7955>, magic_packet_id) == 0");
+static_assert(sizeof(NetPacket_Fixed<0x7955>) == 2, "sizeof(NetPacket_Fixed<0x7955>) == 2");
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x2726_Head *network, SPacket_0x2726_Head native)
+bool native_to_network(NetPacket_Head<0x2726> *network, Packet_Head<0x2726> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -979,7 +1077,7 @@ bool native_to_network(NetSPacket_0x2726_Head *network, SPacket_0x2726_Head nati
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x2726_Head *native, NetSPacket_0x2726_Head network)
+bool network_to_native(Packet_Head<0x2726> *native, NetPacket_Head<0x2726> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -988,21 +1086,21 @@ bool network_to_native(SPacket_0x2726_Head *native, NetSPacket_0x2726_Head netwo
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x2726_Repeat *network, SPacket_0x2726_Repeat native)
+bool native_to_network(NetPacket_Repeat<0x2726> *network, Packet_Repeat<0x2726> native)
{
bool rv = true;
rv &= native_to_network(&network->c, native.c);
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x2726_Repeat *native, NetSPacket_0x2726_Repeat network)
+bool network_to_native(Packet_Repeat<0x2726> *native, NetPacket_Repeat<0x2726> network)
{
bool rv = true;
rv &= network_to_native(&native->c, network.c);
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x7920_Fixed *network, RPacket_0x7920_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7920> *network, Packet_Fixed<0x7920> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1011,7 +1109,7 @@ bool native_to_network(NetRPacket_0x7920_Fixed *network, RPacket_0x7920_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x7920_Fixed *native, NetRPacket_0x7920_Fixed network)
+bool network_to_native(Packet_Fixed<0x7920> *native, NetPacket_Fixed<0x7920> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1020,7 +1118,7 @@ bool network_to_native(RPacket_0x7920_Fixed *native, NetRPacket_0x7920_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x7921_Head *network, SPacket_0x7921_Head native)
+bool native_to_network(NetPacket_Head<0x7921> *network, Packet_Head<0x7921> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1028,7 +1126,7 @@ bool native_to_network(NetSPacket_0x7921_Head *network, SPacket_0x7921_Head nati
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x7921_Head *native, NetSPacket_0x7921_Head network)
+bool network_to_native(Packet_Head<0x7921> *native, NetPacket_Head<0x7921> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1036,7 +1134,7 @@ bool network_to_native(SPacket_0x7921_Head *native, NetSPacket_0x7921_Head netwo
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x7921_Repeat *network, SPacket_0x7921_Repeat native)
+bool native_to_network(NetPacket_Repeat<0x7921> *network, Packet_Repeat<0x7921> native)
{
bool rv = true;
rv &= native_to_network(&network->account_id, native.account_id);
@@ -1048,7 +1146,7 @@ bool native_to_network(NetSPacket_0x7921_Repeat *network, SPacket_0x7921_Repeat
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x7921_Repeat *native, NetSPacket_0x7921_Repeat network)
+bool network_to_native(Packet_Repeat<0x7921> *native, NetPacket_Repeat<0x7921> network)
{
bool rv = true;
rv &= network_to_native(&native->account_id, network.account_id);
@@ -1060,7 +1158,7 @@ bool network_to_native(SPacket_0x7921_Repeat *native, NetSPacket_0x7921_Repeat n
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x7924_Fixed *network, RPacket_0x7924_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7924> *network, Packet_Fixed<0x7924> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1069,7 +1167,7 @@ bool native_to_network(NetRPacket_0x7924_Fixed *network, RPacket_0x7924_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x7924_Fixed *native, NetRPacket_0x7924_Fixed network)
+bool network_to_native(Packet_Fixed<0x7924> *native, NetPacket_Fixed<0x7924> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1078,21 +1176,21 @@ bool network_to_native(RPacket_0x7924_Fixed *native, NetRPacket_0x7924_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x7925_Fixed *network, SPacket_0x7925_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7925> *network, Packet_Fixed<0x7925> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x7925_Fixed *native, NetSPacket_0x7925_Fixed network)
+bool network_to_native(Packet_Fixed<0x7925> *native, NetPacket_Fixed<0x7925> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x7930_Fixed *network, RPacket_0x7930_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7930> *network, Packet_Fixed<0x7930> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1103,7 +1201,7 @@ bool native_to_network(NetRPacket_0x7930_Fixed *network, RPacket_0x7930_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x7930_Fixed *native, NetRPacket_0x7930_Fixed network)
+bool network_to_native(Packet_Fixed<0x7930> *native, NetPacket_Fixed<0x7930> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1114,7 +1212,7 @@ bool network_to_native(RPacket_0x7930_Fixed *native, NetRPacket_0x7930_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x7931_Fixed *network, SPacket_0x7931_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7931> *network, Packet_Fixed<0x7931> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1123,7 +1221,7 @@ bool native_to_network(NetSPacket_0x7931_Fixed *network, SPacket_0x7931_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x7931_Fixed *native, NetSPacket_0x7931_Fixed network)
+bool network_to_native(Packet_Fixed<0x7931> *native, NetPacket_Fixed<0x7931> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1132,7 +1230,7 @@ bool network_to_native(SPacket_0x7931_Fixed *native, NetSPacket_0x7931_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x7932_Fixed *network, RPacket_0x7932_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7932> *network, Packet_Fixed<0x7932> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1140,7 +1238,7 @@ bool native_to_network(NetRPacket_0x7932_Fixed *network, RPacket_0x7932_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x7932_Fixed *native, NetRPacket_0x7932_Fixed network)
+bool network_to_native(Packet_Fixed<0x7932> *native, NetPacket_Fixed<0x7932> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1148,7 +1246,7 @@ bool network_to_native(RPacket_0x7932_Fixed *native, NetRPacket_0x7932_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x7933_Fixed *network, SPacket_0x7933_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7933> *network, Packet_Fixed<0x7933> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1157,7 +1255,7 @@ bool native_to_network(NetSPacket_0x7933_Fixed *network, SPacket_0x7933_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x7933_Fixed *native, NetSPacket_0x7933_Fixed network)
+bool network_to_native(Packet_Fixed<0x7933> *native, NetPacket_Fixed<0x7933> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1166,7 +1264,7 @@ bool network_to_native(SPacket_0x7933_Fixed *native, NetSPacket_0x7933_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x7934_Fixed *network, RPacket_0x7934_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7934> *network, Packet_Fixed<0x7934> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1175,7 +1273,7 @@ bool native_to_network(NetRPacket_0x7934_Fixed *network, RPacket_0x7934_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x7934_Fixed *native, NetRPacket_0x7934_Fixed network)
+bool network_to_native(Packet_Fixed<0x7934> *native, NetPacket_Fixed<0x7934> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1184,7 +1282,7 @@ bool network_to_native(RPacket_0x7934_Fixed *native, NetRPacket_0x7934_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x7935_Fixed *network, SPacket_0x7935_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7935> *network, Packet_Fixed<0x7935> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1193,7 +1291,7 @@ bool native_to_network(NetSPacket_0x7935_Fixed *network, SPacket_0x7935_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x7935_Fixed *native, NetSPacket_0x7935_Fixed network)
+bool network_to_native(Packet_Fixed<0x7935> *native, NetPacket_Fixed<0x7935> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1202,7 +1300,7 @@ bool network_to_native(SPacket_0x7935_Fixed *native, NetSPacket_0x7935_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x7936_Fixed *network, RPacket_0x7936_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7936> *network, Packet_Fixed<0x7936> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1212,7 +1310,7 @@ bool native_to_network(NetRPacket_0x7936_Fixed *network, RPacket_0x7936_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x7936_Fixed *native, NetRPacket_0x7936_Fixed network)
+bool network_to_native(Packet_Fixed<0x7936> *native, NetPacket_Fixed<0x7936> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1222,7 +1320,7 @@ bool network_to_native(RPacket_0x7936_Fixed *native, NetRPacket_0x7936_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x7937_Fixed *network, SPacket_0x7937_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7937> *network, Packet_Fixed<0x7937> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1232,7 +1330,7 @@ bool native_to_network(NetSPacket_0x7937_Fixed *network, SPacket_0x7937_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x7937_Fixed *native, NetSPacket_0x7937_Fixed network)
+bool network_to_native(Packet_Fixed<0x7937> *native, NetPacket_Fixed<0x7937> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1242,21 +1340,21 @@ bool network_to_native(SPacket_0x7937_Fixed *native, NetSPacket_0x7937_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x7938_Fixed *network, RPacket_0x7938_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7938> *network, Packet_Fixed<0x7938> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x7938_Fixed *native, NetRPacket_0x7938_Fixed network)
+bool network_to_native(Packet_Fixed<0x7938> *native, NetPacket_Fixed<0x7938> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x7939_Head *network, SPacket_0x7939_Head native)
+bool native_to_network(NetPacket_Head<0x7939> *network, Packet_Head<0x7939> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1264,7 +1362,7 @@ bool native_to_network(NetSPacket_0x7939_Head *network, SPacket_0x7939_Head nati
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x7939_Head *native, NetSPacket_0x7939_Head network)
+bool network_to_native(Packet_Head<0x7939> *native, NetPacket_Head<0x7939> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1272,7 +1370,7 @@ bool network_to_native(SPacket_0x7939_Head *native, NetSPacket_0x7939_Head netwo
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x7939_Repeat *network, SPacket_0x7939_Repeat native)
+bool native_to_network(NetPacket_Repeat<0x7939> *network, Packet_Repeat<0x7939> native)
{
bool rv = true;
rv &= native_to_network(&network->ip, native.ip);
@@ -1284,7 +1382,7 @@ bool native_to_network(NetSPacket_0x7939_Repeat *network, SPacket_0x7939_Repeat
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x7939_Repeat *native, NetSPacket_0x7939_Repeat network)
+bool network_to_native(Packet_Repeat<0x7939> *native, NetPacket_Repeat<0x7939> network)
{
bool rv = true;
rv &= network_to_native(&native->ip, network.ip);
@@ -1296,7 +1394,7 @@ bool network_to_native(SPacket_0x7939_Repeat *native, NetSPacket_0x7939_Repeat n
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x793a_Fixed *network, RPacket_0x793a_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x793a> *network, Packet_Fixed<0x793a> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1305,7 +1403,7 @@ bool native_to_network(NetRPacket_0x793a_Fixed *network, RPacket_0x793a_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x793a_Fixed *native, NetRPacket_0x793a_Fixed network)
+bool network_to_native(Packet_Fixed<0x793a> *native, NetPacket_Fixed<0x793a> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1314,7 +1412,7 @@ bool network_to_native(RPacket_0x793a_Fixed *native, NetRPacket_0x793a_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x793b_Fixed *network, SPacket_0x793b_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x793b> *network, Packet_Fixed<0x793b> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1323,7 +1421,7 @@ bool native_to_network(NetSPacket_0x793b_Fixed *network, SPacket_0x793b_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x793b_Fixed *native, NetSPacket_0x793b_Fixed network)
+bool network_to_native(Packet_Fixed<0x793b> *native, NetPacket_Fixed<0x793b> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1332,7 +1430,7 @@ bool network_to_native(SPacket_0x793b_Fixed *native, NetSPacket_0x793b_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x793c_Fixed *network, RPacket_0x793c_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x793c> *network, Packet_Fixed<0x793c> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1341,7 +1439,7 @@ bool native_to_network(NetRPacket_0x793c_Fixed *network, RPacket_0x793c_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x793c_Fixed *native, NetRPacket_0x793c_Fixed network)
+bool network_to_native(Packet_Fixed<0x793c> *native, NetPacket_Fixed<0x793c> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1350,7 +1448,7 @@ bool network_to_native(RPacket_0x793c_Fixed *native, NetRPacket_0x793c_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x793d_Fixed *network, SPacket_0x793d_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x793d> *network, Packet_Fixed<0x793d> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1359,7 +1457,7 @@ bool native_to_network(NetSPacket_0x793d_Fixed *network, SPacket_0x793d_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x793d_Fixed *native, NetSPacket_0x793d_Fixed network)
+bool network_to_native(Packet_Fixed<0x793d> *native, NetPacket_Fixed<0x793d> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1368,7 +1466,7 @@ bool network_to_native(SPacket_0x793d_Fixed *native, NetSPacket_0x793d_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x793e_Fixed *network, RPacket_0x793e_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x793e> *network, Packet_Fixed<0x793e> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1377,7 +1475,7 @@ bool native_to_network(NetRPacket_0x793e_Fixed *network, RPacket_0x793e_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x793e_Fixed *native, NetRPacket_0x793e_Fixed network)
+bool network_to_native(Packet_Fixed<0x793e> *native, NetPacket_Fixed<0x793e> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1386,7 +1484,7 @@ bool network_to_native(RPacket_0x793e_Fixed *native, NetRPacket_0x793e_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x793f_Fixed *network, SPacket_0x793f_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x793f> *network, Packet_Fixed<0x793f> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1395,7 +1493,7 @@ bool native_to_network(NetSPacket_0x793f_Fixed *network, SPacket_0x793f_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x793f_Fixed *native, NetSPacket_0x793f_Fixed network)
+bool network_to_native(Packet_Fixed<0x793f> *native, NetPacket_Fixed<0x793f> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1404,7 +1502,7 @@ bool network_to_native(SPacket_0x793f_Fixed *native, NetSPacket_0x793f_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x7940_Fixed *network, RPacket_0x7940_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7940> *network, Packet_Fixed<0x7940> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1413,7 +1511,7 @@ bool native_to_network(NetRPacket_0x7940_Fixed *network, RPacket_0x7940_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x7940_Fixed *native, NetRPacket_0x7940_Fixed network)
+bool network_to_native(Packet_Fixed<0x7940> *native, NetPacket_Fixed<0x7940> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1422,7 +1520,7 @@ bool network_to_native(RPacket_0x7940_Fixed *native, NetRPacket_0x7940_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x7941_Fixed *network, SPacket_0x7941_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7941> *network, Packet_Fixed<0x7941> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1431,7 +1529,7 @@ bool native_to_network(NetSPacket_0x7941_Fixed *network, SPacket_0x7941_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x7941_Fixed *native, NetSPacket_0x7941_Fixed network)
+bool network_to_native(Packet_Fixed<0x7941> *native, NetPacket_Fixed<0x7941> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1440,7 +1538,7 @@ bool network_to_native(SPacket_0x7941_Fixed *native, NetSPacket_0x7941_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x7942_Head *network, RPacket_0x7942_Head native)
+bool native_to_network(NetPacket_Head<0x7942> *network, Packet_Head<0x7942> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1449,7 +1547,7 @@ bool native_to_network(NetRPacket_0x7942_Head *network, RPacket_0x7942_Head nati
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x7942_Head *native, NetRPacket_0x7942_Head network)
+bool network_to_native(Packet_Head<0x7942> *native, NetPacket_Head<0x7942> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1458,21 +1556,21 @@ bool network_to_native(RPacket_0x7942_Head *native, NetRPacket_0x7942_Head netwo
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x7942_Repeat *network, RPacket_0x7942_Repeat native)
+bool native_to_network(NetPacket_Repeat<0x7942> *network, Packet_Repeat<0x7942> native)
{
bool rv = true;
rv &= native_to_network(&network->c, native.c);
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x7942_Repeat *native, NetRPacket_0x7942_Repeat network)
+bool network_to_native(Packet_Repeat<0x7942> *native, NetPacket_Repeat<0x7942> network)
{
bool rv = true;
rv &= network_to_native(&native->c, network.c);
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x7943_Fixed *network, SPacket_0x7943_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7943> *network, Packet_Fixed<0x7943> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1481,7 +1579,7 @@ bool native_to_network(NetSPacket_0x7943_Fixed *network, SPacket_0x7943_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x7943_Fixed *native, NetSPacket_0x7943_Fixed network)
+bool network_to_native(Packet_Fixed<0x7943> *native, NetPacket_Fixed<0x7943> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1490,7 +1588,7 @@ bool network_to_native(SPacket_0x7943_Fixed *native, NetSPacket_0x7943_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x7944_Fixed *network, RPacket_0x7944_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7944> *network, Packet_Fixed<0x7944> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1498,7 +1596,7 @@ bool native_to_network(NetRPacket_0x7944_Fixed *network, RPacket_0x7944_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x7944_Fixed *native, NetRPacket_0x7944_Fixed network)
+bool network_to_native(Packet_Fixed<0x7944> *native, NetPacket_Fixed<0x7944> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1506,7 +1604,7 @@ bool network_to_native(RPacket_0x7944_Fixed *native, NetRPacket_0x7944_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x7945_Fixed *network, SPacket_0x7945_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7945> *network, Packet_Fixed<0x7945> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1515,7 +1613,7 @@ bool native_to_network(NetSPacket_0x7945_Fixed *network, SPacket_0x7945_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x7945_Fixed *native, NetSPacket_0x7945_Fixed network)
+bool network_to_native(Packet_Fixed<0x7945> *native, NetPacket_Fixed<0x7945> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1524,7 +1622,7 @@ bool network_to_native(SPacket_0x7945_Fixed *native, NetSPacket_0x7945_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x7946_Fixed *network, RPacket_0x7946_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7946> *network, Packet_Fixed<0x7946> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1532,7 +1630,7 @@ bool native_to_network(NetRPacket_0x7946_Fixed *network, RPacket_0x7946_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x7946_Fixed *native, NetRPacket_0x7946_Fixed network)
+bool network_to_native(Packet_Fixed<0x7946> *native, NetPacket_Fixed<0x7946> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1540,7 +1638,7 @@ bool network_to_native(RPacket_0x7946_Fixed *native, NetRPacket_0x7946_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x7947_Fixed *network, SPacket_0x7947_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7947> *network, Packet_Fixed<0x7947> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1549,7 +1647,7 @@ bool native_to_network(NetSPacket_0x7947_Fixed *network, SPacket_0x7947_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x7947_Fixed *native, NetSPacket_0x7947_Fixed network)
+bool network_to_native(Packet_Fixed<0x7947> *native, NetPacket_Fixed<0x7947> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1558,7 +1656,7 @@ bool network_to_native(SPacket_0x7947_Fixed *native, NetSPacket_0x7947_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x7948_Fixed *network, RPacket_0x7948_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7948> *network, Packet_Fixed<0x7948> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1567,7 +1665,7 @@ bool native_to_network(NetRPacket_0x7948_Fixed *network, RPacket_0x7948_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x7948_Fixed *native, NetRPacket_0x7948_Fixed network)
+bool network_to_native(Packet_Fixed<0x7948> *native, NetPacket_Fixed<0x7948> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1576,7 +1674,7 @@ bool network_to_native(RPacket_0x7948_Fixed *native, NetRPacket_0x7948_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x7949_Fixed *network, SPacket_0x7949_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7949> *network, Packet_Fixed<0x7949> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1586,7 +1684,7 @@ bool native_to_network(NetSPacket_0x7949_Fixed *network, SPacket_0x7949_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x7949_Fixed *native, NetSPacket_0x7949_Fixed network)
+bool network_to_native(Packet_Fixed<0x7949> *native, NetPacket_Fixed<0x7949> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1596,7 +1694,7 @@ bool network_to_native(SPacket_0x7949_Fixed *native, NetSPacket_0x7949_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x794a_Fixed *network, RPacket_0x794a_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x794a> *network, Packet_Fixed<0x794a> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1605,7 +1703,7 @@ bool native_to_network(NetRPacket_0x794a_Fixed *network, RPacket_0x794a_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x794a_Fixed *native, NetRPacket_0x794a_Fixed network)
+bool network_to_native(Packet_Fixed<0x794a> *native, NetPacket_Fixed<0x794a> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1614,7 +1712,7 @@ bool network_to_native(RPacket_0x794a_Fixed *native, NetRPacket_0x794a_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x794b_Fixed *network, SPacket_0x794b_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x794b> *network, Packet_Fixed<0x794b> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1624,7 +1722,7 @@ bool native_to_network(NetSPacket_0x794b_Fixed *network, SPacket_0x794b_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x794b_Fixed *native, NetSPacket_0x794b_Fixed network)
+bool network_to_native(Packet_Fixed<0x794b> *native, NetPacket_Fixed<0x794b> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1634,7 +1732,7 @@ bool network_to_native(SPacket_0x794b_Fixed *native, NetSPacket_0x794b_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x794c_Fixed *network, RPacket_0x794c_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x794c> *network, Packet_Fixed<0x794c> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1643,7 +1741,7 @@ bool native_to_network(NetRPacket_0x794c_Fixed *network, RPacket_0x794c_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x794c_Fixed *native, NetRPacket_0x794c_Fixed network)
+bool network_to_native(Packet_Fixed<0x794c> *native, NetPacket_Fixed<0x794c> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1652,7 +1750,7 @@ bool network_to_native(RPacket_0x794c_Fixed *native, NetRPacket_0x794c_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x794d_Fixed *network, SPacket_0x794d_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x794d> *network, Packet_Fixed<0x794d> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1662,7 +1760,7 @@ bool native_to_network(NetSPacket_0x794d_Fixed *network, SPacket_0x794d_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x794d_Fixed *native, NetSPacket_0x794d_Fixed network)
+bool network_to_native(Packet_Fixed<0x794d> *native, NetPacket_Fixed<0x794d> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1672,7 +1770,7 @@ bool network_to_native(SPacket_0x794d_Fixed *native, NetSPacket_0x794d_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x794e_Head *network, RPacket_0x794e_Head native)
+bool native_to_network(NetPacket_Head<0x794e> *network, Packet_Head<0x794e> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1681,7 +1779,7 @@ bool native_to_network(NetRPacket_0x794e_Head *network, RPacket_0x794e_Head nati
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x794e_Head *native, NetRPacket_0x794e_Head network)
+bool network_to_native(Packet_Head<0x794e> *native, NetPacket_Head<0x794e> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1690,21 +1788,21 @@ bool network_to_native(RPacket_0x794e_Head *native, NetRPacket_0x794e_Head netwo
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x794e_Repeat *network, RPacket_0x794e_Repeat native)
+bool native_to_network(NetPacket_Repeat<0x794e> *network, Packet_Repeat<0x794e> native)
{
bool rv = true;
rv &= native_to_network(&network->c, native.c);
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x794e_Repeat *native, NetRPacket_0x794e_Repeat network)
+bool network_to_native(Packet_Repeat<0x794e> *native, NetPacket_Repeat<0x794e> network)
{
bool rv = true;
rv &= network_to_native(&native->c, network.c);
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x794f_Fixed *network, SPacket_0x794f_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x794f> *network, Packet_Fixed<0x794f> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1712,7 +1810,7 @@ bool native_to_network(NetSPacket_0x794f_Fixed *network, SPacket_0x794f_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x794f_Fixed *native, NetSPacket_0x794f_Fixed network)
+bool network_to_native(Packet_Fixed<0x794f> *native, NetPacket_Fixed<0x794f> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1720,7 +1818,7 @@ bool network_to_native(SPacket_0x794f_Fixed *native, NetSPacket_0x794f_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x7950_Fixed *network, RPacket_0x7950_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7950> *network, Packet_Fixed<0x7950> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1729,7 +1827,7 @@ bool native_to_network(NetRPacket_0x7950_Fixed *network, RPacket_0x7950_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x7950_Fixed *native, NetRPacket_0x7950_Fixed network)
+bool network_to_native(Packet_Fixed<0x7950> *native, NetPacket_Fixed<0x7950> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1738,7 +1836,7 @@ bool network_to_native(RPacket_0x7950_Fixed *native, NetRPacket_0x7950_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x7951_Fixed *network, SPacket_0x7951_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7951> *network, Packet_Fixed<0x7951> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1748,7 +1846,7 @@ bool native_to_network(NetSPacket_0x7951_Fixed *network, SPacket_0x7951_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x7951_Fixed *native, NetSPacket_0x7951_Fixed network)
+bool network_to_native(Packet_Fixed<0x7951> *native, NetPacket_Fixed<0x7951> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1758,7 +1856,7 @@ bool network_to_native(SPacket_0x7951_Fixed *native, NetSPacket_0x7951_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x7952_Fixed *network, RPacket_0x7952_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7952> *network, Packet_Fixed<0x7952> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1766,7 +1864,7 @@ bool native_to_network(NetRPacket_0x7952_Fixed *network, RPacket_0x7952_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x7952_Fixed *native, NetRPacket_0x7952_Fixed network)
+bool network_to_native(Packet_Fixed<0x7952> *native, NetPacket_Fixed<0x7952> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1774,7 +1872,7 @@ bool network_to_native(RPacket_0x7952_Fixed *native, NetRPacket_0x7952_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x7953_Head *network, SPacket_0x7953_Head native)
+bool native_to_network(NetPacket_Head<0x7953> *network, Packet_Head<0x7953> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1794,7 +1892,7 @@ bool native_to_network(NetSPacket_0x7953_Head *network, SPacket_0x7953_Head nati
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x7953_Head *native, NetSPacket_0x7953_Head network)
+bool network_to_native(Packet_Head<0x7953> *native, NetPacket_Head<0x7953> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1814,21 +1912,21 @@ bool network_to_native(SPacket_0x7953_Head *native, NetSPacket_0x7953_Head netwo
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x7953_Repeat *network, SPacket_0x7953_Repeat native)
+bool native_to_network(NetPacket_Repeat<0x7953> *network, Packet_Repeat<0x7953> native)
{
bool rv = true;
rv &= native_to_network(&network->c, native.c);
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x7953_Repeat *native, NetSPacket_0x7953_Repeat network)
+bool network_to_native(Packet_Repeat<0x7953> *native, NetPacket_Repeat<0x7953> network)
{
bool rv = true;
rv &= network_to_native(&native->c, network.c);
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x7954_Fixed *network, RPacket_0x7954_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7954> *network, Packet_Fixed<0x7954> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -1836,7 +1934,7 @@ bool native_to_network(NetRPacket_0x7954_Fixed *network, RPacket_0x7954_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x7954_Fixed *native, NetRPacket_0x7954_Fixed network)
+bool network_to_native(Packet_Fixed<0x7954> *native, NetPacket_Fixed<0x7954> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -1844,14 +1942,14 @@ bool network_to_native(RPacket_0x7954_Fixed *native, NetRPacket_0x7954_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x7955_Fixed *network, RPacket_0x7955_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x7955> *network, Packet_Fixed<0x7955> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x7955_Fixed *native, NetRPacket_0x7955_Fixed network)
+bool network_to_native(Packet_Fixed<0x7955> *native, NetPacket_Fixed<0x7955> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
diff --git a/src/proto2/login-char.hpp b/src/proto2/login-char.hpp
index 9c0ba74..8f3a99e 100644
--- a/src/proto2/login-char.hpp
+++ b/src/proto2/login-char.hpp
@@ -27,18 +27,20 @@
// This is an internal protocol, and can be changed without notice
-struct RPacket_0x2709_Fixed
+template<>
+struct Packet_Fixed<0x2709>
{
- using NetType = NetRPacket_0x2709_Fixed;
static const uint16_t PACKET_ID = 0x2709;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
};
-struct RPacket_0x2712_Fixed
+template<>
+struct Packet_Fixed<0x2712>
{
- using NetType = NetRPacket_0x2712_Fixed;
static const uint16_t PACKET_ID = 0x2712;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
uint32_t login_id1 = {};
@@ -46,225 +48,251 @@ struct RPacket_0x2712_Fixed
SEX sex = {};
IP4Address ip = {};
};
-struct SPacket_0x2713_Fixed
+template<>
+struct Packet_Fixed<0x2713>
{
- using NetType = NetSPacket_0x2713_Fixed;
static const uint16_t PACKET_ID = 0x2713;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
uint8_t invalid = {};
AccountEmail email = {};
TimeT connect_until = {};
};
-struct RPacket_0x2714_Fixed
+template<>
+struct Packet_Fixed<0x2714>
{
- using NetType = NetRPacket_0x2714_Fixed;
static const uint16_t PACKET_ID = 0x2714;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
uint32_t users = {};
};
-struct RPacket_0x2715_Fixed
+template<>
+struct Packet_Fixed<0x2715>
{
- using NetType = NetRPacket_0x2715_Fixed;
static const uint16_t PACKET_ID = 0x2715;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
AccountEmail email = {};
};
-struct RPacket_0x2716_Fixed
+template<>
+struct Packet_Fixed<0x2716>
{
- using NetType = NetRPacket_0x2716_Fixed;
static const uint16_t PACKET_ID = 0x2716;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
};
-struct SPacket_0x2717_Fixed
+template<>
+struct Packet_Fixed<0x2717>
{
- using NetType = NetSPacket_0x2717_Fixed;
static const uint16_t PACKET_ID = 0x2717;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
AccountEmail email = {};
TimeT connect_until = {};
};
-struct RPacket_0x2720_Head
+template<>
+struct Packet_Head<0x2720>
{
- using NetType = NetRPacket_0x2720_Head;
static const uint16_t PACKET_ID = 0x2720;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
+ // TODO remove this
uint16_t magic_packet_length = {};
AccountId account_id = {};
};
-struct RPacket_0x2720_Repeat
+template<>
+struct Packet_Repeat<0x2720>
{
- using NetType = NetRPacket_0x2720_Repeat;
static const uint16_t PACKET_ID = 0x2720;
uint8_t c = {};
};
-struct SPacket_0x2721_Fixed
+template<>
+struct Packet_Fixed<0x2721>
{
- using NetType = NetSPacket_0x2721_Fixed;
static const uint16_t PACKET_ID = 0x2721;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
GmLevel gm_level = {};
};
-struct RPacket_0x2722_Fixed
+template<>
+struct Packet_Fixed<0x2722>
{
- using NetType = NetRPacket_0x2722_Fixed;
static const uint16_t PACKET_ID = 0x2722;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
AccountEmail old_email = {};
AccountEmail new_email = {};
};
-struct SPacket_0x2723_Fixed
+template<>
+struct Packet_Fixed<0x2723>
{
- using NetType = NetSPacket_0x2723_Fixed;
static const uint16_t PACKET_ID = 0x2723;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
SEX sex = {};
};
-struct RPacket_0x2724_Fixed
+template<>
+struct Packet_Fixed<0x2724>
{
- using NetType = NetRPacket_0x2724_Fixed;
static const uint16_t PACKET_ID = 0x2724;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
uint32_t status = {};
};
-struct RPacket_0x2725_Fixed
+template<>
+struct Packet_Fixed<0x2725>
{
- using NetType = NetRPacket_0x2725_Fixed;
static const uint16_t PACKET_ID = 0x2725;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
HumanTimeDiff deltas = {};
};
-struct RPacket_0x2727_Fixed
+template<>
+struct Packet_Fixed<0x2727>
{
- using NetType = NetRPacket_0x2727_Fixed;
static const uint16_t PACKET_ID = 0x2727;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
};
-struct RPacket_0x2728_Head
+template<>
+struct Packet_Head<0x2728>
{
- using NetType = NetRPacket_0x2728_Head;
static const uint16_t PACKET_ID = 0x2728;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
+ // TODO remove this
uint16_t magic_packet_length = {};
AccountId account_id = {};
};
-struct RPacket_0x2728_Repeat
+template<>
+struct Packet_Repeat<0x2728>
{
- using NetType = NetRPacket_0x2728_Repeat;
static const uint16_t PACKET_ID = 0x2728;
VarName name = {};
uint32_t value = {};
};
-struct SPacket_0x2729_Head
+template<>
+struct Packet_Head<0x2729>
{
- using NetType = NetSPacket_0x2729_Head;
static const uint16_t PACKET_ID = 0x2729;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
+ // TODO remove this
uint16_t magic_packet_length = {};
AccountId account_id = {};
};
-struct SPacket_0x2729_Repeat
+template<>
+struct Packet_Repeat<0x2729>
{
- using NetType = NetSPacket_0x2729_Repeat;
static const uint16_t PACKET_ID = 0x2729;
VarName name = {};
uint32_t value = {};
};
-struct RPacket_0x272a_Fixed
+template<>
+struct Packet_Fixed<0x272a>
{
- using NetType = NetRPacket_0x272a_Fixed;
static const uint16_t PACKET_ID = 0x272a;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
};
-struct SPacket_0x2730_Fixed
+template<>
+struct Packet_Fixed<0x2730>
{
- using NetType = NetSPacket_0x2730_Fixed;
static const uint16_t PACKET_ID = 0x2730;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
};
-struct SPacket_0x2731_Fixed
+template<>
+struct Packet_Fixed<0x2731>
{
- using NetType = NetSPacket_0x2731_Fixed;
static const uint16_t PACKET_ID = 0x2731;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
uint8_t ban_not_status = {};
TimeT status_or_ban_until = {};
};
-struct SPacket_0x2732_Head
+template<>
+struct Packet_Head<0x2732>
{
- using NetType = NetSPacket_0x2732_Head;
static const uint16_t PACKET_ID = 0x2732;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
+ // TODO remove this
uint16_t magic_packet_length = {};
};
-struct SPacket_0x2732_Repeat
+template<>
+struct Packet_Repeat<0x2732>
{
- using NetType = NetSPacket_0x2732_Repeat;
static const uint16_t PACKET_ID = 0x2732;
AccountId account_id = {};
GmLevel gm_level = {};
};
-struct RPacket_0x2740_Fixed
+template<>
+struct Packet_Fixed<0x2740>
{
- using NetType = NetRPacket_0x2740_Fixed;
static const uint16_t PACKET_ID = 0x2740;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
AccountPass old_pass = {};
AccountPass new_pass = {};
};
-struct SPacket_0x2741_Fixed
+template<>
+struct Packet_Fixed<0x2741>
{
- using NetType = NetSPacket_0x2741_Fixed;
static const uint16_t PACKET_ID = 0x2741;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
AccountId account_id = {};
uint8_t status = {};
};
-struct NetRPacket_0x2709_Fixed
+template<>
+struct NetPacket_Fixed<0x2709>
{
Little16 magic_packet_id;
};
-static_assert(offsetof(NetRPacket_0x2709_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x2709_Fixed, magic_packet_id) == 0");
-static_assert(sizeof(NetRPacket_0x2709_Fixed) == 2, "sizeof(NetRPacket_0x2709_Fixed) == 2");
-struct NetRPacket_0x2712_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x2709>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x2709>, magic_packet_id) == 0");
+static_assert(sizeof(NetPacket_Fixed<0x2709>) == 2, "sizeof(NetPacket_Fixed<0x2709>) == 2");
+template<>
+struct NetPacket_Fixed<0x2712>
{
Little16 magic_packet_id;
Little32 account_id;
@@ -273,14 +301,15 @@ struct NetRPacket_0x2712_Fixed
Byte sex;
IP4Address ip;
};
-static_assert(offsetof(NetRPacket_0x2712_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x2712_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x2712_Fixed, account_id) == 2, "offsetof(NetRPacket_0x2712_Fixed, account_id) == 2");
-static_assert(offsetof(NetRPacket_0x2712_Fixed, login_id1) == 6, "offsetof(NetRPacket_0x2712_Fixed, login_id1) == 6");
-static_assert(offsetof(NetRPacket_0x2712_Fixed, login_id2) == 10, "offsetof(NetRPacket_0x2712_Fixed, login_id2) == 10");
-static_assert(offsetof(NetRPacket_0x2712_Fixed, sex) == 14, "offsetof(NetRPacket_0x2712_Fixed, sex) == 14");
-static_assert(offsetof(NetRPacket_0x2712_Fixed, ip) == 15, "offsetof(NetRPacket_0x2712_Fixed, ip) == 15");
-static_assert(sizeof(NetRPacket_0x2712_Fixed) == 19, "sizeof(NetRPacket_0x2712_Fixed) == 19");
-struct NetSPacket_0x2713_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x2712>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x2712>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x2712>, account_id) == 2, "offsetof(NetPacket_Fixed<0x2712>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x2712>, login_id1) == 6, "offsetof(NetPacket_Fixed<0x2712>, login_id1) == 6");
+static_assert(offsetof(NetPacket_Fixed<0x2712>, login_id2) == 10, "offsetof(NetPacket_Fixed<0x2712>, login_id2) == 10");
+static_assert(offsetof(NetPacket_Fixed<0x2712>, sex) == 14, "offsetof(NetPacket_Fixed<0x2712>, sex) == 14");
+static_assert(offsetof(NetPacket_Fixed<0x2712>, ip) == 15, "offsetof(NetPacket_Fixed<0x2712>, ip) == 15");
+static_assert(sizeof(NetPacket_Fixed<0x2712>) == 19, "sizeof(NetPacket_Fixed<0x2712>) == 19");
+template<>
+struct NetPacket_Fixed<0x2713>
{
Little16 magic_packet_id;
Little32 account_id;
@@ -288,245 +317,268 @@ struct NetSPacket_0x2713_Fixed
NetString<sizeof(AccountEmail)> email;
Little32 connect_until;
};
-static_assert(offsetof(NetSPacket_0x2713_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x2713_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x2713_Fixed, account_id) == 2, "offsetof(NetSPacket_0x2713_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x2713_Fixed, invalid) == 6, "offsetof(NetSPacket_0x2713_Fixed, invalid) == 6");
-static_assert(offsetof(NetSPacket_0x2713_Fixed, email) == 7, "offsetof(NetSPacket_0x2713_Fixed, email) == 7");
-static_assert(offsetof(NetSPacket_0x2713_Fixed, connect_until) == 47, "offsetof(NetSPacket_0x2713_Fixed, connect_until) == 47");
-static_assert(sizeof(NetSPacket_0x2713_Fixed) == 51, "sizeof(NetSPacket_0x2713_Fixed) == 51");
-struct NetRPacket_0x2714_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x2713>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x2713>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x2713>, account_id) == 2, "offsetof(NetPacket_Fixed<0x2713>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x2713>, invalid) == 6, "offsetof(NetPacket_Fixed<0x2713>, invalid) == 6");
+static_assert(offsetof(NetPacket_Fixed<0x2713>, email) == 7, "offsetof(NetPacket_Fixed<0x2713>, email) == 7");
+static_assert(offsetof(NetPacket_Fixed<0x2713>, connect_until) == 47, "offsetof(NetPacket_Fixed<0x2713>, connect_until) == 47");
+static_assert(sizeof(NetPacket_Fixed<0x2713>) == 51, "sizeof(NetPacket_Fixed<0x2713>) == 51");
+template<>
+struct NetPacket_Fixed<0x2714>
{
Little16 magic_packet_id;
Little32 users;
};
-static_assert(offsetof(NetRPacket_0x2714_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x2714_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x2714_Fixed, users) == 2, "offsetof(NetRPacket_0x2714_Fixed, users) == 2");
-static_assert(sizeof(NetRPacket_0x2714_Fixed) == 6, "sizeof(NetRPacket_0x2714_Fixed) == 6");
-struct NetRPacket_0x2715_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x2714>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x2714>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x2714>, users) == 2, "offsetof(NetPacket_Fixed<0x2714>, users) == 2");
+static_assert(sizeof(NetPacket_Fixed<0x2714>) == 6, "sizeof(NetPacket_Fixed<0x2714>) == 6");
+template<>
+struct NetPacket_Fixed<0x2715>
{
Little16 magic_packet_id;
Little32 account_id;
NetString<sizeof(AccountEmail)> email;
};
-static_assert(offsetof(NetRPacket_0x2715_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x2715_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x2715_Fixed, account_id) == 2, "offsetof(NetRPacket_0x2715_Fixed, account_id) == 2");
-static_assert(offsetof(NetRPacket_0x2715_Fixed, email) == 6, "offsetof(NetRPacket_0x2715_Fixed, email) == 6");
-static_assert(sizeof(NetRPacket_0x2715_Fixed) == 46, "sizeof(NetRPacket_0x2715_Fixed) == 46");
-struct NetRPacket_0x2716_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x2715>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x2715>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x2715>, account_id) == 2, "offsetof(NetPacket_Fixed<0x2715>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x2715>, email) == 6, "offsetof(NetPacket_Fixed<0x2715>, email) == 6");
+static_assert(sizeof(NetPacket_Fixed<0x2715>) == 46, "sizeof(NetPacket_Fixed<0x2715>) == 46");
+template<>
+struct NetPacket_Fixed<0x2716>
{
Little16 magic_packet_id;
Little32 account_id;
};
-static_assert(offsetof(NetRPacket_0x2716_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x2716_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x2716_Fixed, account_id) == 2, "offsetof(NetRPacket_0x2716_Fixed, account_id) == 2");
-static_assert(sizeof(NetRPacket_0x2716_Fixed) == 6, "sizeof(NetRPacket_0x2716_Fixed) == 6");
-struct NetSPacket_0x2717_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x2716>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x2716>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x2716>, account_id) == 2, "offsetof(NetPacket_Fixed<0x2716>, account_id) == 2");
+static_assert(sizeof(NetPacket_Fixed<0x2716>) == 6, "sizeof(NetPacket_Fixed<0x2716>) == 6");
+template<>
+struct NetPacket_Fixed<0x2717>
{
Little16 magic_packet_id;
Little32 account_id;
NetString<sizeof(AccountEmail)> email;
Little32 connect_until;
};
-static_assert(offsetof(NetSPacket_0x2717_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x2717_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x2717_Fixed, account_id) == 2, "offsetof(NetSPacket_0x2717_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x2717_Fixed, email) == 6, "offsetof(NetSPacket_0x2717_Fixed, email) == 6");
-static_assert(offsetof(NetSPacket_0x2717_Fixed, connect_until) == 46, "offsetof(NetSPacket_0x2717_Fixed, connect_until) == 46");
-static_assert(sizeof(NetSPacket_0x2717_Fixed) == 50, "sizeof(NetSPacket_0x2717_Fixed) == 50");
-struct NetRPacket_0x2720_Head
+static_assert(offsetof(NetPacket_Fixed<0x2717>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x2717>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x2717>, account_id) == 2, "offsetof(NetPacket_Fixed<0x2717>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x2717>, email) == 6, "offsetof(NetPacket_Fixed<0x2717>, email) == 6");
+static_assert(offsetof(NetPacket_Fixed<0x2717>, connect_until) == 46, "offsetof(NetPacket_Fixed<0x2717>, connect_until) == 46");
+static_assert(sizeof(NetPacket_Fixed<0x2717>) == 50, "sizeof(NetPacket_Fixed<0x2717>) == 50");
+template<>
+struct NetPacket_Head<0x2720>
{
Little16 magic_packet_id;
Little16 magic_packet_length;
Little32 account_id;
};
-static_assert(offsetof(NetRPacket_0x2720_Head, magic_packet_id) == 0, "offsetof(NetRPacket_0x2720_Head, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x2720_Head, magic_packet_length) == 2, "offsetof(NetRPacket_0x2720_Head, magic_packet_length) == 2");
-static_assert(offsetof(NetRPacket_0x2720_Head, account_id) == 4, "offsetof(NetRPacket_0x2720_Head, account_id) == 4");
-static_assert(sizeof(NetRPacket_0x2720_Head) == 8, "sizeof(NetRPacket_0x2720_Head) == 8");
-struct NetRPacket_0x2720_Repeat
+static_assert(offsetof(NetPacket_Head<0x2720>, magic_packet_id) == 0, "offsetof(NetPacket_Head<0x2720>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Head<0x2720>, magic_packet_length) == 2, "offsetof(NetPacket_Head<0x2720>, magic_packet_length) == 2");
+static_assert(offsetof(NetPacket_Head<0x2720>, account_id) == 4, "offsetof(NetPacket_Head<0x2720>, account_id) == 4");
+static_assert(sizeof(NetPacket_Head<0x2720>) == 8, "sizeof(NetPacket_Head<0x2720>) == 8");
+template<>
+struct NetPacket_Repeat<0x2720>
{
Byte c;
};
-static_assert(offsetof(NetRPacket_0x2720_Repeat, c) == 0, "offsetof(NetRPacket_0x2720_Repeat, c) == 0");
-static_assert(sizeof(NetRPacket_0x2720_Repeat) == 1, "sizeof(NetRPacket_0x2720_Repeat) == 1");
-struct NetSPacket_0x2721_Fixed
+static_assert(offsetof(NetPacket_Repeat<0x2720>, c) == 0, "offsetof(NetPacket_Repeat<0x2720>, c) == 0");
+static_assert(sizeof(NetPacket_Repeat<0x2720>) == 1, "sizeof(NetPacket_Repeat<0x2720>) == 1");
+template<>
+struct NetPacket_Fixed<0x2721>
{
Little16 magic_packet_id;
Little32 account_id;
Little32 gm_level;
};
-static_assert(offsetof(NetSPacket_0x2721_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x2721_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x2721_Fixed, account_id) == 2, "offsetof(NetSPacket_0x2721_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x2721_Fixed, gm_level) == 6, "offsetof(NetSPacket_0x2721_Fixed, gm_level) == 6");
-static_assert(sizeof(NetSPacket_0x2721_Fixed) == 10, "sizeof(NetSPacket_0x2721_Fixed) == 10");
-struct NetRPacket_0x2722_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x2721>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x2721>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x2721>, account_id) == 2, "offsetof(NetPacket_Fixed<0x2721>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x2721>, gm_level) == 6, "offsetof(NetPacket_Fixed<0x2721>, gm_level) == 6");
+static_assert(sizeof(NetPacket_Fixed<0x2721>) == 10, "sizeof(NetPacket_Fixed<0x2721>) == 10");
+template<>
+struct NetPacket_Fixed<0x2722>
{
Little16 magic_packet_id;
Little32 account_id;
NetString<sizeof(AccountEmail)> old_email;
NetString<sizeof(AccountEmail)> new_email;
};
-static_assert(offsetof(NetRPacket_0x2722_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x2722_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x2722_Fixed, account_id) == 2, "offsetof(NetRPacket_0x2722_Fixed, account_id) == 2");
-static_assert(offsetof(NetRPacket_0x2722_Fixed, old_email) == 6, "offsetof(NetRPacket_0x2722_Fixed, old_email) == 6");
-static_assert(offsetof(NetRPacket_0x2722_Fixed, new_email) == 46, "offsetof(NetRPacket_0x2722_Fixed, new_email) == 46");
-static_assert(sizeof(NetRPacket_0x2722_Fixed) == 86, "sizeof(NetRPacket_0x2722_Fixed) == 86");
-struct NetSPacket_0x2723_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x2722>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x2722>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x2722>, account_id) == 2, "offsetof(NetPacket_Fixed<0x2722>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x2722>, old_email) == 6, "offsetof(NetPacket_Fixed<0x2722>, old_email) == 6");
+static_assert(offsetof(NetPacket_Fixed<0x2722>, new_email) == 46, "offsetof(NetPacket_Fixed<0x2722>, new_email) == 46");
+static_assert(sizeof(NetPacket_Fixed<0x2722>) == 86, "sizeof(NetPacket_Fixed<0x2722>) == 86");
+template<>
+struct NetPacket_Fixed<0x2723>
{
Little16 magic_packet_id;
Little32 account_id;
Byte sex;
};
-static_assert(offsetof(NetSPacket_0x2723_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x2723_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x2723_Fixed, account_id) == 2, "offsetof(NetSPacket_0x2723_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x2723_Fixed, sex) == 6, "offsetof(NetSPacket_0x2723_Fixed, sex) == 6");
-static_assert(sizeof(NetSPacket_0x2723_Fixed) == 7, "sizeof(NetSPacket_0x2723_Fixed) == 7");
-struct NetRPacket_0x2724_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x2723>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x2723>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x2723>, account_id) == 2, "offsetof(NetPacket_Fixed<0x2723>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x2723>, sex) == 6, "offsetof(NetPacket_Fixed<0x2723>, sex) == 6");
+static_assert(sizeof(NetPacket_Fixed<0x2723>) == 7, "sizeof(NetPacket_Fixed<0x2723>) == 7");
+template<>
+struct NetPacket_Fixed<0x2724>
{
Little16 magic_packet_id;
Little32 account_id;
Little32 status;
};
-static_assert(offsetof(NetRPacket_0x2724_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x2724_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x2724_Fixed, account_id) == 2, "offsetof(NetRPacket_0x2724_Fixed, account_id) == 2");
-static_assert(offsetof(NetRPacket_0x2724_Fixed, status) == 6, "offsetof(NetRPacket_0x2724_Fixed, status) == 6");
-static_assert(sizeof(NetRPacket_0x2724_Fixed) == 10, "sizeof(NetRPacket_0x2724_Fixed) == 10");
-struct NetRPacket_0x2725_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x2724>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x2724>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x2724>, account_id) == 2, "offsetof(NetPacket_Fixed<0x2724>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x2724>, status) == 6, "offsetof(NetPacket_Fixed<0x2724>, status) == 6");
+static_assert(sizeof(NetPacket_Fixed<0x2724>) == 10, "sizeof(NetPacket_Fixed<0x2724>) == 10");
+template<>
+struct NetPacket_Fixed<0x2725>
{
Little16 magic_packet_id;
Little32 account_id;
NetHumanTimeDiff deltas;
};
-static_assert(offsetof(NetRPacket_0x2725_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x2725_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x2725_Fixed, account_id) == 2, "offsetof(NetRPacket_0x2725_Fixed, account_id) == 2");
-static_assert(offsetof(NetRPacket_0x2725_Fixed, deltas) == 6, "offsetof(NetRPacket_0x2725_Fixed, deltas) == 6");
-static_assert(sizeof(NetRPacket_0x2725_Fixed) == 18, "sizeof(NetRPacket_0x2725_Fixed) == 18");
-struct NetRPacket_0x2727_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x2725>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x2725>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x2725>, account_id) == 2, "offsetof(NetPacket_Fixed<0x2725>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x2725>, deltas) == 6, "offsetof(NetPacket_Fixed<0x2725>, deltas) == 6");
+static_assert(sizeof(NetPacket_Fixed<0x2725>) == 18, "sizeof(NetPacket_Fixed<0x2725>) == 18");
+template<>
+struct NetPacket_Fixed<0x2727>
{
Little16 magic_packet_id;
Little32 account_id;
};
-static_assert(offsetof(NetRPacket_0x2727_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x2727_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x2727_Fixed, account_id) == 2, "offsetof(NetRPacket_0x2727_Fixed, account_id) == 2");
-static_assert(sizeof(NetRPacket_0x2727_Fixed) == 6, "sizeof(NetRPacket_0x2727_Fixed) == 6");
-struct NetRPacket_0x2728_Head
+static_assert(offsetof(NetPacket_Fixed<0x2727>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x2727>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x2727>, account_id) == 2, "offsetof(NetPacket_Fixed<0x2727>, account_id) == 2");
+static_assert(sizeof(NetPacket_Fixed<0x2727>) == 6, "sizeof(NetPacket_Fixed<0x2727>) == 6");
+template<>
+struct NetPacket_Head<0x2728>
{
Little16 magic_packet_id;
Little16 magic_packet_length;
Little32 account_id;
};
-static_assert(offsetof(NetRPacket_0x2728_Head, magic_packet_id) == 0, "offsetof(NetRPacket_0x2728_Head, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x2728_Head, magic_packet_length) == 2, "offsetof(NetRPacket_0x2728_Head, magic_packet_length) == 2");
-static_assert(offsetof(NetRPacket_0x2728_Head, account_id) == 4, "offsetof(NetRPacket_0x2728_Head, account_id) == 4");
-static_assert(sizeof(NetRPacket_0x2728_Head) == 8, "sizeof(NetRPacket_0x2728_Head) == 8");
-struct NetRPacket_0x2728_Repeat
+static_assert(offsetof(NetPacket_Head<0x2728>, magic_packet_id) == 0, "offsetof(NetPacket_Head<0x2728>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Head<0x2728>, magic_packet_length) == 2, "offsetof(NetPacket_Head<0x2728>, magic_packet_length) == 2");
+static_assert(offsetof(NetPacket_Head<0x2728>, account_id) == 4, "offsetof(NetPacket_Head<0x2728>, account_id) == 4");
+static_assert(sizeof(NetPacket_Head<0x2728>) == 8, "sizeof(NetPacket_Head<0x2728>) == 8");
+template<>
+struct NetPacket_Repeat<0x2728>
{
NetString<sizeof(VarName)> name;
Little32 value;
};
-static_assert(offsetof(NetRPacket_0x2728_Repeat, name) == 0, "offsetof(NetRPacket_0x2728_Repeat, name) == 0");
-static_assert(offsetof(NetRPacket_0x2728_Repeat, value) == 32, "offsetof(NetRPacket_0x2728_Repeat, value) == 32");
-static_assert(sizeof(NetRPacket_0x2728_Repeat) == 36, "sizeof(NetRPacket_0x2728_Repeat) == 36");
-struct NetSPacket_0x2729_Head
+static_assert(offsetof(NetPacket_Repeat<0x2728>, name) == 0, "offsetof(NetPacket_Repeat<0x2728>, name) == 0");
+static_assert(offsetof(NetPacket_Repeat<0x2728>, value) == 32, "offsetof(NetPacket_Repeat<0x2728>, value) == 32");
+static_assert(sizeof(NetPacket_Repeat<0x2728>) == 36, "sizeof(NetPacket_Repeat<0x2728>) == 36");
+template<>
+struct NetPacket_Head<0x2729>
{
Little16 magic_packet_id;
Little16 magic_packet_length;
Little32 account_id;
};
-static_assert(offsetof(NetSPacket_0x2729_Head, magic_packet_id) == 0, "offsetof(NetSPacket_0x2729_Head, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x2729_Head, magic_packet_length) == 2, "offsetof(NetSPacket_0x2729_Head, magic_packet_length) == 2");
-static_assert(offsetof(NetSPacket_0x2729_Head, account_id) == 4, "offsetof(NetSPacket_0x2729_Head, account_id) == 4");
-static_assert(sizeof(NetSPacket_0x2729_Head) == 8, "sizeof(NetSPacket_0x2729_Head) == 8");
-struct NetSPacket_0x2729_Repeat
+static_assert(offsetof(NetPacket_Head<0x2729>, magic_packet_id) == 0, "offsetof(NetPacket_Head<0x2729>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Head<0x2729>, magic_packet_length) == 2, "offsetof(NetPacket_Head<0x2729>, magic_packet_length) == 2");
+static_assert(offsetof(NetPacket_Head<0x2729>, account_id) == 4, "offsetof(NetPacket_Head<0x2729>, account_id) == 4");
+static_assert(sizeof(NetPacket_Head<0x2729>) == 8, "sizeof(NetPacket_Head<0x2729>) == 8");
+template<>
+struct NetPacket_Repeat<0x2729>
{
NetString<sizeof(VarName)> name;
Little32 value;
};
-static_assert(offsetof(NetSPacket_0x2729_Repeat, name) == 0, "offsetof(NetSPacket_0x2729_Repeat, name) == 0");
-static_assert(offsetof(NetSPacket_0x2729_Repeat, value) == 32, "offsetof(NetSPacket_0x2729_Repeat, value) == 32");
-static_assert(sizeof(NetSPacket_0x2729_Repeat) == 36, "sizeof(NetSPacket_0x2729_Repeat) == 36");
-struct NetRPacket_0x272a_Fixed
+static_assert(offsetof(NetPacket_Repeat<0x2729>, name) == 0, "offsetof(NetPacket_Repeat<0x2729>, name) == 0");
+static_assert(offsetof(NetPacket_Repeat<0x2729>, value) == 32, "offsetof(NetPacket_Repeat<0x2729>, value) == 32");
+static_assert(sizeof(NetPacket_Repeat<0x2729>) == 36, "sizeof(NetPacket_Repeat<0x2729>) == 36");
+template<>
+struct NetPacket_Fixed<0x272a>
{
Little16 magic_packet_id;
Little32 account_id;
};
-static_assert(offsetof(NetRPacket_0x272a_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x272a_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x272a_Fixed, account_id) == 2, "offsetof(NetRPacket_0x272a_Fixed, account_id) == 2");
-static_assert(sizeof(NetRPacket_0x272a_Fixed) == 6, "sizeof(NetRPacket_0x272a_Fixed) == 6");
-struct NetSPacket_0x2730_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x272a>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x272a>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x272a>, account_id) == 2, "offsetof(NetPacket_Fixed<0x272a>, account_id) == 2");
+static_assert(sizeof(NetPacket_Fixed<0x272a>) == 6, "sizeof(NetPacket_Fixed<0x272a>) == 6");
+template<>
+struct NetPacket_Fixed<0x2730>
{
Little16 magic_packet_id;
Little32 account_id;
};
-static_assert(offsetof(NetSPacket_0x2730_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x2730_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x2730_Fixed, account_id) == 2, "offsetof(NetSPacket_0x2730_Fixed, account_id) == 2");
-static_assert(sizeof(NetSPacket_0x2730_Fixed) == 6, "sizeof(NetSPacket_0x2730_Fixed) == 6");
-struct NetSPacket_0x2731_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x2730>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x2730>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x2730>, account_id) == 2, "offsetof(NetPacket_Fixed<0x2730>, account_id) == 2");
+static_assert(sizeof(NetPacket_Fixed<0x2730>) == 6, "sizeof(NetPacket_Fixed<0x2730>) == 6");
+template<>
+struct NetPacket_Fixed<0x2731>
{
Little16 magic_packet_id;
Little32 account_id;
Byte ban_not_status;
Little32 status_or_ban_until;
};
-static_assert(offsetof(NetSPacket_0x2731_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x2731_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x2731_Fixed, account_id) == 2, "offsetof(NetSPacket_0x2731_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x2731_Fixed, ban_not_status) == 6, "offsetof(NetSPacket_0x2731_Fixed, ban_not_status) == 6");
-static_assert(offsetof(NetSPacket_0x2731_Fixed, status_or_ban_until) == 7, "offsetof(NetSPacket_0x2731_Fixed, status_or_ban_until) == 7");
-static_assert(sizeof(NetSPacket_0x2731_Fixed) == 11, "sizeof(NetSPacket_0x2731_Fixed) == 11");
-struct NetSPacket_0x2732_Head
+static_assert(offsetof(NetPacket_Fixed<0x2731>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x2731>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x2731>, account_id) == 2, "offsetof(NetPacket_Fixed<0x2731>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x2731>, ban_not_status) == 6, "offsetof(NetPacket_Fixed<0x2731>, ban_not_status) == 6");
+static_assert(offsetof(NetPacket_Fixed<0x2731>, status_or_ban_until) == 7, "offsetof(NetPacket_Fixed<0x2731>, status_or_ban_until) == 7");
+static_assert(sizeof(NetPacket_Fixed<0x2731>) == 11, "sizeof(NetPacket_Fixed<0x2731>) == 11");
+template<>
+struct NetPacket_Head<0x2732>
{
Little16 magic_packet_id;
Little16 magic_packet_length;
};
-static_assert(offsetof(NetSPacket_0x2732_Head, magic_packet_id) == 0, "offsetof(NetSPacket_0x2732_Head, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x2732_Head, magic_packet_length) == 2, "offsetof(NetSPacket_0x2732_Head, magic_packet_length) == 2");
-static_assert(sizeof(NetSPacket_0x2732_Head) == 4, "sizeof(NetSPacket_0x2732_Head) == 4");
-struct NetSPacket_0x2732_Repeat
+static_assert(offsetof(NetPacket_Head<0x2732>, magic_packet_id) == 0, "offsetof(NetPacket_Head<0x2732>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Head<0x2732>, magic_packet_length) == 2, "offsetof(NetPacket_Head<0x2732>, magic_packet_length) == 2");
+static_assert(sizeof(NetPacket_Head<0x2732>) == 4, "sizeof(NetPacket_Head<0x2732>) == 4");
+template<>
+struct NetPacket_Repeat<0x2732>
{
Little32 account_id;
Byte gm_level;
};
-static_assert(offsetof(NetSPacket_0x2732_Repeat, account_id) == 0, "offsetof(NetSPacket_0x2732_Repeat, account_id) == 0");
-static_assert(offsetof(NetSPacket_0x2732_Repeat, gm_level) == 4, "offsetof(NetSPacket_0x2732_Repeat, gm_level) == 4");
-static_assert(sizeof(NetSPacket_0x2732_Repeat) == 5, "sizeof(NetSPacket_0x2732_Repeat) == 5");
-struct NetRPacket_0x2740_Fixed
+static_assert(offsetof(NetPacket_Repeat<0x2732>, account_id) == 0, "offsetof(NetPacket_Repeat<0x2732>, account_id) == 0");
+static_assert(offsetof(NetPacket_Repeat<0x2732>, gm_level) == 4, "offsetof(NetPacket_Repeat<0x2732>, gm_level) == 4");
+static_assert(sizeof(NetPacket_Repeat<0x2732>) == 5, "sizeof(NetPacket_Repeat<0x2732>) == 5");
+template<>
+struct NetPacket_Fixed<0x2740>
{
Little16 magic_packet_id;
Little32 account_id;
NetString<sizeof(AccountPass)> old_pass;
NetString<sizeof(AccountPass)> new_pass;
};
-static_assert(offsetof(NetRPacket_0x2740_Fixed, magic_packet_id) == 0, "offsetof(NetRPacket_0x2740_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetRPacket_0x2740_Fixed, account_id) == 2, "offsetof(NetRPacket_0x2740_Fixed, account_id) == 2");
-static_assert(offsetof(NetRPacket_0x2740_Fixed, old_pass) == 6, "offsetof(NetRPacket_0x2740_Fixed, old_pass) == 6");
-static_assert(offsetof(NetRPacket_0x2740_Fixed, new_pass) == 30, "offsetof(NetRPacket_0x2740_Fixed, new_pass) == 30");
-static_assert(sizeof(NetRPacket_0x2740_Fixed) == 54, "sizeof(NetRPacket_0x2740_Fixed) == 54");
-struct NetSPacket_0x2741_Fixed
+static_assert(offsetof(NetPacket_Fixed<0x2740>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x2740>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x2740>, account_id) == 2, "offsetof(NetPacket_Fixed<0x2740>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x2740>, old_pass) == 6, "offsetof(NetPacket_Fixed<0x2740>, old_pass) == 6");
+static_assert(offsetof(NetPacket_Fixed<0x2740>, new_pass) == 30, "offsetof(NetPacket_Fixed<0x2740>, new_pass) == 30");
+static_assert(sizeof(NetPacket_Fixed<0x2740>) == 54, "sizeof(NetPacket_Fixed<0x2740>) == 54");
+template<>
+struct NetPacket_Fixed<0x2741>
{
Little16 magic_packet_id;
Little32 account_id;
Byte status;
};
-static_assert(offsetof(NetSPacket_0x2741_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x2741_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x2741_Fixed, account_id) == 2, "offsetof(NetSPacket_0x2741_Fixed, account_id) == 2");
-static_assert(offsetof(NetSPacket_0x2741_Fixed, status) == 6, "offsetof(NetSPacket_0x2741_Fixed, status) == 6");
-static_assert(sizeof(NetSPacket_0x2741_Fixed) == 7, "sizeof(NetSPacket_0x2741_Fixed) == 7");
+static_assert(offsetof(NetPacket_Fixed<0x2741>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x2741>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x2741>, account_id) == 2, "offsetof(NetPacket_Fixed<0x2741>, account_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x2741>, status) == 6, "offsetof(NetPacket_Fixed<0x2741>, status) == 6");
+static_assert(sizeof(NetPacket_Fixed<0x2741>) == 7, "sizeof(NetPacket_Fixed<0x2741>) == 7");
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x2709_Fixed *network, RPacket_0x2709_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x2709> *network, Packet_Fixed<0x2709> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x2709_Fixed *native, NetRPacket_0x2709_Fixed network)
+bool network_to_native(Packet_Fixed<0x2709> *native, NetPacket_Fixed<0x2709> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x2712_Fixed *network, RPacket_0x2712_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x2712> *network, Packet_Fixed<0x2712> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -538,7 +590,7 @@ bool native_to_network(NetRPacket_0x2712_Fixed *network, RPacket_0x2712_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x2712_Fixed *native, NetRPacket_0x2712_Fixed network)
+bool network_to_native(Packet_Fixed<0x2712> *native, NetPacket_Fixed<0x2712> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -550,7 +602,7 @@ bool network_to_native(RPacket_0x2712_Fixed *native, NetRPacket_0x2712_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x2713_Fixed *network, SPacket_0x2713_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x2713> *network, Packet_Fixed<0x2713> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -561,7 +613,7 @@ bool native_to_network(NetSPacket_0x2713_Fixed *network, SPacket_0x2713_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x2713_Fixed *native, NetSPacket_0x2713_Fixed network)
+bool network_to_native(Packet_Fixed<0x2713> *native, NetPacket_Fixed<0x2713> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -572,7 +624,7 @@ bool network_to_native(SPacket_0x2713_Fixed *native, NetSPacket_0x2713_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x2714_Fixed *network, RPacket_0x2714_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x2714> *network, Packet_Fixed<0x2714> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -580,7 +632,7 @@ bool native_to_network(NetRPacket_0x2714_Fixed *network, RPacket_0x2714_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x2714_Fixed *native, NetRPacket_0x2714_Fixed network)
+bool network_to_native(Packet_Fixed<0x2714> *native, NetPacket_Fixed<0x2714> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -588,7 +640,7 @@ bool network_to_native(RPacket_0x2714_Fixed *native, NetRPacket_0x2714_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x2715_Fixed *network, RPacket_0x2715_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x2715> *network, Packet_Fixed<0x2715> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -597,7 +649,7 @@ bool native_to_network(NetRPacket_0x2715_Fixed *network, RPacket_0x2715_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x2715_Fixed *native, NetRPacket_0x2715_Fixed network)
+bool network_to_native(Packet_Fixed<0x2715> *native, NetPacket_Fixed<0x2715> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -606,7 +658,7 @@ bool network_to_native(RPacket_0x2715_Fixed *native, NetRPacket_0x2715_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x2716_Fixed *network, RPacket_0x2716_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x2716> *network, Packet_Fixed<0x2716> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -614,7 +666,7 @@ bool native_to_network(NetRPacket_0x2716_Fixed *network, RPacket_0x2716_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x2716_Fixed *native, NetRPacket_0x2716_Fixed network)
+bool network_to_native(Packet_Fixed<0x2716> *native, NetPacket_Fixed<0x2716> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -622,7 +674,7 @@ bool network_to_native(RPacket_0x2716_Fixed *native, NetRPacket_0x2716_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x2717_Fixed *network, SPacket_0x2717_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x2717> *network, Packet_Fixed<0x2717> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -632,7 +684,7 @@ bool native_to_network(NetSPacket_0x2717_Fixed *network, SPacket_0x2717_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x2717_Fixed *native, NetSPacket_0x2717_Fixed network)
+bool network_to_native(Packet_Fixed<0x2717> *native, NetPacket_Fixed<0x2717> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -642,7 +694,7 @@ bool network_to_native(SPacket_0x2717_Fixed *native, NetSPacket_0x2717_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x2720_Head *network, RPacket_0x2720_Head native)
+bool native_to_network(NetPacket_Head<0x2720> *network, Packet_Head<0x2720> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -651,7 +703,7 @@ bool native_to_network(NetRPacket_0x2720_Head *network, RPacket_0x2720_Head nati
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x2720_Head *native, NetRPacket_0x2720_Head network)
+bool network_to_native(Packet_Head<0x2720> *native, NetPacket_Head<0x2720> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -660,21 +712,21 @@ bool network_to_native(RPacket_0x2720_Head *native, NetRPacket_0x2720_Head netwo
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x2720_Repeat *network, RPacket_0x2720_Repeat native)
+bool native_to_network(NetPacket_Repeat<0x2720> *network, Packet_Repeat<0x2720> native)
{
bool rv = true;
rv &= native_to_network(&network->c, native.c);
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x2720_Repeat *native, NetRPacket_0x2720_Repeat network)
+bool network_to_native(Packet_Repeat<0x2720> *native, NetPacket_Repeat<0x2720> network)
{
bool rv = true;
rv &= network_to_native(&native->c, network.c);
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x2721_Fixed *network, SPacket_0x2721_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x2721> *network, Packet_Fixed<0x2721> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -683,7 +735,7 @@ bool native_to_network(NetSPacket_0x2721_Fixed *network, SPacket_0x2721_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x2721_Fixed *native, NetSPacket_0x2721_Fixed network)
+bool network_to_native(Packet_Fixed<0x2721> *native, NetPacket_Fixed<0x2721> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -692,7 +744,7 @@ bool network_to_native(SPacket_0x2721_Fixed *native, NetSPacket_0x2721_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x2722_Fixed *network, RPacket_0x2722_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x2722> *network, Packet_Fixed<0x2722> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -702,7 +754,7 @@ bool native_to_network(NetRPacket_0x2722_Fixed *network, RPacket_0x2722_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x2722_Fixed *native, NetRPacket_0x2722_Fixed network)
+bool network_to_native(Packet_Fixed<0x2722> *native, NetPacket_Fixed<0x2722> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -712,7 +764,7 @@ bool network_to_native(RPacket_0x2722_Fixed *native, NetRPacket_0x2722_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x2723_Fixed *network, SPacket_0x2723_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x2723> *network, Packet_Fixed<0x2723> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -721,7 +773,7 @@ bool native_to_network(NetSPacket_0x2723_Fixed *network, SPacket_0x2723_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x2723_Fixed *native, NetSPacket_0x2723_Fixed network)
+bool network_to_native(Packet_Fixed<0x2723> *native, NetPacket_Fixed<0x2723> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -730,7 +782,7 @@ bool network_to_native(SPacket_0x2723_Fixed *native, NetSPacket_0x2723_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x2724_Fixed *network, RPacket_0x2724_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x2724> *network, Packet_Fixed<0x2724> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -739,7 +791,7 @@ bool native_to_network(NetRPacket_0x2724_Fixed *network, RPacket_0x2724_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x2724_Fixed *native, NetRPacket_0x2724_Fixed network)
+bool network_to_native(Packet_Fixed<0x2724> *native, NetPacket_Fixed<0x2724> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -748,7 +800,7 @@ bool network_to_native(RPacket_0x2724_Fixed *native, NetRPacket_0x2724_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x2725_Fixed *network, RPacket_0x2725_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x2725> *network, Packet_Fixed<0x2725> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -757,7 +809,7 @@ bool native_to_network(NetRPacket_0x2725_Fixed *network, RPacket_0x2725_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x2725_Fixed *native, NetRPacket_0x2725_Fixed network)
+bool network_to_native(Packet_Fixed<0x2725> *native, NetPacket_Fixed<0x2725> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -766,7 +818,7 @@ bool network_to_native(RPacket_0x2725_Fixed *native, NetRPacket_0x2725_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x2727_Fixed *network, RPacket_0x2727_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x2727> *network, Packet_Fixed<0x2727> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -774,7 +826,7 @@ bool native_to_network(NetRPacket_0x2727_Fixed *network, RPacket_0x2727_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x2727_Fixed *native, NetRPacket_0x2727_Fixed network)
+bool network_to_native(Packet_Fixed<0x2727> *native, NetPacket_Fixed<0x2727> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -782,7 +834,7 @@ bool network_to_native(RPacket_0x2727_Fixed *native, NetRPacket_0x2727_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x2728_Head *network, RPacket_0x2728_Head native)
+bool native_to_network(NetPacket_Head<0x2728> *network, Packet_Head<0x2728> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -791,7 +843,7 @@ bool native_to_network(NetRPacket_0x2728_Head *network, RPacket_0x2728_Head nati
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x2728_Head *native, NetRPacket_0x2728_Head network)
+bool network_to_native(Packet_Head<0x2728> *native, NetPacket_Head<0x2728> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -800,7 +852,7 @@ bool network_to_native(RPacket_0x2728_Head *native, NetRPacket_0x2728_Head netwo
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x2728_Repeat *network, RPacket_0x2728_Repeat native)
+bool native_to_network(NetPacket_Repeat<0x2728> *network, Packet_Repeat<0x2728> native)
{
bool rv = true;
rv &= native_to_network(&network->name, native.name);
@@ -808,7 +860,7 @@ bool native_to_network(NetRPacket_0x2728_Repeat *network, RPacket_0x2728_Repeat
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x2728_Repeat *native, NetRPacket_0x2728_Repeat network)
+bool network_to_native(Packet_Repeat<0x2728> *native, NetPacket_Repeat<0x2728> network)
{
bool rv = true;
rv &= network_to_native(&native->name, network.name);
@@ -816,7 +868,7 @@ bool network_to_native(RPacket_0x2728_Repeat *native, NetRPacket_0x2728_Repeat n
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x2729_Head *network, SPacket_0x2729_Head native)
+bool native_to_network(NetPacket_Head<0x2729> *network, Packet_Head<0x2729> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -825,7 +877,7 @@ bool native_to_network(NetSPacket_0x2729_Head *network, SPacket_0x2729_Head nati
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x2729_Head *native, NetSPacket_0x2729_Head network)
+bool network_to_native(Packet_Head<0x2729> *native, NetPacket_Head<0x2729> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -834,7 +886,7 @@ bool network_to_native(SPacket_0x2729_Head *native, NetSPacket_0x2729_Head netwo
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x2729_Repeat *network, SPacket_0x2729_Repeat native)
+bool native_to_network(NetPacket_Repeat<0x2729> *network, Packet_Repeat<0x2729> native)
{
bool rv = true;
rv &= native_to_network(&network->name, native.name);
@@ -842,7 +894,7 @@ bool native_to_network(NetSPacket_0x2729_Repeat *network, SPacket_0x2729_Repeat
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x2729_Repeat *native, NetSPacket_0x2729_Repeat network)
+bool network_to_native(Packet_Repeat<0x2729> *native, NetPacket_Repeat<0x2729> network)
{
bool rv = true;
rv &= network_to_native(&native->name, network.name);
@@ -850,7 +902,7 @@ bool network_to_native(SPacket_0x2729_Repeat *native, NetSPacket_0x2729_Repeat n
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x272a_Fixed *network, RPacket_0x272a_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x272a> *network, Packet_Fixed<0x272a> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -858,7 +910,7 @@ bool native_to_network(NetRPacket_0x272a_Fixed *network, RPacket_0x272a_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x272a_Fixed *native, NetRPacket_0x272a_Fixed network)
+bool network_to_native(Packet_Fixed<0x272a> *native, NetPacket_Fixed<0x272a> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -866,7 +918,7 @@ bool network_to_native(RPacket_0x272a_Fixed *native, NetRPacket_0x272a_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x2730_Fixed *network, SPacket_0x2730_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x2730> *network, Packet_Fixed<0x2730> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -874,7 +926,7 @@ bool native_to_network(NetSPacket_0x2730_Fixed *network, SPacket_0x2730_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x2730_Fixed *native, NetSPacket_0x2730_Fixed network)
+bool network_to_native(Packet_Fixed<0x2730> *native, NetPacket_Fixed<0x2730> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -882,7 +934,7 @@ bool network_to_native(SPacket_0x2730_Fixed *native, NetSPacket_0x2730_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x2731_Fixed *network, SPacket_0x2731_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x2731> *network, Packet_Fixed<0x2731> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -892,7 +944,7 @@ bool native_to_network(NetSPacket_0x2731_Fixed *network, SPacket_0x2731_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x2731_Fixed *native, NetSPacket_0x2731_Fixed network)
+bool network_to_native(Packet_Fixed<0x2731> *native, NetPacket_Fixed<0x2731> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -902,7 +954,7 @@ bool network_to_native(SPacket_0x2731_Fixed *native, NetSPacket_0x2731_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x2732_Head *network, SPacket_0x2732_Head native)
+bool native_to_network(NetPacket_Head<0x2732> *network, Packet_Head<0x2732> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -910,7 +962,7 @@ bool native_to_network(NetSPacket_0x2732_Head *network, SPacket_0x2732_Head nati
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x2732_Head *native, NetSPacket_0x2732_Head network)
+bool network_to_native(Packet_Head<0x2732> *native, NetPacket_Head<0x2732> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -918,7 +970,7 @@ bool network_to_native(SPacket_0x2732_Head *native, NetSPacket_0x2732_Head netwo
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x2732_Repeat *network, SPacket_0x2732_Repeat native)
+bool native_to_network(NetPacket_Repeat<0x2732> *network, Packet_Repeat<0x2732> native)
{
bool rv = true;
rv &= native_to_network(&network->account_id, native.account_id);
@@ -926,7 +978,7 @@ bool native_to_network(NetSPacket_0x2732_Repeat *network, SPacket_0x2732_Repeat
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x2732_Repeat *native, NetSPacket_0x2732_Repeat network)
+bool network_to_native(Packet_Repeat<0x2732> *native, NetPacket_Repeat<0x2732> network)
{
bool rv = true;
rv &= network_to_native(&native->account_id, network.account_id);
@@ -934,7 +986,7 @@ bool network_to_native(SPacket_0x2732_Repeat *native, NetSPacket_0x2732_Repeat n
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetRPacket_0x2740_Fixed *network, RPacket_0x2740_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x2740> *network, Packet_Fixed<0x2740> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -944,7 +996,7 @@ bool native_to_network(NetRPacket_0x2740_Fixed *network, RPacket_0x2740_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(RPacket_0x2740_Fixed *native, NetRPacket_0x2740_Fixed network)
+bool network_to_native(Packet_Fixed<0x2740> *native, NetPacket_Fixed<0x2740> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
@@ -954,7 +1006,7 @@ bool network_to_native(RPacket_0x2740_Fixed *native, NetRPacket_0x2740_Fixed net
return rv;
}
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x2741_Fixed *network, SPacket_0x2741_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x2741> *network, Packet_Fixed<0x2741> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -963,7 +1015,7 @@ bool native_to_network(NetSPacket_0x2741_Fixed *network, SPacket_0x2741_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x2741_Fixed *native, NetSPacket_0x2741_Fixed network)
+bool network_to_native(Packet_Fixed<0x2741> *native, NetPacket_Fixed<0x2741> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);
diff --git a/src/proto2/map-user.hpp b/src/proto2/map-user.hpp
index 90102f7..4da94cf 100644
--- a/src/proto2/map-user.hpp
+++ b/src/proto2/map-user.hpp
@@ -27,11 +27,12 @@
// This is a public protocol, and changes require client cooperation
-struct SPacket_0x0212_Fixed
+template<>
+struct Packet_Fixed<0x0212>
{
- using NetType = NetSPacket_0x0212_Fixed;
static const uint16_t PACKET_ID = 0x0212;
+ // TODO remove this
uint16_t magic_packet_id = PACKET_ID;
BlockId npc_id = {};
uint16_t command = {};
@@ -40,7 +41,8 @@ struct SPacket_0x0212_Fixed
uint16_t y = {};
};
-struct NetSPacket_0x0212_Fixed
+template<>
+struct NetPacket_Fixed<0x0212>
{
Little16 magic_packet_id;
Little32 npc_id;
@@ -49,16 +51,16 @@ struct NetSPacket_0x0212_Fixed
Little16 x;
Little16 y;
};
-static_assert(offsetof(NetSPacket_0x0212_Fixed, magic_packet_id) == 0, "offsetof(NetSPacket_0x0212_Fixed, magic_packet_id) == 0");
-static_assert(offsetof(NetSPacket_0x0212_Fixed, npc_id) == 2, "offsetof(NetSPacket_0x0212_Fixed, npc_id) == 2");
-static_assert(offsetof(NetSPacket_0x0212_Fixed, command) == 6, "offsetof(NetSPacket_0x0212_Fixed, command) == 6");
-static_assert(offsetof(NetSPacket_0x0212_Fixed, id) == 8, "offsetof(NetSPacket_0x0212_Fixed, id) == 8");
-static_assert(offsetof(NetSPacket_0x0212_Fixed, x) == 12, "offsetof(NetSPacket_0x0212_Fixed, x) == 12");
-static_assert(offsetof(NetSPacket_0x0212_Fixed, y) == 14, "offsetof(NetSPacket_0x0212_Fixed, y) == 14");
-static_assert(sizeof(NetSPacket_0x0212_Fixed) == 16, "sizeof(NetSPacket_0x0212_Fixed) == 16");
+static_assert(offsetof(NetPacket_Fixed<0x0212>, magic_packet_id) == 0, "offsetof(NetPacket_Fixed<0x0212>, magic_packet_id) == 0");
+static_assert(offsetof(NetPacket_Fixed<0x0212>, npc_id) == 2, "offsetof(NetPacket_Fixed<0x0212>, npc_id) == 2");
+static_assert(offsetof(NetPacket_Fixed<0x0212>, command) == 6, "offsetof(NetPacket_Fixed<0x0212>, command) == 6");
+static_assert(offsetof(NetPacket_Fixed<0x0212>, id) == 8, "offsetof(NetPacket_Fixed<0x0212>, id) == 8");
+static_assert(offsetof(NetPacket_Fixed<0x0212>, x) == 12, "offsetof(NetPacket_Fixed<0x0212>, x) == 12");
+static_assert(offsetof(NetPacket_Fixed<0x0212>, y) == 14, "offsetof(NetPacket_Fixed<0x0212>, y) == 14");
+static_assert(sizeof(NetPacket_Fixed<0x0212>) == 16, "sizeof(NetPacket_Fixed<0x0212>) == 16");
inline __attribute__((warn_unused_result))
-bool native_to_network(NetSPacket_0x0212_Fixed *network, SPacket_0x0212_Fixed native)
+bool native_to_network(NetPacket_Fixed<0x0212> *network, Packet_Fixed<0x0212> native)
{
bool rv = true;
rv &= native_to_network(&network->magic_packet_id, native.magic_packet_id);
@@ -70,7 +72,7 @@ bool native_to_network(NetSPacket_0x0212_Fixed *network, SPacket_0x0212_Fixed na
return rv;
}
inline __attribute__((warn_unused_result))
-bool network_to_native(SPacket_0x0212_Fixed *native, NetSPacket_0x0212_Fixed network)
+bool network_to_native(Packet_Fixed<0x0212> *native, NetPacket_Fixed<0x0212> network)
{
bool rv = true;
rv &= network_to_native(&native->magic_packet_id, network.magic_packet_id);