1#pragma once
2
3#include <basis/seadTypes.h>
4#include <math/seadVector.h>
5
6#include "Library/LiveActor/LiveActor.h"
7
8namespace al {
9struct ActorInitInfo;
10} // namespace al
11
12class Coin;
13
14class CoinCirclePlacement : public al::LiveActor {
15public:
16 CoinCirclePlacement(const char* name);
17
18 void init(const al::ActorInitInfo& initInfo) override;
19
20 void listenAppear();
21 void exeMove();
22
23private:
24 Coin** mCoinArray = nullptr;
25 s32 mCoinNum = 0;
26 f32 mRotateVelocity = 0.0f;
27 sead::Vector3f mSide = sead::Vector3f::zero;
28 sead::Vector3f mUp = sead::Vector3f::zero;
29 sead::Vector3f mFront = sead::Vector3f::zero;
30 f32 mCurrentAngle = 0.0f;
31 char pad[12];
32 f32 mCircleXWidth = 0.0f;
33 f32 mCircleZWidth = 0.0f;
34 sead::Vector3f _154 = sead::Vector3f::zero;
35};
36