3#include <collision/ActorCollisionDrcTouchCallback.h>
4#include <enemy/EnemyBoyoMgr.h>
5#include <actor/EatCallback.h>
6#include <effect/EffectObj.h>
7#include <enemy/CarryEnemy.h>
8#include <enemy/EnemyChibiYoshiEatData.h>
30 void ccOnTouch(ActorCollisionCheck* cc,
const sead::Vector2f& pos)
override;
52 static_assert(
sizeof(
WaterCheckInfo) == 0x10,
"WaterCheckInfo size mismatch");
56 Shell(
const ActorCreateParameter& param);
103 bool etcDamageCheck(ActorCollisionCheck* cc_self, ActorCollisionCheck* cc_other)
override;
115 bool hitCallback_Slip(ActorCollisionCheck* cc_self, ActorCollisionCheck* cc_other)
override;
117 bool hitCallback_Spin(ActorCollisionCheck* cc_self, ActorCollisionCheck* cc_other)
override;
253 return mDrcTouchCallback;
320static_assert(
sizeof(
Shell) == 0x1A90,
"Shell size mismatch");
bool ccSetTouchNormal(ActorCollisionCheck *cc, const sead::Vector2f &pos) override
DrcTouchCB()
Definition Shell.h:22
u32 _4
Definition Shell.h:33
void ccOnTouch(ActorCollisionCheck *cc, const sead::Vector2f &pos) override
sead::Vector3u _18c0
Definition Shell.h:259
State mState
Definition Shell.h:257
EnemyChibiYoshiEatData mChibiYoshiEatData
Definition Shell.h:287
void blockHitInit_() override
void postCreate(MainState state) override
Callback invoked unconditionally after the create phase completes. It executes even if preCreate() by...
bool _18da
Definition Shell.h:264
u8 _18f1
Definition Shell.h:275
bool hitCallback_YoshiHipAttk(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
u8 _19a0
Definition Shell.h:303
bool hitCallback_Spin(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
u32 _18ec
Definition Shell.h:273
EffectObj _19bc
Definition Shell.h:313
u32 _19a4
Definition Shell.h:307
void fumiSE(Actor *player) override
bool hitCallback_Shell(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
void vsChibiYoshiHitCheck_Normal(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
u32 _18dc
Definition Shell.h:266
void vsEnemyHitCheck_Normal(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
void setPutOnChangeState(Actor *player) override
u8 _19a1
Definition Shell.h:304
u32 _1990
Definition Shell.h:299
u32 _1900
Definition Shell.h:281
u32 _1988
Definition Shell.h:294
UniqueID _18e8
Definition Shell.h:272
u32 _190c
Definition Shell.h:284
SEAD_RTTI_OVERRIDE(Shell, CarryEnemy)
void allEnemyDeathEffSet() override
bool hitCallback_HipAttk(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
bool hitCallback_Slip(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
u8 _198c
Definition Shell.h:295
void fumiScoreSet(Actor *player) override
u32 _18cc
Definition Shell.h:260
u32 _18d4
Definition Shell.h:262
void waterSplashEffect(const sead::Vector3f &) override
u32 _1994
Definition Shell.h:300
void returnState_Ice() override
void endFunsui(f32 speed_y) override
f32 _199c
Definition Shell.h:302
f32 _18e4
Definition Shell.h:271
u8 _18f3
Definition Shell.h:277
bool mBig
Definition Shell.h:267
u32 _18d0
Definition Shell.h:261
WaterCheckInfo _19a8
Definition Shell.h:308
u8 _198e
Definition Shell.h:297
void setIceAnm() override
EnemyBoyoMgr mBoyoMgr
Definition Shell.h:289
void setCarryFall(Actor *, s32) override
EatCallback mYoshiEatData
Definition Shell.h:286
u8 _19bb
Definition Shell.h:312
bool etcDamageCheck(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
u8 _1a8d
Definition Shell.h:316
u8 _19a3
Definition Shell.h:306
bool _18f0
Definition Shell.h:274
DrcTouchCB getDrcTouchCallback() const
Definition Shell.h:251
void vsYoshiHitCheck_Normal(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
u8 _198d
Definition Shell.h:296
State
Definition Shell.h:39
@ cState_Invalid
Definition Shell.h:40
@ cState_InShell
Definition Shell.h:41
@ cState_Flying
Definition Shell.h:43
@ cState_Walking
Definition Shell.h:42
u8 _18db
Definition Shell.h:265
DECLARE_STATE_VIRTUAL_ID_OVERRIDE(Shell, DieFall)
f32 _1998
Definition Shell.h:301
void vsPlayerHitCheck_Normal(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
u8 _18f2
Definition Shell.h:276
u8 _1a8f
Definition Shell.h:318
u8 _1a8e
Definition Shell.h:317
u8 _198f
Definition Shell.h:298
bool hitCallback_ChibiYoshiLight(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
u32 _1910
Definition Shell.h:285
void fumiJumpSet(Actor *player) override
State mPreviousState
Definition Shell.h:258
void poisonSplashEffect(const sead::Vector3f &) override
u32 _1908
Definition Shell.h:283
bool _19b8
Definition Shell.h:309
bool preExecute() override
Callback invoked before the execute operation.
u8 _19b9
Definition Shell.h:310
u8 _1984
Definition Shell.h:290
u8 _19ba
Definition Shell.h:311
void yoshiFumiScoreSet(Actor *player) override
u8 _19a2
Definition Shell.h:305
u8 _1986
Definition Shell.h:292
void postExecute(MainState state) override
Callback invoked unconditionally after the execute phase completes. It executes even if preExecute() ...
u8 _1985
Definition Shell.h:291
bool hitCallback_PenguinSlide(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
virtual u32 vf58C(u32, f32)
u32 _1904
Definition Shell.h:282
u32 _18f8
Definition Shell.h:279
u8 _18e2
Definition Shell.h:269
void yoganSplashEffect(const sead::Vector3f &) override
EffectObj _1a24
Definition Shell.h:314
u32 _18fc
Definition Shell.h:280
u8 _1987
Definition Shell.h:293
bool isFunsui() const override
bool _18e1
Definition Shell.h:268
void setThrowChangeState(Actor *player, bool hard) override
Shell(const ActorCreateParameter ¶m)
u32 _18f4
Definition Shell.h:278
u16 _18d8
Definition Shell.h:263
u8 _18e3
Definition Shell.h:270
void beginFunsui() override
DrcTouchCB mDrcTouchCallback
Definition Shell.h:288
virtual void vf57C(Actor *)
u8 _1a8c
Definition Shell.h:315
u32 _c
Definition Shell.h:50
u8 _0
Definition Shell.h:48
sead::Vector2f _4
Definition Shell.h:49