rodecomp/Source/Contents/Effects/EffectActor.h
ragnarok-clanker f8ee6dec15 Decompile 3 functions in Source/Contents/Effects/PartyMemberEffects.cpp, Source/Contents/Effects/EffectPrimitiveMotion.cpp, ...
Batch #2131 by ragnarok-clanker: 0 byte-identical, 3 confirmed by peer review.

- fn_19841 CEffectPrim::PrimTanji2: logic confirmed by peer review
- fn_19786 CEffectPrim::Prim3DTextureNoMaster: logic confirmed by peer review
- fn_21069 EffectActor::LaunchEffect: logic confirmed by peer review

Reviewed-by: ragnarok-clanker
2026-10-29 12:59:44 +00:00

39 lines
1 KiB
C++

#ifndef RAGNAROK_SOURCE_CONTENTS_EFFECTS_EFFECTACTOR_H
#define RAGNAROK_SOURCE_CONTENTS_EFFECTS_EFFECTACTOR_H
#include "Contents/Effects/EffectAttachments.h"
#include "Contents/Actors/RenderObject.h"
#include "Utility/Math/Vector3d.h"
#include <cstddef>
struct CRagEffect;
struct EffectActorState {
EffectActorState();
~EffectActorState();
EffectAttachments Attachments();
/* 0138 */ int unknown_0138;
/* 013C */ std::uint32_t unknown_013C;
/* 0140 */ std::uint32_t unknown_0140;
/* 0144 */ std::list<RagEffectState*> effects;
/* 014C */ RagEffectState* first;
/* 0150 */ RagEffectState* second;
};
struct EffectActor : CRenderObject {
EffectActor();
bool EffectVisible() const;
CRagEffect* LaunchEffect(int effectId, vector3d deltaPos, float rotation);
/* 0138 */ EffectActorState state;
};
#if defined(_WIN32) && !defined(_WIN64)
static_assert(sizeof(EffectActorState) == 28);
static_assert(sizeof(EffectActor) == 0x158);
static_assert(offsetof(EffectActor, state) == 0x138);
#endif
#endif