diff options
author | mrb0nk500 <b0nk@b0nk.xyz> | 2023-03-02 15:15:25 -0400 |
---|---|---|
committer | mrb0nk500 <b0nk@b0nk.xyz> | 2023-03-02 15:15:25 -0400 |
commit | edffe62dde3967f4065f5baf45d3115d574fe3cf (patch) | |
tree | db92a8d58be61acf53f3177ad8fcc11502f4268c | |
parent | 1094458ab9f0e7c03e8582b194be9bea4181f922 (diff) |
TPlyGuildCardTag: Put everything upto `guildcard_number` in a union
This will be needed for later.
-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; } |