diff options
Diffstat (limited to 'include/pso/TPlyGuildCardTag.h')
-rw-r--r-- | include/pso/TPlyGuildCardTag.h | 34 |
1 files changed, 10 insertions, 24 deletions
diff --git a/include/pso/TPlyGuildCardTag.h b/include/pso/TPlyGuildCardTag.h index 948426a..7bcdb71 100644 --- a/include/pso/TPlyGuildCardTag.h +++ b/include/pso/TPlyGuildCardTag.h @@ -14,41 +14,27 @@ struct gc_tag { class TPlyGuildCardTag { public: TPlyGuildCardTag() {}; - TPlyGuildCardTag(TPlyGuildCardTag &src) { - m_tag.tag0 = src.m_tag.tag0; - m_tag.tag1 = src.m_tag.tag1; - m_tag.tag2 = src.m_tag.tag2; - m_guildcard_number = src.m_guildcard_number; - }; + TPlyGuildCardTag(u16 tag2, u32 guildcard_number) { - m_tag.tag0 = 0; - m_tag.tag1 = 0; - m_tag.tag2 = tag2; + m_tag0 = 0; + m_tag1 = 0; + m_tag2 = tag2; m_guildcard_number = guildcard_number; }; - TPlyGuildCardTag &operator=(const TPlyGuildCardTag &src) { - m_tag.tag0 = src.m_tag.tag0; - m_tag.tag1 = src.m_tag.tag1; - m_tag.tag2 = src.m_tag.tag2; - m_guildcard_number = src.m_guildcard_number; + int operator==(TPlyGuildCardTag &other) { + return (m_tag1 == other.m_tag1) && (m_tag2 == other.m_tag2) && (m_guildcard_number == other.m_guildcard_number); }; void bswap() { bswap_32(&m_guildcard_number); - bswap_16(&m_tag.tag2); + bswap_16(&m_tag2); }; - void assign(const TPlyGuildCardTag &src) { *this = src; }; - void assign(const TPlyGuildCardTag *src) { - m_tag_u32 = src->m_tag_u32; - m_guildcard_number = src->m_guildcard_number; - }; public: - union { - gc_tag m_tag; - u32 m_tag_u32; - }; + u8 m_tag0; + u8 m_tag1; + u16 m_tag2; u32 m_guildcard_number; } __packed__; #endif |