1#pragma once
2
3#include "Library/LiveActor/LiveActor.h"
4
5namespace al {
6class CollisionObj;
7class CameraTicket;
8class MtxConnector;
9} // namespace al
10
11class Shine;
12
13class WeightSwitch : public al::LiveActor {
14public:
15 WeightSwitch(const char* actorName);
16
17 void init(const al::ActorInitInfo& info) override;
18 void initAfterPlacement() override;
19 void control() override;
20
21 void exeOffWait();
22 void exeOn();
23 void exeOnDemoWaitStart();
24 void exeOnDemoWaitCameraInterpoling();
25 void exeOnDemo();
26 void exeOnWait();
27 void exeOff();
28
29 bool receiveMsg(const al::SensorMsg* message, al::HitSensor* other,
30 al::HitSensor* self) override;
31
32private:
33 Shine* mShine = nullptr;
34 al::CollisionObj* mCollisionBody = nullptr;
35 al::CameraTicket* mDemoCamera = nullptr;
36 al::MtxConnector* mMtxConnector = nullptr;
37 s32 mWeight = 0;
38};
39