1#pragma once
2
3#include "Library/LiveActor/LiveActor.h"
4
5namespace al {
6class MtxConnector;
7
8class EffectObjInterval : public LiveActor {
9public:
10 EffectObjInterval(const char* name);
11
12 void init(const ActorInitInfo& info) override;
13 void initAfterPlacement() override;
14 void control() override;
15 void appear() override;
16 void kill() override;
17
18 const sead::Matrix34f* getBaseMtx() const override { return &mBaseMtx; }
19
20private:
21 sead::Matrix34f mBaseMtx = sead::Matrix34f::ident;
22 MtxConnector* mMtxConnector = nullptr;
23 bool mIsStarted = false;
24 s32 mEmitInterval = 0;
25 s32 mTimer = 0;
26 s32 mFirstEmitFrame = 0;
27};
28
29static_assert(sizeof(EffectObjInterval) == 0x150);
30} // namespace al
31