3#include "game/field/obj/ObjectCollidable.hh"
18 [[nodiscard]]
u32 loadFlags()
const override {
22 void loadAnims()
override;
23 void createCollision()
override;
29 Kart::Reaction onCollision(
Kart::KartObject *kartObj, Kart::Reaction reactionOnKart,
30 Kart::Reaction reactionOnObj,
EGG::Vector3f &hitDepth)
override;
32 virtual void calcRaised();
49 void checkCollisionLowering();
56 f32 m_loweringVelocity;
61 static constexpr f32 ANM_RATE = 2.0f;
72 [[nodiscard]] ObjectId id()
const override {
73 return ObjectId::Press;
77 [[nodiscard]]
u32 loadFlags()
const override {
82 [[nodiscard]]
const char *getResources()
const override {
87 [[nodiscard]]
const char *getKclName()
const override {
91 void calcRaised()
override;
93 void setWindup(
bool isSet) {
94 m_startingWindup = isSet;
100 bool m_startingWindup;
The stompers on the left and right side of the first TF factory room.
Represents the Toad's Factory stompers.
@ WindUp
Rising up a bit before stomping down.
@ Lowered
Contacting the floor.
u32 m_windUpTimer
Number of frames remaining in windup state.
bool m_startedLowered
Used to induce crush effect even if it hit floor this frame.
u32 m_raisedTimer
Number of frames remaining in raised state.
f32 getCollisionRadius() const override
Finds the radius that fits fully in a BoxColUnit.
bool m_startingRise
Used to delay state change by 1 frame.
The highest level abstraction for a kart.