3#include <actor/EatCallback.h>
4#include <collision/ActorBgCollisionEnemyCheck.h>
5#include <collision/ActorCollisionDrcTouchCallback.h>
6#include <effect/EffectObj.h>
7#include <enemy/Enemy.h>
8#include <enemy/EnemyBoyoMgr.h>
10#include <math/seadMatrix.h>
19 void ccOnTouch(ActorCollisionCheck* cc,
const sead::Vector2f& pos)
override;
21static_assert(
sizeof(BrosDrcTouchCB) ==
sizeof(ActorCollisionDrcTouchCallback));
55 bool setDamage(ActorCollisionCheck* cc_self, ActorCollisionCheck* cc_other)
override;
69 bool hitCallback_Star(ActorCollisionCheck* cc_self, ActorCollisionCheck* cc_other)
override;
71 bool hitCallback_Spin(ActorCollisionCheck* cc_self, ActorCollisionCheck* cc_other)
override;
75 bool hitCallback_Ice(ActorCollisionCheck* cc_self, ActorCollisionCheck* cc_other)
override;
85 DECLARE_STATE_VIRTUAL_ID_OVERRIDE(
BrosBase, DieFumi)
188 changeState(StateID_AirAttack);
203 mRepeatedAttackCount = 1;
204 changeState(StateID_Attack);
291static_assert(
sizeof(
BrosBase) == 0x3090);
bool hitCallback_HipAttk(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
sead::Vector3f mStartPos
Definition BrosBase.h:273
EffectObj mEffect
Definition BrosBase.h:277
bool createIceActor() override
Callback for spawning ice blocks when frozen by an ice flower.
s32 mJumpCnt
Definition BrosBase.h:262
void vsYoshiHitCheck_Normal(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
virtual void entryHIO()
Definition BrosBase.h:239
void returnState_Ice() override
u32 _1984
Definition BrosBase.h:265
Result doDelete() override
void vsPlayerHitCheck_Normal(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
s32 mMoveCnt
Definition BrosBase.h:263
virtual void setAtkTimer()
Definition BrosBase.h:155
void calcMdl_Base() override
virtual void initMoveCnt()
Definition BrosBase.h:210
u32 mRepeatedAttackCount
Definition BrosBase.h:266
EnemyBoyoMgr mBoyoMgr
Definition BrosBase.h:287
virtual f32 getAttackFrm() const
Definition BrosBase.h:138
ActorBgCollisionEnemyCheck mBgCheckEnemy
Definition BrosBase.h:280
bool hitCallback_YoshiBullet(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
u32 _1990
Definition BrosBase.h:268
virtual void removeHIO()
Definition BrosBase.h:243
virtual void setSpeed()
Definition BrosBase.h:143
virtual void setAttackAnm()
void allEnemyDeathEffSet() override
virtual void vf64C()
Definition BrosBase.h:228
u32 _19a0
Definition BrosBase.h:272
virtual f32 getCreateWeaponFrm() const
Definition BrosBase.h:133
virtual void setJumpCnt()
Definition BrosBase.h:177
bool hitCallback_Star(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
virtual void setJump()
Definition BrosBase.h:181
u8 _3089
Definition BrosBase.h:289
JointBlendModel * mBlendModel
Definition BrosBase.h:255
f32 _1998
Definition BrosBase.h:270
bool hitCallback_ChibiYoshiLight(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
virtual void initPosLv()
Definition BrosBase.h:215
u32 _1a48
Definition BrosBase.h:279
virtual void initType()
Definition BrosBase.h:219
sead::Matrixf mBone14Transform
Definition BrosBase.h:259
virtual void beginAttk()
Definition BrosBase.h:201
u32 _1980
Definition BrosBase.h:264
u32 _198c
Definition BrosBase.h:267
u8 _3088
Definition BrosBase.h:288
bool _2f39
Definition BrosBase.h:284
sead::Matrixf mBone4Transform
Definition BrosBase.h:257
u8 mMoveDir
Definition BrosBase.h:274
sead::Matrixf mBone0Transform
Definition BrosBase.h:258
s32 mAtkTimer
Definition BrosBase.h:261
~BrosBase() override
Definition BrosBase.h:36
virtual bool isAttackOK() const
Definition BrosBase.h:196
virtual s32 getColor()
Definition BrosBase.h:150
bool hitCallback_Ice(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
bool setDamage(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
virtual void calcMoveDir()
Result create() override
Main initialization/setup callback for the actor.
virtual void weaponAttack()
Definition BrosBase.h:173
u32 _2f34
Definition BrosBase.h:282
u32 _199c
Definition BrosBase.h:271
bool draw() override
Main rendering callback for the actor. Called every frame (the game runs at exactly 60 FPS).
f32 _1994
Definition BrosBase.h:269
EatCallback mEatData
Definition BrosBase.h:278
virtual void vf654()
Definition BrosBase.h:232
ActorCollisionCheck mCollisionCheck2
Definition BrosBase.h:285
virtual void setWeaponPos()
Definition BrosBase.h:165
u32 _2f30
Definition BrosBase.h:281
virtual sead::Vector3f getAdjustOffset()
virtual void beginJump()
Definition BrosBase.h:185
sead::Matrixf mBone11Transform
Definition BrosBase.h:260
bool _19b8
Definition BrosBase.h:276
u8 _2f38
Definition BrosBase.h:283
bool hitCallback_Spin(ActorCollisionCheck *cc_self, ActorCollisionCheck *cc_other) override
void setIceAnm() override
virtual bool isInvalidBg()
Definition BrosBase.h:191
bool execute() override
Main execution/logic callback for the actor. Called every frame (the game runs at exactly 60 FPS).
virtual bool checkAtkArea()
virtual void weaponCreate()
Definition BrosBase.h:169
sead::Matrixf mBone6Transform
Definition BrosBase.h:256
BrosDrcTouchCB mDrcTouchCallback
Definition BrosBase.h:286
UniqueID mWeaponID
Definition BrosBase.h:275
bool ccSetTouchNormal(ActorCollisionCheck *cc, const sead::Vector2f &pos) override
void ccOnTouch(ActorCollisionCheck *cc, const sead::Vector2f &pos) override
Definition JointBlendModel.h:7