#include <ActorState.h>
Inherits ActorCollision.
Inherited by BossDemo, CarryObjBase, FireBallBase, Freezer, Ice, IceBallBase, KillerHoudai, and QuestPrizeItem.
Public Member Functions | |
| ActorState (const ActorCreateParameter ¶m) | |
| ~ActorState () override | |
| void | executeState () |
| void | changeState (const StateID &state_id) |
| bool | isState (const StateID &state_id) const |
| bool | isOldState (const StateID &state_id) const |
| const StateID * | getState () const |
| Public Member Functions inherited from ActorCollision | |
| virtual void | setFunsuiFlag (bool enable) |
| virtual bool | getFunsuiFlag () const |
| virtual void | beginFunsui () |
| virtual void | endFunsui (f32 speed_y) |
| virtual bool | isFunsui () const |
| virtual void | setFunsuiJump (f32 speed) |
| const ActorBgCollisionCheck * | getBcConstPtr () const override |
| virtual void | setFunsuiPos (const sead::Vector2f &dst) |
| virtual void | setFunsuiSpeedY (f32 speed) |
| Public Member Functions inherited from Actor | |
| virtual void | setPlrNo (s32 id) |
| s8 | getPlrNo () const |
| virtual void | removeCc () |
| virtual void | reviveCc () |
| virtual void | setCarryFall (Actor *, s32) |
| virtual bool | isSpinLiftUpEnable () const |
| virtual void | setSpinLiftUpActor (Actor *player) |
| virtual void | startGroupid () |
| Called by Group Controller when "activating" the target group. | |
| virtual void | stopGroupid () |
| Called by Group Controller when "deactivating" the target group. | |
| bool | checkCarried (s32 *player_no) const |
| s32 | getComboCnt () const |
| void | clrComboCnt () |
| void | incComboCnt () |
| void | slideComboSE (s32 combo_cnt, bool combo_type_2) |
| s32 | searchNearPlayer (sead::Vector2f *out) const |
| DirType | getDir2PlayerLR (const sead::Vector3f &position) const |
| DirType | getDir2PlayerUD (const sead::Vector3f &position) const |
| DirType | getDir2PlayerLR () |
| DirType | getDir2PlayerUD () |
| bool | actorExecCullCheck (u16 flag) |
| Checks if the actor is out of gameplay and optionally deletes it. | |
| virtual void | allEnemyDeathEffSet () |
| virtual void | waterSplashEffect (const sead::Vector3f &pos) |
| virtual void | yoganSplashEffect (const sead::Vector3f &pos) |
| virtual void | yoganWaveSplashEffect (const sead::Vector3f &pos) |
| virtual void | poisonSplashEffect (const sead::Vector3f &pos) |
| f32 | getEffectZpos_ () const |
| bool | checkEatenYoshi () const |
| void | deleteActor_ (bool manual_deleted) |
| Schedule this actor for deletion on the next frame. | |
| ActorCollisionCheck & | getCollisionCheck () |
| const ActorCollisionCheck & | getCollisionCheck () const |
| bool | isExecEnable () const |
| bool | isDrawEnable () const |
| DirType | getDirection () const |
| void | setDirection (DirType dir) |
| u8 | getLayer () const |
| sead::BitFlag8 | getCollisionMask () const |
| f32 | getMaxSpeedF () const |
| void | setMaxSpeedF (f32 maxSpeedF) |
| f32 | getMaxFallSpeed () const |
| void | setMaxFallSpeed (f32 maxFallSpeed) |
| f32 | getGravity () const |
| The current vertical acceleration. | |
| void | setGravity (f32 gravity) |
| f32 | getPow () const |
| The current horizontal acceleration. | |
| void | setPow (f32 pow) |
| sead::Vector3f & | getPos () |
| const sead::Vector3f & | getPos () const |
| sead::Vector2f & | getPos2D () |
| const sead::Vector2f & | getPos2D () const |
| sead::Vector3f | getCenterPos () const |
| sead::Vector2f | getCenterPos2D () const |
| f32 | getCenterX () const |
| f32 | getCenterY () const |
| f32 | getCenterZ () const |
| sead::Vector3f & | getSpeedVec () |
| const sead::Vector3f & | getSpeedVec () const |
| sead::Vector3f & | getSpeedMaxVec () |
| const sead::Vector3f & | getSpeedMaxVec () const |
| sead::Vector3f & | getScale () |
| const sead::Vector3f & | getScale () const |
| Angle3 & | getAngle () |
| const Angle3 & | getAngle () const |
| const sead::Vector2f & | getPosDelta () const |
| ActorKind | getKind () const |
| void | setKind (ActorKind kind) |
| bool | getManualDeletedFlag () const |
| CarryFlag | getCarryFlag () const |
| u8 | getSwitchFlag0 () const |
| u8 | getSwitchFlag1 () const |
| u32 | getBlockHitTimer () const |
| DirType | getBlockHitDirection () const |
| void | setBlockHitTimer (u32 time) |
| void | setBlockHitDirection (DirType dir) |
| u32 | getProfFlag () const |
| f32 | getSpeedF () const |
| void | setSpeedF (f32 speedF) |
| f32 | getAddSpeedF () const |
| void | setAddSpeedF (f32 speedF) |
| Public Member Functions inherited from ActorBase | |
| bool | isActive () const |
| Whether this actor has been successfully created and is now active. | |
| void | deleteRequest () |
| Schedule this actor for deletion on the next frame. | |
| bool | isRequestedDelete () const |
| Whether this actor has been scheduled for deletion on the next frame. | |
| UniqueID | getUniqueID () const |
| The unique identifier handle for this actor. | |
| s32 | getProfileID () const |
| The specific profile ID which this actor was instantiated from. | |
| Profile * | getProfile () const |
| The specific profile which this actor was instantiated from. | |
| bool | isCreatedImmediately () const |
Whether the actor was created with ActorMgr::createImmediately(), rather than deferred with ActorMgr::createLater(). | |
| bool | isMapActor () const |
Whether the actor was spawned from the level with ActorCreateMgr, rather than dynamically spawned by another actor. | |
| u32 | getParam0 () const |
| Level designer configuration. Also known as "nybbles" or "spritedata". | |
| u32 | getParam1 () const |
| Level designer configuration. Also known as "nybbles" or "spritedata". | |
| ActorParameterEx1 | getParamEx () const |
| Extra level designer configuration. Also known as "nybbles" or "spritedata". | |
| const List & | getChildList () const |
sead::OffsetList used for holding child actors spawned by this actor. Managed automatically if param.parent_id is set when spawning. | |
| sead::Heap * | getActorHeap () const |
| The personal heap for this actor. | |
| ActorBase * | getParent () const |
| template<typename T> | |
| T * | getParent () const |
The parent actor pointer if this actor is a child, nullptr otherwise. | |
| void | removeChild (ActorBase *child) |
| Disconnects a child from this actor's family tree. | |
| void | getCoinSE (s32 player_no, const sead::Vector3f &position) |
| Plays the coin-get sound. | |
| ActorBase (const ActorCreateParameter ¶m) | |
| Constructs an actor from configuration data. | |
| virtual | ~ActorBase () |
| Destroys the actor and orphans all of its children. | |
| virtual bool | preCreate () |
Callback invoked before the create operation. | |
| virtual Result | create () |
| Main initialization/setup callback for the actor. | |
| virtual bool | execute () |
| Main execution/logic callback for the actor. Called every frame (the game runs at exactly 60 FPS). | |
| virtual void | lastExecute () |
| Callback which is called after all other actors have finished executing for this frame. | |
| virtual bool | draw () |
| Main rendering callback for the actor. Called every frame (the game runs at exactly 60 FPS). | |
| virtual void | postDraw (MainState state) |
Callback invoked unconditionally after the draw phase completes. It executes even if preDraw() bypassed the main draw() operation. | |
| virtual bool | preDestroy () |
Callback invoked before the delete operation. | |
| virtual void | postDestroy (MainState state) |
Unconditionally called callback for after the delete operation. | |
Protected Attributes | |
| FStateMgr< ActorState > | mStateMgr |
| Protected Attributes inherited from ActorCollision | |
| ActorBgCollisionObjCheck | mBgCheckObj |
| f32 | mJumpSpeedF |
| f32 | mJumpAccelF |
| sead::Vector3f * | mWaterCheckPos |
| bool | mUseWaterTypeOverride |
| WaterType | mWaterTypeOverride |
| f32 | _1774 |
| sead::Vector2f | mBgSpeed |
| sead::Vector2f | mBgSpeedPrev |
| f32 | mWaterSpeedMaxY |
| f32 | mWaterMaxFallSpeed |
| f32 | mWaterGravity |
| bool | mCheckWaterNeeded |
| bool | mIsInQuicksand |
| bool | mIsSubmerged |
| bool | mNoWaterCalc |
| u8 | mWaterCalcType |
| u8 | mNoLavaSplashTimer |
| bool | mFunsuiFlag |
| bool | mIsOnGround |
| u32 | mJumpFrame |
| Protected Attributes inherited from Actor | |
| DirType | mDirection |
| s8 | mPlayerNo |
| s8 | mControllerLytPlayerNo |
| u8 | mLayer |
| sead::BitFlag8 | mCollisionMask |
| f32 | mSpeedF |
| f32 | mMaxSpeedF |
| f32 | mMaxFallSpeed |
| f32 | mGravity |
| f32 | mPow |
| sead::Vector3f | mPos |
| sead::Vector3f | mSpeed |
| sead::Vector3f | mSpeedMax |
| sead::Vector3f | mScale |
| Angle3 | mAngle |
| Angle3 | mAnglePrev |
| sead::Vector2f | mPosDelta |
| ActorCollisionCheck | mCollisionCheck |
| sead::Vector2f | mVisibleAreaOffset |
| sead::Vector2f | mVisibleAreaSize |
| sead::Vector2f | mSize |
| ActorCulling::ActorCullUsable | mCullLimit |
| u8 | mAreaNo |
| u8 | mActorKind |
| bool | mIsExecEnable |
| bool | mIsDrawEnable |
| bool | mManualDeletedFlag |
| u8 | _211 |
| u8 | mCarryFlag |
| u8 | mSwitchFlag0 |
| u8 | mSwitchFlag1 |
| u16 | mCreateFlag |
| u32 | mBlockHitTimer |
| DirType | mBlockHitDirection |
| u8 | _220 |
| DirType | mCarryDirection |
| u32 | mThrowPlayerNo |
| s32 | mComboCnt |
| u32 | mProfFlag |
| sead::Vector3f | mCenterOffset |
| sead::Vector3f | mPosPrev |
| sead::Vector3f | mPosPrevPostExec |
| sead::Vector3f | mPosPrev2 |
| EatCallback * | mEatCallbackPtr |
| ChibiEatCallback * | mChibiEatCallbackPtr |
| PropelParts * | mPropelParts |
| u8 * | _270 |
| f32 | mAddSpeedF |
| ChibiYoshiAwaData * | mChibiYoshiAwaDataPtr |
| Protected Attributes inherited from ActorBase | |
| sead::Heap * | mActorHeap |
Personal heap for this actor of type sead::FrameHeap. Capacity of 0x20200, but profiles in the player whitelist get 0x1A0200. | |
| UniqueID | mUniqueID |
| The unique identifier handle for this actor. | |
| Profile * | mActorProfile |
| The specific profile which this actor was instantiated from. | |
| bool | mCreatedImmediately |
Whether the actor was created with ActorMgr::createImmediately(), rather than deferred with ActorMgr::createLater(). | |
| bool | mIsMapActor |
Whether the actor was spawned from the level with ActorCreateMgr, rather than dynamically spawned by another actor. | |
| bool | mIsActive |
Whether the create operation has completed and the actor is executing. | |
| bool | mDeleteRequestFlag |
| Whether to delete this actor on the next frame. | |
| u32 | mParam0 |
| Level designer configuration. Also known as "nybbles" or "spritedata". | |
| u32 | mParam1 |
| Level designer configuration. Also known as "nybbles" or "spritedata". | |
| ActorParameterEx1 | mParamEx |
| Extra level designer configuration. Also known as "nybbles" or "spritedata". | |
| List | mChildList |
sead::OffsetList used for holding child actors spawned by this actor. Managed automatically if param.parent_id is set when spawning. | |
| sead::ListNode | mChildNode |
Implementation detail. Used to track our position in the parent's mChildList. | |
| ActorBase * | mParent |
The parent actor if this actor is a child. Automatically set to nullptr if orphaned. | |
| sead::ListNode | mExecuteNode |
Implementation detail. Used to track our position in ActorMgr lists. | |
| sead::ListNode | mDrawNode |
Implementation detail. Used to track our position in ActorMgr mDrawManage list. | |
| sead::BitFlag32 | mFlag |
Properties which control execution policy during events. See ActorBase::Flag enum. | |
Additional Inherited Members | |
| Public Types inherited from Actor | |
| enum | ActorKind { cActorKind_Generic = 0 , cActorKind_Player , cActorKind_Yoshi , cActorKind_Enemy , cActorKind_ChibiYoshi } |
| enum | CarryFlag { cCarryFlag_Release = 1 << 0 , cCarryFlag_Throw = 1 << 1 , cCarryFlag_ThrowHard = 1 << 2 , cCarryFlag_None = 0 , cCarryFlag_All = cCarryFlag_Release | cCarryFlag_Throw | cCarryFlag_ThrowHard } |
| enum | ExecCullFlag : u16 { cExecCullFlag_SkipNone = 0 , cExecCullFlag_SkipDeletion = 1 << 1 , cExecCullFlag_SkipCameraCheck = 1 << 2 , cExecCullFlag_SkipRideCheck = 1 << 3 , cExecCullFlag_SkipTottenCheck = 1 << 4 } |
| Flags to pass to actorExecCullCheck to skip checks or actions during the evaluation. More... | |
| Public Types inherited from ActorBase | |
| enum | MainState { cState_None = 0 , cState_Failed , cState_Success , cState_Wait } |
| Represents the execution state of a main operation, and whether it was skipped. More... | |
| enum | Result { cResult_Wait = 0 , cResult_Success , cResult_Failed } |
| Defines signals to pass to ActorMgr when performing create and delete operations on the actor. More... | |
| enum | Flag { cFlag_NoEventFreeze = 1 << 1 , cFlag_NoNormalEventFreeze = 1 << 2 } |
| Properties which control execution policy during events. More... | |
| typedef sead::OffsetList< ActorBase > | List |
| Protected Types inherited from ActorCollision | |
| enum | BgCheckFlag { cBgCheckFlag_Foot = 1 << 0 , cBgCheckFlag_Head = 1 << 1 , cBgCheckFlag_Wall = 1 << 2 , cBgCheckFlag_None = 0 } |
| enum | WaterCalcType { cWaterCalcType_Normal = 0 , cWaterCalcType_EnablePreCheck , cWaterCalcType_ForceOut } |
| enum | QuakeType { cQuakeType_Normal = 0 , cQuakeType_Big , cQuakeType_Small } |
| Protected Member Functions inherited from ActorCollision | |
| ActorCollision (const ActorCreateParameter ¶m) | |
| void | postCreate (MainState state) override |
Callback invoked unconditionally after the create phase completes. It executes even if preCreate() bypassed the main create() operation. | |
| bool | preExecute () override |
Callback invoked before the execute operation. | |
| void | postExecute (MainState state) override |
Callback invoked unconditionally after the execute phase completes. It executes even if preExecute() bypassed the main execute() operation. | |
| Result | destroy () override |
| Main deletion callback for the actor. | |
| virtual bool | isReactQuake () |
Determines whether setQuake_() should be called. | |
| virtual void | reactQuake (QuakeType type) |
| virtual void | setDeathInfoSmoke (const Actor *actor) |
| virtual bool | setDrcTouchActorDeath (const sead::Vector3f &pos) |
| virtual bool | checkLavaDamage_ (f32 surface_pos_y) |
| virtual bool | checkPoisonDamage_ (f32 surface_pos_y) |
| virtual void | getDrawRange (sead::BoundBox2f *box) |
| BgCheckFlag | actorBgNormalCheck () |
| bool | actorBgNormalCheckFoot () const |
| bool | actorBgNormalCheckWall () const |
| void | resetObjBgPos (BgCollision &bg_collision) |
| bool | checkRideActor (const BgCollision &bg_collision) const |
| void | calcSpeedY_ () |
| void | calcFallSpeed_ () |
| void | posMove_ () |
| void | calcLiftSpeed () |
| void | checkLiftSpeed () |
| WaterType | checkWaterByWaterCheckPos (f32 *surface_pos_y) |
| void | onWaterFlag () |
| bool | checkPressBg_ () |
| void | landFoot (f32 y_check_distance, const ActorBgCollisionCheck::Sensor *foot_sensor) |
| void | landFootSimple (f32 y_check_distance, const ActorBgCollisionCheck::Sensor *foot_sensor, bool extended, bool force) |
| void | registerAlphaCheckAreaHUD () |
| bool | checkForSuitableGround_ (const sead::Vector2f &offset) const |
| Protected Member Functions inherited from Actor | |
| Actor (const ActorCreateParameter ¶m) | |
| ~Actor () override | |
| bool | preDraw () override |
Callback invoked before the draw operation. | |
| virtual bool | actorDrawCullCheck () |
| virtual void | blockHitInit () |
| void | waterSplashCommon_ (const sead::Vector3f &pos, s32 effect_id, WaveType wave_type, const char *sound_label) |
| void | setAreaNo_ () |
| void | calcSpeedX_ () |
| void | calcSpeedY_ (f32 accel_y, f32 speed_max_y) |
| void | calcSpeedY_ () |
| void | calcSpeedF_ (f32 accelF, f32 max_speedF) |
| void | calcSpeedF_ () |
| void | calcFallSpeed_ (f32 accel_y, f32 max_fall_speed) |
| void | calcFallSpeed_ () |
| void | posMove_ (sead::Vector3f &delta) |
| void | posMove_ (sead::Vector2f &delta_xy, f32 delta_z) |
| void | posMove_ () |
| void | carryFukidashiCheck_ (FukidashiType action) |
| void | carryFukidashiCheck_ (FukidashiType action, const sead::Vector2f &range) |
| void | carryFukidashiCancel_ (FukidashiType action, s32 player_no) |
| bool | checkPressBgLR_ (const ActorBgCollisionCheck &bc) |
| bool | checkPressBgUD_ (const ActorBgCollisionCheck &bc) |
| bool | setBreakPressObjBgLR_ (const ActorBgCollisionCheck &bc) |
| bool | setBreakPressObjBgUD_ (const ActorBgCollisionCheck &bc) |
| bool | checkInternalIceBlock_ (const ActorBgCollisionCheck &bc) |
| bool | setEnemyIceBreakReq_ (const BgCollision *bg_collision) |
| bool | setDrcBlockBreakReq_ (const BgCollision *bg_collision) |
| void | setPosSuddenly_ (const sead::Vector3f &position) |
| Actor * | searchCarryFukidashiPlayer_ (FukidashiType action) const |
| bool | isEnablePressObjBg_ (const BgCollision *bg_collision) const |
| bool | checkPressBgWall_ (const ActorBgCollisionCheck &bc, DirType direction) const |
| bool | checkPressBgHead_ (const ActorBgCollisionCheck &bc) const |
| bool | checkPressBgFoot_ (const ActorBgCollisionCheck &bc) const |
| bool | isBreakPressObjBg_ (const BgCollision *bgcol_approaching_side, const BgCollision *bgcol_fixed_side) const |
| u32 | checkAvailableCullCheckOnQuest (const sead::BoundBox2f &src_range) |
| Protected Member Functions inherited from ActorBase | |
| void | setActive_ (bool active) |
| Static Protected Attributes inherited from ActorCollision | |
| static const f32 | cWaterGravity |
| -0.0625f | |
| static const f32 | cWaterSpeedYMax |
| 1.5f | |
| static const f32 | cWaterFallSpeedMax |
| -1.5f | |
| ActorState::ActorState | ( | const ActorCreateParameter & | param | ) |
|
inlineoverride |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
protected |