#ifndef TPLYINVENTORY_H #define TPLYINVENTORY_H #include #include #include struct TItemData { void init(); void bswap(); TItemData &assign(const TItemData &src); union { u8 data_u8[12]; u16 data_u16[6]; u32 data_u32[3]; } data1; u32 id; union { u8 data_u8[4]; u8 data_u16[2]; u32 data_u32; } data2; }; class TPlyInventoryItem { public: void init(); void bswap(); TPlyInventoryItem &assign(const TPlyInventoryItem &src); public: u8 m_present[4]; u32 m_flags; TItemData m_data; }; class TPlyInventory { public: void bswap(); TPlyInventory &assign(const TPlyInventory &src); public: u8 m_num_items; u8 m_hp_materials_used; u8 m_tp_materials_used; u8 m_language; TPlyInventoryItem m_items[30]; }; #endif