SMG-Decomp
A decompilation of Super Mario Galaxy 1
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
SpinDriver Class Reference
Inheritance diagram for SpinDriver:
LiveActor NameObj

Public Member Functions

 SpinDriver (const char *)
 
virtual void init (const JMapInfoIter &)
 Intializes the NameObj and can set various settings and construct necessary classes.
 
virtual void initAfterPlacement ()
 
virtual void appear ()
 
virtual void makeActorAppeared ()
 
virtual void makeActorDead ()
 
virtual void control ()
 
virtual void calcAndSetBaseMtx ()
 Calculates and sets the base matrix of the actor.
 
virtual bool receiveOtherMsg (u32, HitSensor *, HitSensor *)
 
void initParamFromJMapInfo (const JMapInfoIter &)
 
void initShootPath (const JMapInfoIter &)
 
void initEventCamera (const JMapInfoIter &)
 
bool tryStartShoot ()
 
bool tryEndCapture ()
 
bool tryShoot ()
 
bool tryEndShoot ()
 
bool tryForceCancel ()
 
bool tryEndCoolDown ()
 
bool trySwitchOff ()
 
void exeNonActive ()
 
void exeAppear ()
 
void exeWait ()
 
void exeCapture ()
 
void exeShootStart ()
 
void exeShoot ()
 
void exeCoolDown ()
 
bool startBind (HitSensor *)
 
void cancelBind ()
 
void updateBindPosition ()
 
void moveBindPosToCenter ()
 
void updateBindActorMatrix (f32)
 
void calcBindActorMatrix ()
 
void calcParabolicBindPose ()
 
void turnBindHead (const TVec3f &, f32)
 
void calcShootMotionTime ()
 
void startCamera ()
 
void updateCamera ()
 
void cancelCamera ()
 
void endCamera ()
 
bool canStartBind () const NO_INLINE
 
bool canBind (HitSensor *) const
 
- Public Member Functions inherited from LiveActor
 LiveActor (const char *pName)
 Constructs a new LiveActor instance.
 
virtual void movement ()
 
virtual void calcAnim ()
 
virtual void calcViewAndEntry ()
 
virtual void kill ()
 
virtual bool receiveMessage (u32, HitSensor *, HitSensor *)
 
virtual MtxPtr getBaseMtx () const
 Gets the base matrix of the model used for the actor.
 
virtual MtxPtr getTakingMtx () const
 
virtual void startClipped ()
 
virtual void endClipped ()
 
virtual void updateHitSensor (HitSensor *)
 
virtual void attackSensor (HitSensor *, HitSensor *)
 
virtual bool receiveMsgPush (HitSensor *, HitSensor *)
 
virtual bool receiveMsgPlayerAttack (u32, HitSensor *, HitSensor *)
 
virtual bool receiveMsgEnemyAttack (u32, HitSensor *, HitSensor *)
 
virtual u32 receiveMsgTake (HitSensor *, HitSensor *)
 
virtual u32 receiveMsgTaken (HitSensor *, HitSensor *)
 
virtual u32 receiveMsgThrow (HitSensor *, HitSensor *)
 
virtual u32 receiveMsgApart (HitSensor *, HitSensor *)
 
void calcAnmMtx ()
 
void setNerve (const Nerve *)
 
bool isNerve (const Nerve *) const
 
s32 getNerveStep () const
 
HitSensorgetSensor (const char *pSensorName) const
 Gets a sensor.
 
void initModelManagerWithAnm (const char *, const char *, bool)
 
void initNerve (const Nerve *)
 
void initHitSensor (int)
 
void initBinder (f32, f32, u32)
 
void initRailRider (const JMapInfoIter &)
 
void initEffectKeeper (int, const char *, bool)
 
void initSound (int, bool)
 
void initShadowControllerList (u32)
 
void initActorCollisionParts (const char *, HitSensor *, ResourceHolder *, MtxPtr, bool, bool)
 
void initStageSwitch (const JMapInfoIter &)
 
void initActorStarPointerTarget (f32, const TVec3f *, MtxPtr, TVec3f)
 
void initActorLightCtrl ()
 
void addToSoundObjHolder ()
 
void updateBinder ()
 
bool isBinderValid (Binder *pBinder)
 
TVec3f * getPosPtr ()
 
- Public Member Functions inherited from NameObj
 NameObj (const char *pName)
 Constructs a new NameObj instance.
 
virtual void draw () const
 Draws the object. Does nothing until overridden.
 
void initWithoutIter ()
 Initializes a NameObj without a JMapInfoIter instance.
 
void setName (const char *pName)
 Sets the NameObj's mName.
 
void executeMovement ()
 
void requestSuspend ()
 
void requestResume ()
 
void syncWithFlags ()
 

Public Attributes

LiveActor_8C
 
SpinDriverShootPathmShootPath
 
SpinDriverCameramSpinDriverCamera
 
TQuat4f _98
 
TQuat4f _A8
 
TVec3f _B8
 
TVec3f _C4
 
TVec3f _D0
 
TVec3f _DC
 
TVec3f _E8
 
TVec3f _F4
 
f32 _100
 
f32 _104
 
f32 _108
 
TVec3f _10C
 
f32 _118
 
f32 _11C
 
f32 _120
 
s32 _124
 
u32 _128
 
u32 _12C
 
u32 _130
 
f32 _134
 
u8 _138
 
s32 _13C
 
bool _140
 
u8 _141
 
bool _142
 
- Public Attributes inherited from LiveActor
TVec3f mPosition
 3D vector of the actor's position.
 
TVec3f mRotation
 3D vector of the actor's rotation.
 
TVec3f mScale
 3D vector of the actor's scale.
 
TVec3f mVelocity
 3D vector of the actor's velocity.
 
TVec3f mGravity
 3D vector of the actor's gravity.
 
ModelManagermModelManager
 A pointer to a ModelManager instance, used for drawing a 3D model.
 
ActorAnimKeepermAnimationKeeper
 A pointer to a ActorAnimKeeper instance, used for storing and playing model animations.
 
SpinemSpine
 
HitSensorKeepermSensorKeeper
 A pointer to a HitSensorKeeper instance, used for storing HitSensor instances.
 
BindermBinder
 
RailRidermRailRider
 A pointer to a RailRider instance, used for allowing the actor to ride on paths.
 
EffectKeepermEffectKeeper
 
AudAnmSoundObjectmSoundObject
 
LiveActorFlag mFlags
 Flags relating to drawing, animation calculation, etc.
 
ShadowControllerListmShadowList
 
CollisionPartsmCollisionParts
 
StageSwitchCtrlmStageSwitchCtrl
 A pointer to a StageSwitchCtrl instance, used for activating and deactivating switches.
 
StarPointerTarget * mStarPointerTarget
 
ActorLightCtrlmActorLightCtrl
 
ActorPadAndCameraCtrlmCameraCtrl
 
- Public Attributes inherited from NameObj
const char * mName
 A string to identify the NameObj.
 
volatile u16 mFlags
 Flags in relation to movement.
 
s16 mExecutorIdx
 The index into the NameObjExecuteInfo array.
 

Detailed Description

Definition at line 12 of file SpinDriver.hpp.

Constructor & Destructor Documentation

◆ SpinDriver()

SpinDriver::SpinDriver ( const char * pName)

Definition at line 6 of file SpinDriver.cpp.

◆ ~SpinDriver()

SpinDriver::~SpinDriver ( )
virtual

Definition at line 692 of file SpinDriver.cpp.

Member Function Documentation

◆ init()

void SpinDriver::init ( const JMapInfoIter & rIter)
virtual

Intializes the NameObj and can set various settings and construct necessary classes.

Parameters
rIterA reference to the JMapInfoIter that supplies BCSV information.

Reimplemented from LiveActor.

Definition at line 24 of file SpinDriver.cpp.

◆ initAfterPlacement()

void SpinDriver::initAfterPlacement ( )
virtual

Reimplemented from NameObj.

Definition at line 64 of file SpinDriver.cpp.

◆ appear()

void SpinDriver::appear ( )
virtual

Reimplemented from LiveActor.

Definition at line 121 of file SpinDriver.cpp.

◆ makeActorAppeared()

void SpinDriver::makeActorAppeared ( )
virtual

Reimplemented from LiveActor.

Definition at line 132 of file SpinDriver.cpp.

◆ makeActorDead()

void SpinDriver::makeActorDead ( )
virtual

Reimplemented from LiveActor.

Definition at line 137 of file SpinDriver.cpp.

◆ control()

void SpinDriver::control ( )
virtual

Reimplemented from LiveActor.

Definition at line 145 of file SpinDriver.cpp.

◆ calcAndSetBaseMtx()

void SpinDriver::calcAndSetBaseMtx ( )
virtual

Calculates and sets the base matrix of the actor.

Reimplemented from LiveActor.

Definition at line 166 of file SpinDriver.cpp.

◆ receiveOtherMsg()

bool SpinDriver::receiveOtherMsg ( u32 msg,
HitSensor * a2,
HitSensor * a3 )
virtual

Reimplemented from LiveActor.

Definition at line 187 of file SpinDriver.cpp.

◆ initParamFromJMapInfo()

void SpinDriver::initParamFromJMapInfo ( const JMapInfoIter & rIter)

Definition at line 68 of file SpinDriver.cpp.

◆ initShootPath()

void SpinDriver::initShootPath ( const JMapInfoIter & rIter)

Definition at line 89 of file SpinDriver.cpp.

◆ initEventCamera()

void SpinDriver::initEventCamera ( const JMapInfoIter & rIter)

Definition at line 115 of file SpinDriver.cpp.

◆ tryStartShoot()

bool SpinDriver::tryStartShoot ( )

Definition at line 226 of file SpinDriver.cpp.

◆ tryEndCapture()

bool SpinDriver::tryEndCapture ( )

Definition at line 242 of file SpinDriver.cpp.

◆ tryShoot()

bool SpinDriver::tryShoot ( )

Definition at line 253 of file SpinDriver.cpp.

◆ tryEndShoot()

bool SpinDriver::tryEndShoot ( )

Definition at line 262 of file SpinDriver.cpp.

◆ tryForceCancel()

bool SpinDriver::tryForceCancel ( )

Definition at line 274 of file SpinDriver.cpp.

◆ tryEndCoolDown()

bool SpinDriver::tryEndCoolDown ( )

Definition at line 283 of file SpinDriver.cpp.

◆ trySwitchOff()

bool SpinDriver::trySwitchOff ( )

Definition at line 292 of file SpinDriver.cpp.

◆ exeNonActive()

void SpinDriver::exeNonActive ( )

Definition at line 301 of file SpinDriver.cpp.

◆ exeAppear()

void SpinDriver::exeAppear ( )

Definition at line 319 of file SpinDriver.cpp.

◆ exeWait()

void SpinDriver::exeWait ( )

Definition at line 342 of file SpinDriver.cpp.

◆ exeCapture()

void SpinDriver::exeCapture ( )

Definition at line 372 of file SpinDriver.cpp.

◆ exeShootStart()

void SpinDriver::exeShootStart ( )

Definition at line 400 of file SpinDriver.cpp.

◆ exeShoot()

void SpinDriver::exeShoot ( )

Definition at line 434 of file SpinDriver.cpp.

◆ exeCoolDown()

void SpinDriver::exeCoolDown ( )

Definition at line 492 of file SpinDriver.cpp.

◆ startBind()

bool SpinDriver::startBind ( HitSensor * pSensor)

Definition at line 504 of file SpinDriver.cpp.

◆ cancelBind()

void SpinDriver::cancelBind ( )

Definition at line 556 of file SpinDriver.cpp.

◆ updateBindPosition()

void SpinDriver::updateBindPosition ( )

Definition at line 564 of file SpinDriver.cpp.

◆ moveBindPosToCenter()

void SpinDriver::moveBindPosToCenter ( )

Definition at line 573 of file SpinDriver.cpp.

◆ updateBindActorMatrix()

void SpinDriver::updateBindActorMatrix ( f32 a1)

Definition at line 585 of file SpinDriver.cpp.

◆ startCamera()

void SpinDriver::startCamera ( )

Definition at line 646 of file SpinDriver.cpp.

◆ updateCamera()

void SpinDriver::updateCamera ( )

Definition at line 652 of file SpinDriver.cpp.

◆ cancelCamera()

void SpinDriver::cancelCamera ( )

Definition at line 658 of file SpinDriver.cpp.

◆ endCamera()

void SpinDriver::endCamera ( )

Definition at line 664 of file SpinDriver.cpp.

◆ canStartBind()

bool SpinDriver::canStartBind ( ) const

Definition at line 670 of file SpinDriver.cpp.

◆ canBind()

bool SpinDriver::canBind ( HitSensor * pSensor) const

Definition at line 674 of file SpinDriver.cpp.

Member Data Documentation

◆ _8C

LiveActor* SpinDriver::_8C

Definition at line 59 of file SpinDriver.hpp.

◆ mShootPath

SpinDriverShootPath* SpinDriver::mShootPath

Definition at line 60 of file SpinDriver.hpp.

◆ mSpinDriverCamera

SpinDriverCamera* SpinDriver::mSpinDriverCamera

Definition at line 61 of file SpinDriver.hpp.

◆ _98

TQuat4f SpinDriver::_98

Definition at line 62 of file SpinDriver.hpp.

◆ _A8

TQuat4f SpinDriver::_A8

Definition at line 63 of file SpinDriver.hpp.

◆ _B8

TVec3f SpinDriver::_B8

Definition at line 64 of file SpinDriver.hpp.

◆ _C4

TVec3f SpinDriver::_C4

Definition at line 65 of file SpinDriver.hpp.

◆ _D0

TVec3f SpinDriver::_D0

Definition at line 66 of file SpinDriver.hpp.

◆ _DC

TVec3f SpinDriver::_DC

Definition at line 67 of file SpinDriver.hpp.

◆ _E8

TVec3f SpinDriver::_E8

Definition at line 68 of file SpinDriver.hpp.

◆ _F4

TVec3f SpinDriver::_F4

Definition at line 69 of file SpinDriver.hpp.

◆ _100

f32 SpinDriver::_100

Definition at line 70 of file SpinDriver.hpp.

◆ _104

f32 SpinDriver::_104

Definition at line 71 of file SpinDriver.hpp.

◆ _108

f32 SpinDriver::_108

Definition at line 72 of file SpinDriver.hpp.

◆ _10C

TVec3f SpinDriver::_10C

Definition at line 73 of file SpinDriver.hpp.

◆ _118

f32 SpinDriver::_118

Definition at line 74 of file SpinDriver.hpp.

◆ _11C

f32 SpinDriver::_11C

Definition at line 75 of file SpinDriver.hpp.

◆ _120

f32 SpinDriver::_120

Definition at line 76 of file SpinDriver.hpp.

◆ _124

s32 SpinDriver::_124

Definition at line 77 of file SpinDriver.hpp.

◆ _128

u32 SpinDriver::_128

Definition at line 78 of file SpinDriver.hpp.

◆ _12C

u32 SpinDriver::_12C

Definition at line 79 of file SpinDriver.hpp.

◆ _130

u32 SpinDriver::_130

Definition at line 80 of file SpinDriver.hpp.

◆ _134

f32 SpinDriver::_134

Definition at line 81 of file SpinDriver.hpp.

◆ _138

u8 SpinDriver::_138

Definition at line 82 of file SpinDriver.hpp.

◆ _13C

s32 SpinDriver::_13C

Definition at line 83 of file SpinDriver.hpp.

◆ _140

bool SpinDriver::_140

Definition at line 84 of file SpinDriver.hpp.

◆ _141

u8 SpinDriver::_141

Definition at line 85 of file SpinDriver.hpp.

◆ _142

bool SpinDriver::_142

Definition at line 86 of file SpinDriver.hpp.