rodecomp/Source/Contents/Ground/GroundWaterState.h
ragnarok-clanker 02df811b36 Maintenance: Add mandatory field offset markers /* XXXX */ and assertions to Contents headers (part 1: Actors, Effects, Ground, Hotke
Batch #1066 by ragnarok-clanker: no function's compiled code changes; checked with 70 compiled unit(s), including every includer of Source/Contents/Actors/RenderObject.h, Source/Contents/CashEmotionMgr.h, Source/Contents/Effects/AttachedEffect.h, Source/Contents/Effects/Effect.h, Source/Contents/Effects/EffectActor.h, Source/Contents/Effects/EffectParticle.h, Source/Contents/Effects/EffectPrimitiveState.h, Source/Contents/Emblems/GuildEmblemReqBundle.h, Source/Contents/Ground/GroundGeometry.h, Source/Contents/Ground/GroundSpatial.h, Source/Contents/Ground/GroundWaterState.h, Source/Contents/Ground/TerrainHeight.h, Source/Contents/Hotkeys/EmotionHotkeys.h, Source/Contents/Hotkeys/HotkeyInfo.h, Source/Contents/Hotkeys/UserHotkeyMgr.h, Source/Contents/InstantVar.h.
2026-10-27 13:57:41 +00:00

49 lines
1.1 KiB
C++

#ifndef RAGNAROK_SOURCE_CONTENTS_GROUND_GROUNDWATERSTATE_H
#define RAGNAROK_SOURCE_CONTENTS_GROUND_GROUNDWATERSTATE_H
#include <cstddef>
#include <cstdint>
#include <vector>
class CGndRes;
class CTexture;
class TextureCache;
struct GroundWaterSurface {
/* 0000 */ float level;
/* 0004 */ int type;
/* 0008 */ float height;
/* 000C */ float speed;
/* 0010 */ float pitch;
/* 0014 */ int animation;
/* 0018 */ int frame;
/* 001C */ float phase;
/* 0020 */ CTexture* texture;
};
struct GroundWaterState {
GroundWaterState();
void Set(float level, int type, int animation, int pitch, int phase, float height);
bool Import(const CGndRes& resource, TextureCache& textures);
void Update(TextureCache& textures);
float Level(int width, int height, int column, int row) const;
float level;
int animation;
int pitch;
int phase;
int type;
float height;
int columns;
int rows;
std::vector<float> levels;
std::vector<GroundWaterSurface> surfaces;
bool partitioned;
};
#if defined(_WIN32) && !defined(_WIN64)
static_assert(sizeof(GroundWaterSurface) == 36);
static_assert(offsetof(GroundWaterSurface, texture) == 0x20);
#endif
#endif