1#pragma once
2
3#include "Library/LiveActor/LiveActor.h"
4
5class ItemGenerator;
6
7class TrampleBush : public al::LiveActor {
8public:
9 TrampleBush(const char* actorName);
10
11 void init(const al::ActorInitInfo& info) override;
12 void initAfterPlacement() override;
13
14 void attackSensor(al::HitSensor* self, al::HitSensor* other) override;
15 bool receiveMsg(const al::SensorMsg* message, al::HitSensor* other,
16 al::HitSensor* self) override;
17
18 inline bool isReady();
19 inline bool isSensorOnSwitch(const al::SensorMsg* message, al::HitSensor* other);
20
21 void exeWait();
22 void exeReaction();
23 void exeTrample();
24
25private:
26 ItemGenerator* mItemGenerator = nullptr;
27 sead::Vector3f mAttackerTrans;
28};
29