1#include <game/bases/d_a_en_shell.hpp>
2#include <game/bases/d_effect.hpp>
7class daEnTogezoBase_c :
public daEnShell_c {
10 virtual ~daEnTogezoBase_c() {}
19 virtual bool hitCallback_Slip(
dCc_c *self,
dCc_c *other) {
return false; }
20 virtual bool createIceActor();
34 virtual bool setPlayerDamage(
dActor_c *actor);
35 virtual bool specialFumiProc(
dActor_c *actor);
36 virtual bool specialFumiProc_Yoshi(
dActor_c *actor);
37 virtual bool isFumiInvalid()
const {
return !
mIsFlipped; }
38 virtual void setAfterSleepState();
39 virtual bool turnProc();
40 virtual bool isDieShell();
42 virtual void setEnemyTurn() {
48 virtual void initialize() {}
49 virtual bool isCullCheckOk() {
return true; }
50 virtual void calcCatchPos() {}
62 bool isBlockHitDeath()
const;
63 void landonEffect(
float height);
81 ACTOR_PARAM_CONFIG(DieOnBlockHit, 4, 1);
91 static const float smc_WALK_SPEED_DAT[2];
92 static const s16 smc_ROTATE_SPEED_DAT[2];
93 static const s16 smc_ANGLE_Y[2];
bool isState(const sStateIDIf_c &other) const
Checks if the actor is currently in the given state.
The minimum required implementation for a stage actor.
Collider ("Collision Check") class - handles collisions between actors.
virtual void changeState(const sStateIDIf_c &newState)
Changes the actor's state to the given state.
bool mIsFlipped
Whether the shell is flipped upside down from a block hit.
nw4r::g3d::ResFile mTogezoResFile
The resource file for the spiny.
m3d::anmChr_c mTogezoAnim
The spiny's animation.
u32 mChangeTimer
Timer used for transforming between spiny and rolled up spiny.
u32 mPipoTouchedGround
Whether the rolled up spiny has touched the ground since rolling up.
virtual int doDelete()
do method for the delete operation.
virtual void deleteReady()
Informs the base that it's about to be deleted.
virtual int draw()
do method for the draw operation.
static sFStateID_c< daEnTogezoBase_c > StateID_Walk
Walking on the ground.
virtual int create()
do method for the create operation.
m3d::smdl_c mPaipoMdl
The model for the rolled up spiny.
virtual void block_hit_init()
Callback for when a block directly beneath the actor is hit.
virtual int execute()
do method for the execute operation.
nw4r::g3d::ResFile mPaipoResFile
The resource file for the rolled up spiny.
dHeapAllocator_c mAllocator
The allocator used for the resources of this actor.
virtual void finalUpdate()
Code to be executed after all actors' execute operation has run.
virtual bool setEatSpitOut(dActor_c *eatingActor)
Callback for when the actor is about to be spat out.
s16 mPipoRollSpeed
The speed at which the spiny unrolls.
m3d::mdl_c mTogezoModel
The spiny model.
u8 mPipoDir
The direction the rolled up spiny is moving. Used to determine if the spiny should turn around when i...
static sFStateID_c< daEnTogezoBase_c > StateID_Turn
Turning around while walking.
#define STATE_FUNC_DECLARE(class, name)
Declares a state.
#define STATE_VIRTUAL_FUNC_DECLARE(class, name)
Declares a virtual state.
A structure that contains information about a collider.