1#pragma once
2
3#include <basis/seadTypes.h>
4#include <gfx/seadColor.h>
5#include <math/seadQuat.h>
6
7namespace al {
8class LiveActor;
9}
10
11struct PlayerHackStartShaderParam {
12 PlayerHackStartShaderParam(bool a1, f32 a2, s32 a3, s32 a4) : _0(a1), _4(a2), _8(a3), _c(a4) {}
13
14 bool _0;
15 f32 _4;
16 s32 _8;
17 s32 _c;
18};
19
20static_assert(sizeof(PlayerHackStartShaderParam) == 0x10, "PlayerHackStartShaderParam Size");
21
22class PlayerHackStartShaderCtrl {
23public:
24 PlayerHackStartShaderCtrl(al::LiveActor* host, PlayerHackStartShaderParam* param);
25 void setHost(al::LiveActor* host);
26 void start();
27 void update();
28 void end();
29
30private:
31 al::LiveActor* mParent;
32 s32 mTime;
33 bool mIsActive;
34 sead::Color4f mColor;
35 sead::Quatf mQuat;
36 PlayerHackStartShaderParam* mParam;
37};
38