3#include "Game/LiveActor/LiveActor.hpp"
4#include "Game/NameObj/NameObjArchiveListCollector.hpp"
5#include "Game/Enemy/AnimScaleController.hpp"
6#include "Game/Util/JointController.hpp"
9 NERVE(NPCActorNrvWait);
10 NERVE(NPCActorNrvTalk);
11 NERVE(NPCActorNrvReaction);
23 const char* mObjectName;
29 TVec3f mMessageOffset;
31 const char* mTalkJointName;
33 bool mConnectsToScene;
41 bool mCanBeHitByShell;
70 TVec3f mStarPointerOffs;
72 u32 mSceneConnectionType;
73 NrvNPCActor::NPCActorNrvWait* mWaitNerve;
74 NrvNPCActor::NPCActorNrvTalk* mTalkNerve;
75 NrvNPCActor::NPCActorNrvReaction* mReactionNerve;
87 virtual void initAfterPlacement();
88 virtual void makeActorAppeared();
90 virtual void makeActorDead();
91 virtual void control();
100 bool initTalkCtrl(
const JMapInfoIter &,
const char *,
const TVec3f &, MtxPtr);
101 bool initTalkCtrlDirect(
const JMapInfoIter &,
const char *,
const TVec3f &, MtxPtr);
104 void turnToPlayer(f32);
105 void turnToPlayer(f32, f32, f32);
106 void turnToDefault(f32);
108 void pushNerve(
const Nerve *);
111 bool tryPulNullNerve();
112 bool isEmptyNerve()
const;
113 bool isScaleAnim()
const;
114 bool isPointingSe()
const;
115 void updateReaction();
116 void updateScaleCtrl();
177 NrvNPCActor::NPCActorNrvWait* mWaitNerve;
178 NrvNPCActor::NPCActorNrvTalk* mTalkNerve;
179 NrvNPCActor::NPCActorNrvReaction* mReactionNerve;
The basis of a drawable actor that can contain states (see: Nerve)
virtual void init(const JMapInfoIter &)
Intializes the NameObj and can set various settings and construct necessary classes.
virtual void calcAndSetBaseMtx()
Calculates and sets the base matrix of the actor.
Stores archive names of NameObjs.
Used for executing states of a LiveActor.