3#include "Game/NameObj/NameObj.hpp"
4#include "Game/LiveActor/LiveActorFlag.hpp"
5#include "Game/LiveActor/ActorAnimKeeper.hpp"
6#include "Game/LiveActor/ActorLightCtrl.hpp"
7#include "Game/LiveActor/EffectKeeper.hpp"
8#include "Game/LiveActor/HitSensorKeeper.hpp"
9#include "Game/LiveActor/ModelManager.hpp"
10#include "Game/LiveActor/ShadowController.hpp"
11#include "Game/LiveActor/Spine.hpp"
12#include "Game/LiveActor/RailRider.hpp"
13#include "Game/Map/StageSwitch.hpp"
14#include "JSystem/JGeometry/TVec.hpp"
21class StarPointerTarget;
33 virtual void movement();
34 virtual void calcAnim();
35 virtual void calcViewAndEntry();
36 virtual void appear();
37 virtual void makeActorAppeared();
39 virtual void makeActorDead();
45 virtual MtxPtr getTakingMtx()
const;
46 virtual void startClipped();
47 virtual void endClipped();
48 virtual void control();
52 virtual void updateHitSensor(
HitSensor *);
64 void setNerve(
const Nerve *);
65 bool isNerve(
const Nerve *)
const;
66 s32 getNerveStep()
const;
72 void initModelManagerWithAnm(
const char *,
const char *,
bool);
73 void initNerve(
const Nerve *);
74 void initHitSensor(
int);
75 void initBinder(f32, f32, u32);
77 void initEffectKeeper(
int,
const char *,
bool);
78 void initSound(
int,
bool);
79 void initShadowControllerList(u32);
82 void initActorStarPointerTarget(f32,
const TVec3f *, MtxPtr, TVec3f);
83 void initActorLightCtrl();
84 void addToSoundObjHolder();
87 inline bool isBinderValid(
Binder *pBinder) {
91 inline TVec3f* getPosPtr() {
112 StarPointerTarget* mStarPointerTarget;
The basis of a drawable actor that can contain states (see: Nerve)
TVec3f mRotation
3D vector of the actor's rotation.
RailRider * mRailRider
A pointer to a RailRider instance, used for allowing the actor to ride on paths.
HitSensorKeeper * mSensorKeeper
A pointer to a HitSensorKeeper instance, used for storing HitSensor instances.
TVec3f mPosition
3D vector of the actor's position.
LiveActor(const char *pName)
Constructs a new LiveActor instance.
TVec3f mScale
3D vector of the actor's scale.
TVec3f mVelocity
3D vector of the actor's velocity.
StageSwitchCtrl * mStageSwitchCtrl
A pointer to a StageSwitchCtrl instance, used for activating and deactivating switches.
LiveActorFlag mFlags
Flags relating to drawing, animation calculation, etc.
virtual void init(JMapInfoIter const &)
Intializes the NameObj and can set various settings and construct necessary classes.
virtual void calcAndSetBaseMtx()
Calculates and sets the base matrix of the actor.
ModelManager * mModelManager
A pointer to a ModelManager instance, used for drawing a 3D model.
ActorAnimKeeper * mAnimationKeeper
A pointer to a ActorAnimKeeper instance, used for storing and playing model animations.
TVec3f mGravity
3D vector of the actor's gravity.
virtual MtxPtr getBaseMtx() const
Gets the base matrix of the model used for the actor.
HitSensor * getSensor(const char *pSensorName) const
Gets a sensor.
The most basic form of an object.
Used for executing states of a LiveActor.