rodecomp/Source/Resource/ImfResource.h
ragnarok-clanker 156cc3d5a8 Decompile 2 functions in Source/Resource/ImfLayerIndex.cpp, Source/Resource/ImfResource.h
Batch #4788 by youko: 1 byte-identical, 1 confirmed by peer review.

- fn_07937 CImfRes::Reset: byte-identical
- fn_07939 CImfRes::GetLongPoint: logic confirmed by peer review

Peer-reviewed-by: eAthena, alisonrag, Bruwuno
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
2026-10-30 05:05:22 +00:00

35 lines
783 B
C++

#ifndef RAGNAROK_SOURCE_RESOURCE_IMFRESOURCE_H
#define RAGNAROK_SOURCE_RESOURCE_IMFRESOURCE_H
#include "Resource/Resource.h"
#include <windows.h>
#include <vector>
struct ImfData {
/* 0000 */ std::vector<int> priority;
/* 000C */ std::vector<int> cx;
/* 0018 */ std::vector<int> cy;
};
class CImfRes : public CRes {
public:
bool Load(const char* name) override;
void Reset();
int GetLayer(int priority, int action, int motion);
POINT GetLongPoint(int layer, int action, int motion);
private:
/* 0110 */ std::vector<std::vector<ImfData>> m_imfData;
/* 011C */ int m_maxAction[15];
/* 0158 */ int m_maxMotion[15][104];
};
#if defined(_WIN32) && !defined(_WIN64)
static_assert(sizeof(ImfData) == 36);
static_assert(sizeof(CImfRes) == 0x19B8);
#endif
#endif