diff options
-rw-r--r-- | include/pso/TPlyGuildCardTag.h | 14 | ||||
-rw-r--r-- | src/pso/TPlyGuildCardTag.cpp | 8 |
2 files changed, 14 insertions, 8 deletions
diff --git a/include/pso/TPlyGuildCardTag.h b/include/pso/TPlyGuildCardTag.h index 3e193a0..a29e977 100644 --- a/include/pso/TPlyGuildCardTag.h +++ b/include/pso/TPlyGuildCardTag.h @@ -6,11 +6,17 @@ #include <global_types.h> class TPlyGuildCardTag { - public: - u8 tag0; - u8 tag1; - u16 tag2; +public: + union { + struct { + u8 tag0; + u8 tag1; + u16 tag2; + } tag; + u32 tag_u32; + }; u32 guildcard_number; + TPlyGuildCardTag &operator=(const TPlyGuildCardTag &src); void bswap(); } __packed__; diff --git a/src/pso/TPlyGuildCardTag.cpp b/src/pso/TPlyGuildCardTag.cpp index 079fcbc..e874485 100644 --- a/src/pso/TPlyGuildCardTag.cpp +++ b/src/pso/TPlyGuildCardTag.cpp @@ -4,13 +4,13 @@ void TPlyGuildCardTag::bswap() { bswap_32(&guildcard_number); - bswap_16(&tag2); + bswap_16(&tag.tag2); } TPlyGuildCardTag &TPlyGuildCardTag::operator=(const TPlyGuildCardTag &src) { - tag0 = src.tag0; - tag1 = src.tag1; - tag2 = src.tag2; + tag.tag0 = src.tag.tag0; + tag.tag1 = src.tag.tag1; + tag.tag2 = src.tag.tag2; guildcard_number = src.guildcard_number; return *this; } |