|
NSMBW-Decomp
A decompilation of New Super Mario Bros. Wii
|
#include <game/bases/d_enemy.hpp>
An enemy actor. Note that the definition of "enemy" in this context is actually any interactible stage entity, not just ones that can hurt the player.
Definition at line 87 of file d_enemy.hpp.
Public Types | |
| enum | FLAGS_e { FLAG_0 = BIT_FLAG(0) , FLAG_1 = BIT_FLAG(1) , FLAG_24 = BIT_FLAG(24) } |
Public Types inherited from dActor_c | |
| enum | EAT_POINTS_e { EAT_POINTS_200 , EAT_POINTS_1000 , EAT_POINTS_NONE } |
| The score awarded when the actor is eaten by Yoshi. More... | |
| enum | EAT_STATE_e { EAT_STATE_NONE , EAT_STATE_EATING , EAT_STATE_EATEN , EAT_STATE_SPIT , EAT_STATE_SPAT } |
| The possible actor eat states. More... | |
| enum | EAT_BEHAVIOR_e { EAT_TYPE_NONE , EAT_TYPE_EAT , EAT_TYPE_EAT_PERMANENT , EAT_TYPE_UNK3 , EAT_TYPE_FIREBALL , EAT_TYPE_ICEBALL } |
| The possible actor behaviors when eaten by Yoshi. More... | |
| enum | STAGE_ACTOR_KIND_e { STAGE_ACTOR_GENERIC , STAGE_ACTOR_PLAYER , STAGE_ACTOR_YOSHI , STAGE_ACTOR_ENEMY } |
| The possible stage actor kinds. More... | |
| enum | CARRY_ACTION_e { CARRY_RELEASE = BIT_FLAG(0) , CARRY_THROW = BIT_FLAG(1) } |
| The possible carry actions. More... | |
| enum | BG_COLL_FLAG_e { COLL_NONE = BIT_FLAG(-1) , COLL_HEAD = BIT_FLAG(0) , COLL_WALL_L = BIT_FLAG(1) , COLL_WALL_R = BIT_FLAG(2) , COLL_FOOT = BIT_FLAG(3) } |
| The collision directions that an actor can respond to. More... | |
| enum | ACTOR_SPAWN_FLAG_e { ACTOR_SPAWNED = BIT_FLAG(0) , ACTOR_NO_RESPAWN = BIT_FLAG(3) } |
| Information related to actor spawning. More... | |
| enum | SCREEN_OUT_e { SKIP_NONE = BIT_FLAG(-1) , SKIP_ACTOR_DELETE = BIT_FLAG(1) , SKIP_SCREEN_CHECK = BIT_FLAG(2) , SKIP_RIDE_CHECK = BIT_FLAG(3) } |
| Flags used to control out of screen checks. More... | |
| typedef dAcPy_c *(* | searchNearPlayerFunc) (mVec2_c &delta, const mVec2_c &pos) |
| Gets the closest player to the given position and its distance. | |
| typedef bool(* | getTrgToSrcDirFunc) (float trgX, float srcX) |
| Gets the direction the target position is in, from the source position's viewpoint. | |
Public Types inherited from dBaseActor_c | |
| enum | ACTOR_KIND_e { ACTOR_MAP_GENERIC , ACTOR_MAP_DEMO , ACTOR_MAP_OBJECT , ACTOR_MAP_ENEMY , ACTOR_MAP_PLAYER , ACTOR_MAP_STOP , ACTOR_UNK_6 , ACTOR_MENU_PLAYER , ACTOR_GENERIC } |
| An identifier that represents the actor's kind. More... | |
Public Types inherited from fBase_c | |
| enum | LIFECYCLE_e { CREATING , ACTIVE , DELETING } |
| The possible lifecycle states. More... | |
| enum | GROUP_TYPE_e { OTHER , SCENE , ACTOR } |
| The possible group types. More... | |
| enum | MAIN_STATE_e { CANCELED , ERROR , SUCCESS , WAITING } |
| The possible operation results. More... | |
| enum | PACK_RESULT_e { NOT_READY , SUCCEEDED , FAILED } |
| The possible operation step results. More... | |
| enum | PROC_DISABLE_e { ROOT_DISABLE_EXECUTE = BIT_FLAG(0) , DISABLE_EXECUTE = BIT_FLAG(1) , ROOT_DISABLE_DRAW = BIT_FLAG(2) , DISABLE_DRAW = BIT_FLAG(3) } |
Controls if the execute and draw operations should be skipped. More... | |
Public Member Functions | |
| dEn_c () | |
| Constructs a new enemy actor. | |
| virtual | ~dEn_c () |
| Destroys the actor. | |
| virtual void | postCreate (fBase_c::MAIN_STATE_e status) |
post method for the create operation. | |
| virtual int | preExecute () |
pre method for the execute operation. | |
| virtual void | postExecute (fBase_c::MAIN_STATE_e status) |
post method for the execute operation. | |
| virtual int | preDraw () |
pre method for the draw operation. | |
| virtual void | block_hit_init () |
| Callback for when a block directly beneath the actor is hit. | |
| virtual void | setEatTongue (dActor_c *) |
| Callback for when the actor is targeted by Yoshi's tongue. | |
| virtual void | setEatTongueOff (dActor_c *) |
| Callback for when the eating action is canceled. | |
| virtual bool | setEatSpitOut (dActor_c *) |
| Callback for when the actor is about to be spat out. | |
| virtual void | calcEatInScale (dActor_c *) |
| Adjusts the actor's scale while being eaten. | |
| virtual void | yoganSplashEffect (const mVec3_c &, float) |
| Generates a lava splash effect. | |
| virtual void | poisonSplashEffect (const mVec3_c &, float) |
| Generates a poison water splash effect. | |
| virtual void | changeState (const sStateIDIf_c &newState) |
| Changes the actor's state to the given state. | |
| virtual bool | EnDamageCheck (dCc_c *cc1, dCc_c *cc2) |
| virtual bool | PlDamageCheck (dCc_c *cc1, dCc_c *cc2) |
| virtual bool | YoshiDamageCheck (dCc_c *cc1, dCc_c *cc2) |
| virtual bool | EtcDamageCheck (dCc_c *cc1, dCc_c *cc2) |
| virtual void | Normal_VsEnHitCheck (dCc_c *cc1, dCc_c *cc2) |
| virtual void | Normal_VsPlHitCheck (dCc_c *cc1, dCc_c *cc2) |
| virtual void | Normal_VsYoshiHitCheck (dCc_c *cc1, dCc_c *cc2) |
| virtual bool | hitCallback_Star (dCc_c *cc1, dCc_c *cc2) |
| virtual bool | hitCallback_Slip (dCc_c *cc1, dCc_c *cc2) |
| virtual bool | hitCallback_Large (dCc_c *cc1, dCc_c *cc2) |
| virtual bool | hitCallback_Spin (dCc_c *cc1, dCc_c *cc2) |
| virtual bool | hitCallback_Rolling (dCc_c *cc1, dCc_c *cc2) |
| virtual bool | hitCallback_WireNet (dCc_c *cc1, dCc_c *cc2) |
| virtual bool | hitCallback_HipAttk (dCc_c *cc1, dCc_c *cc2) |
| virtual bool | hitCallback_YoshiHipAttk (dCc_c *cc1, dCc_c *cc2) |
| virtual bool | hitCallback_Screw (dCc_c *cc1, dCc_c *cc2) |
| virtual bool | hitCallback_PenguinSlide (dCc_c *cc1, dCc_c *cc2) |
| virtual bool | hitCallback_Cannon (dCc_c *cc1, dCc_c *cc2) |
| virtual bool | hitCallback_Shell (dCc_c *cc1, dCc_c *cc2) |
| virtual bool | hitCallback_Fire (dCc_c *cc1, dCc_c *cc2) |
| virtual bool | hitCallback_Ice (dCc_c *cc1, dCc_c *cc2) |
| virtual bool | hitCallback_YoshiBullet (dCc_c *cc1, dCc_c *cc2) |
| virtual bool | hitCallback_YoshiFire (dCc_c *cc1, dCc_c *cc2) |
| virtual void | setDeathInfo_Other (dActor_c *killedBy) |
| virtual void | setDeathInfo_Quake (int) |
| virtual void | setDeathInfo_IceBreak () |
| virtual void | setDeathInfo_IceVanish () |
| void | setDeathInfo_Smoke (dActor_c *killedBy) |
| void | setDeathInfo_Fumi (dActor_c *killedBy, mVec2_c, const sStateIDIf_c &, int) |
| void | setDeathInfo_YoshiFumi (dActor_c *killedBy) |
| void | setDeathInfo_SpinFumi (dActor_c *killedBy, int) |
| virtual bool | isQuakeDamage () |
| virtual void | hitYoshiEat (dCc_c *cc1, dCc_c *cc2) |
| virtual void | setDeathSound_HipAttk () |
| virtual void | setDeathSound_Fire () |
| virtual void | setDeathSound_Slip (dActor_c *actor) |
| virtual void | setDeathSound_Spin () |
| virtual void | setDeathSound_Rolling () |
| virtual void | fumidamageEffect (const mVec3_c &pos) |
| virtual void | hipatkEffect (const mVec3_c &pos) |
| virtual void | fumidamageSE (const mVec3_c &pos, int) |
| virtual void | quakeAction () |
| virtual bool | checkDispIn () |
| virtual void | setWaterSpeed () |
| virtual void | setDamage (dActor_c *actor) |
| void | boyonInit () |
| virtual void | boyonBegin () |
| virtual void | calcBoyonScale () |
| virtual void | createIceActor () |
| virtual void | setIceAnm () |
| virtual void | returnAnm_Ice () |
| virtual void | returnState_Ice () |
| virtual void | beginFunsui () |
| virtual void | endFunsui () |
| virtual void | isFunsui () const |
| virtual bool | checkComboClap (int max) |
| virtual void | FumiJumpSet (dActor_c *actor) |
| virtual void | FumiScoreSet (dActor_c *actor) |
| virtual void | MameFumiJumpSet (dActor_c *actor) |
| virtual void | YoshiFumiJumpSet (dActor_c *actor) |
| virtual void | YoshiFumiScoreSet (dActor_c *actor) |
| void | SpinFumiJumpSet (dActor_c *actor) |
| void | SpinFumiScoreSet (dActor_c *actor) |
| virtual void | fumiSE (dActor_c *actor) |
| virtual void | fumiEffect (dActor_c *actor) |
| virtual void | spinfumiSE (dActor_c *actor) |
| virtual void | spinfumiEffect (dActor_c *actor) |
| virtual void | mamefumiSE (dActor_c *actor) |
| virtual void | mamefumiEffect (dActor_c *actor) |
| virtual void | yoshifumiSE (dActor_c *actor) |
| virtual void | yoshifumiEffect (dActor_c *actor) |
| void | fumistepSE (dActor_c *actor) |
| void | yoshifumistepSE (dActor_c *actor) |
| void | PlayerFumiJump (dActor_c *actor, float) |
| void | setFumiComboScore (dActor_c *actor) |
| void | hitdamageEffect (const mVec3_c &pos) |
| bool | checkWallAndBg () |
| int | Enfumi_check (dCc_c *cc1, dCc_c *cc2, int step) |
| u32 | EnBgCheck () |
| bool | EnBgCheckFoot () |
| u32 | EnBgCheckWall () |
| bool | LineBoundaryCheck (dActor_c *actor) |
| void | WaterCheck (mVec3_c &pos, float h) |
| dBc_c::WATER_TYPE_e | WaterLineProc (const mVec3_c &pos, float h) |
| bool | EnLavaCheck (const mVec3_c &pos) |
| bool | EnWaterCheck (const mVec3_c &pos) |
| bool | EnWaterFlagCheck (const mVec3_c &pos) |
| bool | getPl_LRflag (const mVec3_c &pos) |
Checks whether the nearest player is to the left of pos. | |
| bool | getPl_UDflag (const mVec3_c &pos) |
Checks whether the nearest player is below pos. | |
| bool | Area_X_check (float x) |
| bool | Area_XY_check (float x, float y) |
| bool | carry_check (dActor_c *other) |
| bool | PlayerCarryCheck (dActor_c *actor) |
| mVec3_c | calcCarryPos (const mVec3_c &pos) |
| void | Bound (float epsY, float scaleX, float scaleY) |
| void | slipBound (dActor_c *actor) |
| void | posMove () |
| void | fireballInvalid (dCc_c *cc1, dCc_c *cc2) |
| void | iceballInvalid (dCc_c *cc1, dCc_c *cc2) |
| bool | turnangle_calc (const short *target, const short *delta) |
| void | setNicePoint_Death () |
Public Member Functions inherited from dActorMultiState_c | |
| dActorMultiState_c () | |
| Constructs a new actor. | |
| ~dActorMultiState_c () | |
| Destroys the actor. | |
| bool | isState (const sStateIDIf_c &other) const |
| Checks if the actor is currently in the given state. | |
Public Member Functions inherited from dActor_c | |
| dActor_c () | |
| Constructs a new actor. | |
| ~dActor_c () | |
| Destroys the actor. | |
| virtual int | preCreate () |
pre method for the create operation. | |
| virtual int | preDelete () |
pre method for the delete operation. | |
| virtual void | postDelete (fBase_c::MAIN_STATE_e status) |
post method for the delete operation. | |
| virtual void | postDraw (fBase_c::MAIN_STATE_e status) |
post method for the draw operation. | |
| virtual const char * | getKindString () const |
| Gets the base's kind string. | |
| virtual bool | ActorDrawCullCheck () |
| Checks if the actor is out of view. | |
| virtual bool | vf68 (dBg_ctr_c *collider) |
| Unknown, related to collision. | |
| virtual s8 * | getPlrNo () |
| Gets the player number associated with the actor. See mPlayerNo. | |
| virtual mVec2_c | getLookatPos () const |
| Gets the position players look to when focused on the actor. | |
| virtual bool | isSpinLiftUpEnable () |
| Returns whether the actor can be carried. | |
| virtual void | setSpinLiftUpActor (dActor_c *carryingActor) |
| Callback for when the actor is picked up by another actor. | |
| virtual void | setCarryFall (dActor_c *carryingActor, int collisionDelay) |
| Callback for when the actor is dropped by the carrying actor. | |
| virtual void | setEatMouth (dActor_c *eatingActor) |
| Callback for when the actor is being eaten. | |
| virtual bool | setEatGlupDown (dActor_c *eatingActor) |
| Callback for when the actor is about to be fully swallowed. | |
| virtual void | eatMove (dActor_c *eatingActor) |
| Updates the actor's position during eating actions. | |
| virtual void | removeCc () |
| Disables the actor's collision. | |
| virtual void | reviveCc () |
| Enables the actor's collision. | |
| virtual void | setAfterEatScale () |
| Restores the actor's scale once spat out. | |
| virtual void | calcSpitOutPos (dActor_c *eatingActor) |
| Calculates the position where the actor will be spat out. | |
| virtual float | calcEatScaleRate (dActor_c *eatingActor) |
| Computes the scaling rate during eating. | |
| virtual void | allEnemyDeathEffSet () |
| Spawns the visual effects for when all players reach the flagpole and all enemies are cleared. | |
| virtual void | vfb4 () |
| virtual void | funsuiMoveX () |
| virtual void | cancelFunsuiActUpper () |
| virtual void | cancelFunsuiActSide (int) |
| virtual void | cancelFunsuiActVanish () |
| virtual void | waterSplashEffect (const mVec3_c &pos, float size) |
| Generates a water splash effect. | |
| bool | checkAreaNo () |
| Checks if at least one player is in the same zone as the actor. | |
| void | deleteActor (u8 deleteForever) |
| Deletes the actor and optionally disables respawn. | |
| bool | areaCullCheck (const mVec3_c &pos, const sRangeDataF &bound, u8 areaID) const |
| Checks if the actor should be culled due to zone limits. | |
| bool | ActorScrOutCheck (u16 flags) |
| Checks if the actor is out of gameplay and optionally deletes it. | |
| bool | HasamareBgCheck () |
| Returns whether the actor is colliding with any enabled collision sides. | |
| bool | carryFukidashiCheck (int fukidashiAction, mVec2_c fukidashiTriggerSize) |
| Checks if the prompt for the given action should be displayed for each player. | |
| dAcPy_c * | searchCarryFukidashiPlayer (int fukidashiAction) |
| Searches the closest player who has not yet performed the given action. | |
| void | carryFukidashiCancel (int fukidashiAction, int playerId) |
| Hides the given action prompt for all players. | |
| void | killActor (s8 playerId, int noScore) |
| Kills the actor and optionally awards points to one or all players. | |
| void | slideComboSE (int multiplier, bool shortCombo) |
| Plays the combo kill sound effect. | |
| void | clrComboCnt () |
| Clears the actor's combo counter. | |
| bool | checkCarried (int *playerNum) |
| Returns whether the actor is being carried by a player. | |
| dAcPy_c * | searchNearPlayer (mVec2_c &delta) |
| Gets the closest player to the actor and its distance. | |
| void | setKind (u8 kind) |
| Sets the actor's kind. See STAGE_ACTOR_KIND_e. | |
| sRangeDataF | getDestroyBound () |
| void | setDefaultMaxBound () |
| float | getCenterX () |
| float | getCenterY () |
| u8 | getKindMask () |
Public Member Functions inherited from dBaseActor_c | |
| dBaseActor_c () | |
| Constructs a new actor. | |
| virtual int | GetActorType () |
| Gets the actor kind. See ACTOR_KIND_e. | |
| void | calcSpeed () |
| Updates the actor's speed (3D actors). See here for details. | |
| void | calcSpeedXY () |
| Updates the actor's speed (2D actors). See here for details. | |
| void | calcSpeedX () |
| Updates the actor's X speed. See here for details. | |
| void | calcFallSpeed () |
| Updates the actor's falling speed. See here for details. | |
| void | calcSpeedY () |
| Updates the actor's Y speed. See here for details. | |
| void | calcSpeedF () |
| Updates the actor's forward speed. See here for details. | |
| void | makeMtx () |
| Generates a partial transformation matrix for the actor and stores it in mMatrix. | |
| mVec3_c | getCenterPos () const |
| Gets the actor's centered position. | |
| void | posMove (mVec3_c &delta) |
| Moves the actor by the given delta. | |
| void | posMove () |
| Moves the actor by its speed. | |
| int | GetProfNameActorNum (ProfileName profile) |
| Counts the instances of the given actor profile. | |
Public Member Functions inherited from dBase_c | |
| dBase_c () | |
| Constructs a new base. | |
| virtual | ~dBase_c () |
| Destroys the base. | |
Public Member Functions inherited from fBase_c | |
| fBase_c () | |
| Constructs a new base. | |
| void | deleteRequest () |
| Requests deletion of the base. | |
| fBase_c * | getConnectParent () const |
| Gets the base's parent. | |
| fBase_c * | getConnectChild () const |
| Gets the base's first child. | |
| fBase_c * | getConnectBrNext () const |
| Gets the base's next sibling. | |
| bool | checkChildProcessCreateState () const |
| Checks if the base has at least one child in the CREATING state. | |
Public Member Functions inherited from cOwnerSetMg_c | |
| cOwnerSetMg_c () | |
| Constructs a new set container. | |
| ~cOwnerSetMg_c () | |
| Destroys the set. | |
| void | add (cOwnerSetNd_c *nd, void *owner) |
| Adds a node to the set. | |
| void | remove (cOwnerSetNd_c *nd, void *owner) |
| Removes a node from the set. | |
Static Public Member Functions | |
| static void | normal_collcheck (dCc_c *cc1, dCc_c *cc2) |
| static bool | CeilCheck (float y, dCc_c *cc) |
Static Public Member Functions inherited from dActor_c | |
| static void | setSoftLight_Player (m3d::bmdl_c &mdl) |
| Sets the soft light effect for players. | |
| static void | setSoftLight_Enemy (m3d::bmdl_c &mdl) |
| Sets the soft light effect for enemies. | |
| static void | setSoftLight_Map (m3d::bmdl_c &mdl) |
| Sets the soft light effect for map actors. | |
| static void | setSoftLight_MapObj (m3d::bmdl_c &mdl) |
| Sets the soft light effect for map objects. | |
| static void | setSoftLight_Boss (m3d::bmdl_c &mdl) |
| Sets the soft light effect for bosses. | |
| static void | setSoftLight_Item (m3d::bmdl_c &mdl) |
| Sets the soft light effect for items. | |
| static bool | screenCullCheck (const mVec3_c &pos, const sRangeDataF &visibleBound, sRangeDataF destroyBound, u8 areaID) |
| Checks if the actor should be culled due to being outside the screen. | |
| static dAcPy_c * | searchNearPlayer_Main (mVec2_c &delta, const mVec2_c &pos) |
| See searchNearPlayerFunc. | |
| static dAcPy_c * | searchNearPlayerNormal (mVec2_c &delta, const mVec2_c &pos) |
| See searchNearPlayerFunc. | |
| static dAcPy_c * | searchNearPlayerLoop (mVec2_c &delta, const mVec2_c &pos) |
| See searchNearPlayerFunc. | |
| static bool | getTrgToSrcDir_Main (float trgX, float srcX) |
| See getTrgToSrcDirFunc. | |
| static bool | getTrgToSrcDirNormal (float trgX, float srcX) |
| See getTrgToSrcDirFunc. | |
| static bool | getTrgToSrcDirLoop (float trgX, float srcX) |
| See getTrgToSrcDirFunc. | |
| static void | changePosAngle (mVec3_c *pos, mAng3_c *ang, int param3) |
| Adjusts the actor's position to account for looping stages. | |
| static void | setSearchNearPlayerFunc (int loopType) |
| Sets the player search function to be used for the level. | |
| static void | setGetTrgToSrcDirFunc (int loopType) |
| Sets the direction detection function to be used for the level. | |
| static void | setChangePosAngleFunc (int loopType) |
| Sets the position update function to be used for the level. | |
| static void | setLoopFunc (int loopType) |
| Sets the position-related functions for the level. | |
| static void | setTmpCtData (u8 layer) |
| Sets temporary data to be used for the next actor's construction. | |
| static dActor_c * | construct (ProfileName profName, unsigned long param, const mVec3_c *position, const mAng3_c *rotation, u8 layer) |
| Creates a stage actor without a parent. | |
| static dActor_c * | construct (ProfileName profName, dBase_c *parent, unsigned long param, const mVec3_c *position, const mAng3_c *rotation, u8 layer) |
| Creates a child stage actor with the given parent. | |
Static Public Member Functions inherited from dBaseActor_c | |
| static void | draw2DActorOnLyt1 () |
| Calls draw2D on every actor. | |
| static void | draw2DActorOnLyt2 () |
| Calls draw2D_lyt2 on every actor. | |
| static dBaseActor_c * | construct (ProfileName profName, unsigned long param, const mVec3_c *position, const mAng3_c *rotation) |
| Creates an actor without a parent. | |
| static dBaseActor_c * | construct (ProfileName profName, dBase_c *parent, unsigned long param, const mVec3_c *position, const mAng3_c *rotation) |
| Creates a child actor with the given parent. | |
Static Public Member Functions inherited from dBase_c | |
| static dBase_c * | searchBaseByProfName (ProfileName profile, const dBase_c *parent) |
| Searches for a base with a given profile name, optionally under a given parent. | |
| static void | initLoader () |
| Sets the callbacks for the scrapped relocatable profile system. | |
| static dBase_c * | createBase (ProfileName profName, dBase_c *parent, unsigned long param, u8 groupType) |
| Creates a child base under the given parent. | |
| static dBase_c * | createRoot (ProfileName profName, unsigned long param, u8 groupType) |
| Creates a root base. | |
Static Public Member Functions inherited from fBase_c | |
| static void * | operator new (size_t) |
new operator override for all bases. | |
| static void | operator delete (void *) |
delete operator override for all bases. | |
| static fBase_c * | createChild (ProfileName profName, fBase_c *parent, unsigned long param, u8 groupType) |
| Creates a child base under the given parent. | |
| static fBase_c * | createRoot (ProfileName profName, unsigned long param, u8 groupType) |
| Creates a root base. | |
Public Attributes | |
| dDeathInfo_c | mDeathInfo |
| The parameters for the death animation. | |
| u32 | mCcValue |
| u16 | m_24 |
| u8 | mPad1 [6] |
| mVec3_c | mFootPush |
| mVec3_c | mFootPush2 |
| u8 | mDeathFallDirection |
| The X direction to move towards on death. | |
| u8 | mPad2 [1] |
| bool | mKilledByLiquid |
| Whether the enemy was killed by falling in a liquid. | |
| u8 | mPad3 [1] |
| bool | mFootAttr3 |
| bool | mInLiquid |
| Whether the enemy is in a liquid. | |
| bool | mFootAttr1 |
| u8 | mPad4 [5] |
| dEnBoyoMng_c | mBoyoMng |
| u8 | mPad5 [4] |
| dIceMng_c | mIceMng |
| The ice manager for this enemy. | |
| float | mAirAccelY |
| The Y acceleration before entering a liquid. | |
| float | mAirSpeedMaxY |
| The maximum Y speed before entering a liquid. | |
| float | mAirMaxFallSpeed |
| The maximum fall speed before entering a liquid. | |
| u32 | mFlags |
| Flags for this actor. See FLAGS_e. | |
| u16 | mTimer1 |
| [Used in EN_HATENA_BALLON, for example] | |
| u16 | mTimer2 |
| [Used in EN_HATENA_BALLON, for example] | |
| dPlayerDownTimer_c | mNoHitPlayer |
| Hit cooldown timers for each player. This is used to prevent, for example, a thrown shell from hitting the player that threw it. | |
| u8 | mTimer3 |
| dEnCombo_c | mCombo |
| The enemy combo manager. | |
| dEnFumiProc_c | mFumiProc |
Public Attributes inherited from dActorMultiState_c | |
| sFStateStateMgr_c< dActorMultiState_c, sStateMethodUsr_FI_c, sStateMethodUsr_FI_c > | mStateMgr |
| The state manager. | |
Public Attributes inherited from dActor_c | |
| u8 | m_00 |
| Seems to be a player bit flag. | |
| u32 | mCarryFukidashiPlayerNo |
The player for whom an action prompt related to the actor is being displayed. -1 if no players meet this criteria. | |
| u32 | mCarryingFlags |
| The actor's carry actions. See CARRY_ACTION_e. | |
| u8 | mThrowDirection |
| The actor's direction when thrown or dropped after carrying. | |
| u32 | mComboMultiplier |
| The current combo multiplier obtained by the actor by colliding with other actors. | |
| u8 | m_13 |
| u32 | m_17 |
| float | m_1b |
| u32 | m_1f |
| dCc_c | mCc |
| The actor-to-actor collision sensor. | |
| dBc_c | mBc |
| The actor-to-tile collision sensor. | |
| dRc_c | mRc |
| The actor's ride surface manager. | |
| mVec2_c | m_1eb |
| mVec2_c | mVisibleAreaSize |
| The size of the area inside which the actor is visible. | |
| mVec2_c | mVisibleAreaOffset |
| The offset applied to the area size. | |
| sRangeDataF | mMaxBound |
| sRangeDataF | mDestroyBound |
| u8 | mDirection |
| The actor's facing direction. | |
| u8 | mAreaNo |
| The actor's zone ID. | |
| u8 | mBgCollFlags |
| The collision directions that the actor can respond to. | |
| u8 * | mpSpawnFlags |
| The spawn flags for the actor. See ACTOR_SPAWN_FLAG_e. | |
| u16 * | mpDeleteVal |
| u16 | mEventNums |
| The event IDs the actor is tracking. | |
| u64 | mEventMask |
| The event mask, generated from mEventNums. | |
| u32 | m_23b |
| u16 | mSpriteSpawnFlags |
| The spawn flags from the sprite data entry. | |
| bool | mBlockHit |
| Whether a block below the actor was hit. | |
| u32 | mEatenByID |
| The unique identifier of the eating actor. | |
| u8 | mEatState |
| The actor's eat state. Value is a EAT_STATE_e. | |
| u8 | mEatBehaviour |
| The actor's eat behaviour. Value is a EAT_BEHAVIOR_e. | |
| mVec3_c | mPreEatScale |
| The actor's scale before being eaten. | |
| EAT_POINTS_e | mEatPoints |
| The score awarded when the actor is eaten by Yoshi. | |
| int | mAttentionMode |
| u32 | mAttentionFlags |
| dPropelParts_c * | mPropelParts |
| The actor's propeller effect manager. | |
| u8 | mKind |
| The actor's kind. Value is a STAGE_ACTOR_KIND_e. | |
| s8 | mPlayerNo |
The player associated with the actor, -1 if not associated to any player. | |
| u8 | mExecStopMask |
The mask required to disable the execute operation for the actor. | |
| u8 | mLayer |
| The actor's layer. | |
| bool | mNoRespawn |
| Whether the actor should not respawn after being deleted. | |
| u8 | mAmiLayer |
| The actor's layer for chainlink fences. | |
Public Attributes inherited from dBaseActor_c | |
| mMtx_c | mMatrix |
| The actor's partial transformation matrix. See makeMtx for details. | |
| mVec3_c | mPos |
| The actor's position. | |
| mVec3_c | mLastPos |
| The actor's position in the previous frame. | |
| mVec3_c | mPosDelta |
| The actor's position delta since the previous frame. | |
| mVec3_c | mCenterOffs |
| The offset from the position to the center of the actor (defaults to 0). | |
| mVec3_c | mScale |
| The actor's scale (defaults to 1). | |
| mVec3_c | mSpeed |
| The actor's speed. | |
| mVec3_c | mSpeedMax |
| The actor's maximum speed. | |
| mAng3_c | mAngle |
| The actor's rotation (for 2D actors). | |
| mAng3_c | mAngle3D |
| The actor's rotation (for 3D actors). | |
| float | mSpeedF |
| The actor's horizontal speed. | |
| float | mMaxSpeedF |
| The actor's maximum horizontal speed. | |
| float | mAccelY |
| The actor's vertical acceleration. | |
| float | mMaxFallSpeed |
| The actor's maximum fall speed. | |
| float | mAccelF |
| The actor's horizontal acceleration. | |
| u32 | mActorProperties |
| The actor's properties. See fProfile::fActorProfile_c::mActorProperties. | |
| bool | mVisible |
Whether the actor should be visible or not. Defaults to true . | |
Public Attributes inherited from fBase_c | |
| fBaseID_e | mUniqueID |
| The base's unique identifier. | |
| u32 | mParam |
| A bitfield that configures the base's behaviour. Its usage varies from profile to profile. | |
| ProfileName | mProfName |
| The base's profile name. | |
Static Public Attributes | |
| static sFStateVirtualID_c< dEn_c > | StateID_DieFumi |
| static sFStateVirtualID_c< dEn_c > | StateID_DieFall |
| static sFStateVirtualID_c< dEn_c > | StateID_DieBigFall |
| static sFStateVirtualID_c< dEn_c > | StateID_DieSmoke |
| static sFStateVirtualID_c< dEn_c > | StateID_DieYoshiFumi |
| static sFStateVirtualID_c< dEn_c > | StateID_DieIceVanish |
| static sFStateVirtualID_c< dEn_c > | StateID_DieGoal |
| static sFStateVirtualID_c< dEn_c > | StateID_DieOther |
| static sFStateVirtualID_c< dEn_c > | StateID_EatIn |
| static sFStateVirtualID_c< dEn_c > | StateID_EatNow |
| static sFStateVirtualID_c< dEn_c > | StateID_EatOut |
| static sFStateVirtualID_c< dEn_c > | StateID_HitSpin |
| static sFStateVirtualID_c< dEn_c > | StateID_Ice |
| static const float | smc_WATER_GRAVITY = -0.0625f |
| static const float | smc_WATER_YMAXSPD = 1.5f |
| static const float | smc_WATER_FALLMAXSPD = -1.5f |
| static const float | smc_WATER_ROLL_DEC_RATE = 0.5f |
| static const u16 | smc_NO_HIT_PLAYER_TIMER_DEFAULT = 5 |
| static const u16 | smc_NO_HIT_PLAYER_TIMER_SPIT_OUT = 16 |
Static Public Attributes inherited from dActorMultiState_c | |
| static sFStateVirtualID_c< dActorMultiState_c > | StateID_GegnericMulti |
| An example state that does nothing. | |
Static Public Attributes inherited from dActor_c | |
| static const float | smc_CULL_XLIMIT = 80.0f |
| The default max bound X offset. | |
| static const float | smc_CULL_YLIMIT = 256.0f |
| The default max bound Y offset. | |
| static const float | smc_CULL_AREA_XLIMIT = 128.0f |
| The default max bound X size. | |
| static const float | smc_CULL_AREA_YLIMIT = 128.0f |
| The default max bound Y size. | |
| static const mVec2_c | smc_FUKIDASHI_RANGE = mVec2_c(9.0f, 12.0f) |
| The default trigger area size for displaying action prompts. | |
| static u8 | mExecStopReq |
The actors for which the execute operation is requested to be disabled. | |
| static u8 | mDrawStopReq |
The actor kinds for which the draw operation is requested to be disabled. | |
| static u8 | mExecStop |
The actors for which the execute operation is currently disabled. | |
| static u8 | mDrawStop |
The actor kinds for which the draw operation is currently disabled. | |
| static searchNearPlayerFunc | mSearchNearPlayerFunc |
| The player search function. | |
| static getTrgToSrcDirFunc | mGetTrgToSrcDirFunc |
| The direction detection function. | |
| static u8 | m_tmpCtLayerNo |
| Temporary storage for the next constructed actor's layer. See mLayer. | |
| static u8 * | m_tmpCtSpawnFlags |
| Temporary storage for the next created sprite actor's spawn flags. See mpSpawnFlags. | |
| static u16 | m_tmpCtEventNums |
| Temporary storage for the next created sprite actor's tracked event IDs. See mEventNums. | |
| static u64 | m_tmpCtEventMask |
| Temporary storage for the next created sprite actor's event mask. See mEventMask. | |
| static u8 | m_tmpCtSpriteLayerNo |
| Temporary storage for the next created sprite actor's layer. See mLayer. | |
Additional Inherited Members | |
Protected Member Functions inherited from dBaseActor_c | |
| virtual | ~dBaseActor_c () |
| Destroys the actor. | |
| virtual void | draw2D () |
| Alternate drawing function used to draw 3D models in front of 2D graphics (first draw pass). | |
| virtual void | draw2D_lyt2 () |
| Alternate drawing function used to draw 3D models in front of 2D graphics (second draw pass). | |
| virtual void | finalUpdate () |
Code to be executed after all actors' execute operation has run. | |
Protected Member Functions inherited from fBase_c | |
| bool | isProcControlFlag (u8 flag) const |
| Checks if a flag is set in mProcControl. | |
| void | setProcControlFlag (u8 flag) |
| Sets a flag in mProcControl. | |
| void | clearProcControlFlag (u8 flag) |
| Clears a flag in mProcControl. | |
| virtual int | create () |
do method for the create operation. | |
| virtual int | doDelete () |
do method for the delete operation. | |
| virtual int | execute () |
do method for the execute operation. | |
| virtual int | draw () |
do method for the draw operation. | |
| virtual void | deleteReady () |
| Informs the base that it's about to be deleted. | |
| virtual bool | entryFrmHeap (unsigned long size, EGG::Heap *parentHeap) |
| Creates a heap of the given size for the base. | |
| virtual bool | entryFrmHeapNonAdjust (unsigned long size, EGG::Heap *parentHeap) |
| Creates a heap of the given size for the base. | |
| virtual bool | createHeap () |
| [Does nothing]. | |
| virtual | ~fBase_c () |
| Destroys the base. | |
Protected Attributes inherited from dBase_c | |
| const char * | mpKindString |
| The base's kind string. | |
| const char * | mpNameString |
| The base's profile name string. | |
Protected Attributes inherited from fBase_c | |
| u8 | mLifecycleState |
| The base's lifecycle state. Value is a LIFECYCLE_e. | |
| bool | mDeleteRequested |
If deletion of the base was requested, but the delete operation has not been scheduled yet. | |
| bool | mDeferExecute |
If the create operation was completed, but scheduling the execute and draw operations isn't possible at this time. | |
| bool | mDeferRetryCreate |
If the create operation has not been completed, and rescheduling it isn't possible at this time. | |
| u8 | mGroupType |
| The base's group type. Value is a GROUP_TYPE_e. | |
| u8 | mProcControl |
| The operations to be skipped. Value is a PROC_DISABLE_e. | |
| fManager_c | mMng |
| The base's process manager. | |
| fBaHelper_c * | mpUnusedHelper |
| See Unused Content. | |
| fLiMgBa_c | mUnusedList |
| See Unused Content. | |
| EGG::FrmHeap * | mHeap |
| The base's dedicated heap. | |
Static Protected Attributes inherited from fBase_c | |
| static int(* | sLoadAsyncCallback )() |
| See Unused Content. | |
| static void(* | sUnloadCallback )() |
| See Unused Content. | |
| enum dEn_c::FLAGS_e |
Definition at line 90 of file d_enemy.hpp.
| dEn_c::dEn_c | ( | ) |
Constructs a new enemy actor.
Definition at line 28 of file d_enemy.cpp.
|
virtual |
Destroys the actor.
Definition at line 52 of file d_enemy.cpp.
|
virtual |
post method for the create operation.
Reimplemented from dActor_c.
Definition at line 54 of file d_enemy.cpp.
|
virtual |
pre method for the execute operation.
Reimplemented from dActor_c.
Definition at line 63 of file d_enemy.cpp.
|
virtual |
post method for the execute operation.
Reimplemented from dActor_c.
Definition at line 108 of file d_enemy.cpp.
|
virtual |
pre method for the draw operation.
Reimplemented from dActor_c.
Definition at line 115 of file d_enemy.cpp.
|
virtual |
Callback for when a block directly beneath the actor is hit.
Reimplemented from dActor_c.
Definition at line 1005 of file d_enemy.cpp.
|
virtual |
Callback for when the actor is targeted by Yoshi's tongue.
| eatingActor | The actor performing the eating action. |
Reimplemented from dActor_c.
Definition at line 945 of file d_enemy.cpp.
|
virtual |
Callback for when the eating action is canceled.
This only seems to occur when two actors try to eat the same actor at the same time.
| eatingActor | The actor performing the eating action. |
Reimplemented from dActor_c.
Definition at line 951 of file d_enemy.cpp.
|
virtual |
Callback for when the actor is about to be spat out.
| eatingActor | The actor performing the eating action. |
Reimplemented from dActor_c.
Definition at line 957 of file d_enemy.cpp.
|
virtual |
Adjusts the actor's scale while being eaten.
Reimplemented from dActor_c.
Definition at line 968 of file d_enemy.cpp.
|
virtual |
Generates a lava splash effect.
| pos | The effect position. |
| size | The effect scale. |
Reimplemented from dActor_c.
Definition at line 792 of file d_enemy.cpp.
|
virtual |
Generates a poison water splash effect.
| pos | The effect position. |
| size | The effect scale. |
Reimplemented from dActor_c.
Definition at line 807 of file d_enemy.cpp.
|
virtual |
Changes the actor's state to the given state.
| newState | The state ID of the new state. |
Reimplemented from dActorMultiState_c.
Definition at line 293 of file d_enemy.cpp.
Definition at line 302 of file d_enemy.cpp.
Definition at line 344 of file d_enemy.cpp.
Definition at line 364 of file d_enemy.cpp.
Definition at line 277 of file d_enemy.cpp.
Definition at line 279 of file d_enemy.cpp.
Definition at line 286 of file d_enemy.cpp.
Definition at line 396 of file d_enemy.cpp.
|
virtual |
Definition at line 128 of file d_enemy.cpp.
|
virtual |
Definition at line 132 of file d_enemy.cpp.
|
virtual |
Definition at line 140 of file d_enemy.cpp.
|
virtual |
Definition at line 144 of file d_enemy.cpp.
|
virtual |
Definition at line 196 of file d_enemy.cpp.
|
virtual |
Definition at line 854 of file d_enemy.cpp.
|
virtual |
Definition at line 992 of file d_enemy.cpp.
| void dEn_c::boyonInit | ( | ) |
Definition at line 997 of file d_enemy.cpp.
|
virtual |
Definition at line 1001 of file d_enemy.cpp.
|
virtual |
Definition at line 544 of file d_enemy.cpp.
|
virtual |
Definition at line 487 of file d_enemy.cpp.
|
virtual |
Definition at line 483 of file d_enemy.cpp.
|
virtual |
Definition at line 491 of file d_enemy.cpp.
|
virtual |
Definition at line 500 of file d_enemy.cpp.
|
virtual |
Definition at line 504 of file d_enemy.cpp.
| void dEn_c::SpinFumiJumpSet | ( | dActor_c * | actor | ) |
Definition at line 508 of file d_enemy.cpp.
| void dEn_c::SpinFumiScoreSet | ( | dActor_c * | actor | ) |
Definition at line 512 of file d_enemy.cpp.
|
virtual |
Definition at line 550 of file d_enemy.cpp.
|
virtual |
Definition at line 634 of file d_enemy.cpp.
|
virtual |
Definition at line 574 of file d_enemy.cpp.
|
virtual |
Definition at line 647 of file d_enemy.cpp.
|
virtual |
Definition at line 622 of file d_enemy.cpp.
|
virtual |
Definition at line 657 of file d_enemy.cpp.
|
virtual |
Definition at line 598 of file d_enemy.cpp.
|
virtual |
Definition at line 655 of file d_enemy.cpp.
| void dEn_c::fumistepSE | ( | dActor_c * | actor | ) |
Definition at line 626 of file d_enemy.cpp.
| void dEn_c::yoshifumistepSE | ( | dActor_c * | actor | ) |
Definition at line 630 of file d_enemy.cpp.
| void dEn_c::PlayerFumiJump | ( | dActor_c * | actor, |
| float | param_2 ) |
Definition at line 516 of file d_enemy.cpp.
| void dEn_c::setFumiComboScore | ( | dActor_c * | actor | ) |
Definition at line 521 of file d_enemy.cpp.
| void dEn_c::hitdamageEffect | ( | const mVec3_c & | pos | ) |
Definition at line 122 of file d_enemy.cpp.
| bool dEn_c::checkWallAndBg | ( | ) |
Definition at line 429 of file d_enemy.cpp.
Definition at line 437 of file d_enemy.cpp.
| u32 dEn_c::EnBgCheck | ( | ) |
Definition at line 659 of file d_enemy.cpp.
| bool dEn_c::EnBgCheckFoot | ( | ) |
Definition at line 688 of file d_enemy.cpp.
| u32 dEn_c::EnBgCheckWall | ( | ) |
Definition at line 712 of file d_enemy.cpp.
| bool dEn_c::LineBoundaryCheck | ( | dActor_c * | actor | ) |
Definition at line 742 of file d_enemy.cpp.
| void dEn_c::WaterCheck | ( | mVec3_c & | pos, |
| float | h ) |
Definition at line 729 of file d_enemy.cpp.
| dBc_c::WATER_TYPE_e dEn_c::WaterLineProc | ( | const mVec3_c & | pos, |
| float | h ) |
Definition at line 752 of file d_enemy.cpp.
| bool dEn_c::EnLavaCheck | ( | const mVec3_c & | pos | ) |
Definition at line 822 of file d_enemy.cpp.
| bool dEn_c::EnWaterCheck | ( | const mVec3_c & | pos | ) |
Definition at line 834 of file d_enemy.cpp.
| bool dEn_c::EnWaterFlagCheck | ( | const mVec3_c & | pos | ) |
Definition at line 843 of file d_enemy.cpp.
| bool dEn_c::getPl_LRflag | ( | const mVec3_c & | pos | ) |
Checks whether the nearest player is to the left of pos.
Definition at line 398 of file d_enemy.cpp.
| bool dEn_c::getPl_UDflag | ( | const mVec3_c & | pos | ) |
Checks whether the nearest player is below pos.
Definition at line 407 of file d_enemy.cpp.
| bool dEn_c::Area_X_check | ( | float | x | ) |
Definition at line 876 of file d_enemy.cpp.
| bool dEn_c::Area_XY_check | ( | float | x, |
| float | y ) |
Definition at line 890 of file d_enemy.cpp.
| bool dEn_c::carry_check | ( | dActor_c * | other | ) |
Definition at line 420 of file d_enemy.cpp.
| bool dEn_c::PlayerCarryCheck | ( | dActor_c * | actor | ) |
Definition at line 903 of file d_enemy.cpp.
Definition at line 913 of file d_enemy.cpp.
| void dEn_c::Bound | ( | float | epsY, |
| float | scaleX, | ||
| float | scaleY ) |
Definition at line 175 of file d_enemy.cpp.
| void dEn_c::slipBound | ( | dActor_c * | actor | ) |
Definition at line 934 of file d_enemy.cpp.
| void dEn_c::posMove | ( | ) |
Definition at line 148 of file d_enemy.cpp.
Definition at line 980 of file d_enemy.cpp.
Definition at line 984 of file d_enemy.cpp.
| bool dEn_c::turnangle_calc | ( | const short * | target, |
| const short * | delta ) |
Definition at line 925 of file d_enemy.cpp.
| void dEn_c::setNicePoint_Death | ( | ) |
Definition at line 973 of file d_enemy.cpp.
Definition at line 221 of file d_enemy.cpp.
|
static |
Definition at line 416 of file d_enemy.cpp.
|
static |
Definition at line 165 of file d_enemy.hpp.
|
static |
Definition at line 166 of file d_enemy.hpp.
|
static |
Definition at line 167 of file d_enemy.hpp.
|
static |
Definition at line 168 of file d_enemy.hpp.
|
static |
Definition at line 169 of file d_enemy.hpp.
|
static |
Definition at line 170 of file d_enemy.hpp.
|
static |
Definition at line 171 of file d_enemy.hpp.
|
static |
Definition at line 172 of file d_enemy.hpp.
|
static |
Definition at line 173 of file d_enemy.hpp.
|
static |
Definition at line 174 of file d_enemy.hpp.
|
static |
Definition at line 175 of file d_enemy.hpp.
|
static |
Definition at line 176 of file d_enemy.hpp.
|
static |
Definition at line 177 of file d_enemy.hpp.
| dDeathInfo_c dEn_c::mDeathInfo |
The parameters for the death animation.
Definition at line 262 of file d_enemy.hpp.
| u32 dEn_c::mCcValue |
Definition at line 263 of file d_enemy.hpp.
| u16 dEn_c::m_24 |
Definition at line 264 of file d_enemy.hpp.
| u8 dEn_c::mPad1[6] |
Definition at line 265 of file d_enemy.hpp.
| mVec3_c dEn_c::mFootPush |
Definition at line 266 of file d_enemy.hpp.
| mVec3_c dEn_c::mFootPush2 |
Definition at line 267 of file d_enemy.hpp.
| u8 dEn_c::mDeathFallDirection |
The X direction to move towards on death.
Definition at line 268 of file d_enemy.hpp.
| u8 dEn_c::mPad2[1] |
Definition at line 269 of file d_enemy.hpp.
| bool dEn_c::mKilledByLiquid |
Whether the enemy was killed by falling in a liquid.
Definition at line 270 of file d_enemy.hpp.
| u8 dEn_c::mPad3[1] |
Definition at line 271 of file d_enemy.hpp.
| bool dEn_c::mFootAttr3 |
Definition at line 272 of file d_enemy.hpp.
| bool dEn_c::mInLiquid |
Whether the enemy is in a liquid.
Definition at line 273 of file d_enemy.hpp.
| bool dEn_c::mFootAttr1 |
Definition at line 274 of file d_enemy.hpp.
| u8 dEn_c::mPad4[5] |
Definition at line 275 of file d_enemy.hpp.
| dEnBoyoMng_c dEn_c::mBoyoMng |
Definition at line 276 of file d_enemy.hpp.
| u8 dEn_c::mPad5[4] |
Definition at line 277 of file d_enemy.hpp.
| dIceMng_c dEn_c::mIceMng |
The ice manager for this enemy.
Definition at line 278 of file d_enemy.hpp.
| float dEn_c::mAirAccelY |
The Y acceleration before entering a liquid.
Definition at line 279 of file d_enemy.hpp.
| float dEn_c::mAirSpeedMaxY |
The maximum Y speed before entering a liquid.
Definition at line 280 of file d_enemy.hpp.
| float dEn_c::mAirMaxFallSpeed |
The maximum fall speed before entering a liquid.
Definition at line 281 of file d_enemy.hpp.
| u32 dEn_c::mFlags |
Flags for this actor. See FLAGS_e.
Definition at line 282 of file d_enemy.hpp.
| u16 dEn_c::mTimer1 |
[Used in EN_HATENA_BALLON, for example]
Definition at line 283 of file d_enemy.hpp.
| u16 dEn_c::mTimer2 |
[Used in EN_HATENA_BALLON, for example]
Definition at line 284 of file d_enemy.hpp.
| dPlayerDownTimer_c dEn_c::mNoHitPlayer |
Hit cooldown timers for each player. This is used to prevent, for example, a thrown shell from hitting the player that threw it.
Definition at line 289 of file d_enemy.hpp.
| u8 dEn_c::mTimer3 |
Definition at line 291 of file d_enemy.hpp.
| dEnCombo_c dEn_c::mCombo |
| dEnFumiProc_c dEn_c::mFumiProc |
Definition at line 293 of file d_enemy.hpp.
|
static |
Definition at line 295 of file d_enemy.hpp.
|
static |
Definition at line 296 of file d_enemy.hpp.
|
static |
Definition at line 297 of file d_enemy.hpp.
|
static |
Definition at line 298 of file d_enemy.hpp.
|
static |
Definition at line 300 of file d_enemy.hpp.
|
static |
Definition at line 301 of file d_enemy.hpp.