diff options
-rw-r--r-- | context.h | 24 | ||||
-rw-r--r-- | include/pso/TPlyGuildCardTag.h | 27 | ||||
-rw-r--r-- | src/pso/TPlyGuildCardTag.cpp | 12 |
3 files changed, 42 insertions, 21 deletions
@@ -534,6 +534,13 @@ struct packet_header { void bswap(); } __packed__; +// pso/TPlyGuildCardTag.h +struct gc_tag { + u8 tag0; + u8 tag1; + u16 tag2; +}; + // TTcpSocket.cpp, but they're really from AVE-TCP struct at_ip4_opt { u8 ttl; @@ -610,13 +617,20 @@ static inline void operator|=(object_flags &a, object_flags b) { a = a | b; }; // Class defs. class TPlyGuildCardTag { - public: - u8 tag0; - u8 tag1; - u16 tag2; - u32 guildcard_number; +public: TPlyGuildCardTag &operator=(const TPlyGuildCardTag &src); void bswap(); + + PRIVATE_MEMBER_ACCESSORS(gc_tag, tag); + PRIVATE_MEMBER_ACCESSORS(u32, tag_u32); + PRIVATE_MEMBER_ACCESSORS(u32, guildcard_number); + +private: + union { + gc_tag m_tag; + u32 m_tag_u32; + }; + u32 m_guildcard_number; } __packed__; // pso/PSOV3EncryptionTCP.h diff --git a/include/pso/TPlyGuildCardTag.h b/include/pso/TPlyGuildCardTag.h index a29e977..57c30c5 100644 --- a/include/pso/TPlyGuildCardTag.h +++ b/include/pso/TPlyGuildCardTag.h @@ -5,19 +5,26 @@ #include "pso/macros.h" #include <global_types.h> +struct gc_tag { + u8 tag0; + u8 tag1; + u16 tag2; +}; + class TPlyGuildCardTag { public: - union { - struct { - u8 tag0; - u8 tag1; - u16 tag2; - } tag; - u32 tag_u32; - }; - u32 guildcard_number; - TPlyGuildCardTag &operator=(const TPlyGuildCardTag &src); void bswap(); + + PRIVATE_MEMBER_ACCESSORS(gc_tag, tag); + PRIVATE_MEMBER_ACCESSORS(u32, tag_u32); + PRIVATE_MEMBER_ACCESSORS(u32, guildcard_number); + +private: + union { + gc_tag m_tag; + u32 m_tag_u32; + }; + u32 m_guildcard_number; } __packed__; #endif diff --git a/src/pso/TPlyGuildCardTag.cpp b/src/pso/TPlyGuildCardTag.cpp index e874485..61bed28 100644 --- a/src/pso/TPlyGuildCardTag.cpp +++ b/src/pso/TPlyGuildCardTag.cpp @@ -3,14 +3,14 @@ #include <global_types.h> void TPlyGuildCardTag::bswap() { - bswap_32(&guildcard_number); - bswap_16(&tag.tag2); + bswap_32(&m_guildcard_number); + bswap_16(&m_tag.tag2); } TPlyGuildCardTag &TPlyGuildCardTag::operator=(const TPlyGuildCardTag &src) { - tag.tag0 = src.tag.tag0; - tag.tag1 = src.tag.tag1; - tag.tag2 = src.tag.tag2; - guildcard_number = src.guildcard_number; + m_tag.tag0 = src.tag().tag0; + m_tag.tag1 = src.tag().tag1; + m_tag.tag2 = src.tag().tag2; + m_guildcard_number = src.guildcard_number(); return *this; } |