mirror of
https://github.com/MonsterDruide1/OdysseyDecomp
synced 2026-04-29 20:14:41 +00:00
57 lines
2.3 KiB
C++
57 lines
2.3 KiB
C++
#pragma once
|
|
|
|
#include <gfx/seadColor.h>
|
|
#include <math/seadMatrix.h>
|
|
#include <math/seadVector.h>
|
|
|
|
namespace al {
|
|
class EffectSystem;
|
|
class IUseEffectKeeper;
|
|
class PtclSystem;
|
|
|
|
class EffectSystemInfo {
|
|
public:
|
|
EffectSystemInfo();
|
|
|
|
const EffectSystem& getEffectSystem() const;
|
|
|
|
private:
|
|
s32 _0;
|
|
PtclSystem* mPtclSystem;
|
|
void* _10;
|
|
s32 _18;
|
|
};
|
|
|
|
static_assert(sizeof(EffectSystemInfo) == 0x20);
|
|
|
|
void emitEffectCurrentPos(IUseEffectKeeper*, const char*);
|
|
void emitEffect(IUseEffectKeeper*, const char*, const sead::Vector3f*);
|
|
bool tryEmitEffect(IUseEffectKeeper*, const char*, const sead::Vector3f*);
|
|
void deleteEffect(IUseEffectKeeper*, const char*);
|
|
bool tryDeleteEffect(IUseEffectKeeper*, const char*);
|
|
void deleteEffectAll(IUseEffectKeeper*);
|
|
void tryKillEmitterAndParticleAll(IUseEffectKeeper*);
|
|
void onCalcAndDrawEffect(IUseEffectKeeper*);
|
|
void offCalcAndDrawEffect(IUseEffectKeeper*);
|
|
void forceSetStopCalcAndDraw(IUseEffectKeeper*, bool);
|
|
bool isEffectEmitting(const IUseEffectKeeper*, const char*);
|
|
void setEffectEmitRatio(IUseEffectKeeper*, const char*, f32);
|
|
void setEffectAllScale(IUseEffectKeeper*, const char*, const sead::Vector3f&);
|
|
void setEffectEmitterVolumeScale(IUseEffectKeeper*, const char*, const sead::Vector3f&);
|
|
void setEffectParticleScale(IUseEffectKeeper*, const char*, f32);
|
|
void setEffectParticleScale(IUseEffectKeeper*, const char*, const sead::Vector3f&);
|
|
void setEffectParticleAlpha(IUseEffectKeeper*, const char*, f32);
|
|
void setEffectParticleColor(IUseEffectKeeper*, const char*, const sead::Color4f&);
|
|
void setParticleLifeScale(IUseEffectKeeper*, const char*, f32);
|
|
void setEffectParticleDirectionalVel(IUseEffectKeeper*, const char*, f32);
|
|
void setEffectFollowPosPtr(IUseEffectKeeper*, const char*, const sead::Vector3f*);
|
|
void setEffectFollowMtxPtr(IUseEffectKeeper*, const char*, const sead::Matrix34f*);
|
|
void setEffectNamedMtxPtr(IUseEffectKeeper*, const char*, const sead::Matrix34f*);
|
|
bool trySetEffectNamedMtxPtr(IUseEffectKeeper*, const char*, const sead::Matrix34f*);
|
|
bool tryUpdateEffectMaterialCode(IUseEffectKeeper*, const char*);
|
|
void resetEffectMaterialCode(IUseEffectKeeper*);
|
|
void updateEffectMaterialWater(IUseEffectKeeper*, bool);
|
|
void updateEffectMaterialWet(IUseEffectKeeper*, bool);
|
|
void updateEffectMaterialPuddle(IUseEffectKeeper*, bool);
|
|
} // namespace al
|