rodecomp/Source/Contents/UserData/NormalItemSlots.h
ragnarok-clanker 9ac3d05245 Maintenance: Add mandatory field offset markers /* XXXX */ and assertions to Contents headers (part 2: Items, Models, Movies, Skills,
Batch #1063 by ragnarok-clanker: no function's compiled code changes; checked with 62 compiled unit(s), including every includer of Source/Contents/Items/ItemNaming.h, Source/Contents/Models/ModelActor.h, Source/Contents/Models/ModelRendering.h, Source/Contents/Models/ModelSpatial.h, Source/Contents/Movies/BinkMovie.h, Source/Contents/Movies/BinkMovies.h, Source/Contents/PlayerNameDictionary.h, Source/Contents/Skills/AutomaticSkills.h, Source/Contents/Skills/ClientSkills.h, Source/Contents/Skills/PlayerSkillBundle.h, Source/Contents/Skills/SkillInfo.h, Source/Contents/Sound/SoundMgr.h, Source/Contents/UserData/NormalItemSlots.h, Source/Contents/World/WorldModelLoading.h, Source/Contents/World/WorldModelView.h, Source/Contents/World/WorldRayQuery.h.
2026-10-27 13:52:05 +00:00

42 lines
1.2 KiB
C++

#ifndef RAGNAROK_SOURCE_CONTENTS_USERDATA_NORMALITEMSLOTS_H
#define RAGNAROK_SOURCE_CONTENTS_USERDATA_NORMALITEMSLOTS_H
#include <cstddef>
#include <cstdint>
namespace Json {
class Value;
}
#pragma pack(push, 1)
struct NormalItemSlot {
/* 0000 */ std::uint8_t unknown_0000;
/* 0001 */ std::uint32_t itemId;
/* 0005 */ std::int16_t unknown_0005;
};
#pragma pack(pop)
static_assert(sizeof(NormalItemSlot) == 7);
static_assert(offsetof(NormalItemSlot, itemId) == 1);
static_assert(offsetof(NormalItemSlot, unknown_0005) == 5);
struct NormalItemSlotWindow {
/* 0000 */ int x;
/* 0004 */ int y;
/* 0008 */ int width;
/* 000C */ int height;
/* 0010 */ int show;
void Reset();
bool IsValid(int screenWidth, int screenHeight, bool active) const;
};
#if defined(_WIN32) && !defined(_WIN64)
static_assert(offsetof(NormalItemSlotWindow, x) == 0x0000);
static_assert(offsetof(NormalItemSlotWindow, y) == 0x0004);
static_assert(offsetof(NormalItemSlotWindow, width) == 0x0008);
static_assert(offsetof(NormalItemSlotWindow, height) == 0x000C);
static_assert(offsetof(NormalItemSlotWindow, show) == 0x0010);
#endif
void ExportNormalItemSlots(Json::Value& data, const NormalItemSlot* slots, const NormalItemSlotWindow& window, bool active);
#endif