A reimplementation of Mario Kart Wii's physics engine in C++
Loading...
Searching...
No Matches
Kinoko::Field::JugemMove Class Reference

#include <JugemMove.hh>

Description

Manages state information related to Lakitu movement.

Definition at line 8 of file JugemMove.hh.

Public Member Functions

 JugemMove (const Kart::KartObject *kartObj)
 
void init ()
 
void calc ()
 
void setPos (const EGG::Vector3f &pos, bool transPos)
 
void setForwardFromKartObjPosDelta (bool set124)
 
void setForwardFromKartObjMainRot (bool set124)
 
void setAnchorPos (const EGG::Vector3f &v)
 
void setRiseVel (const EGG::Vector3f &v)
 
void setAwayOrDescending (bool isSet)
 
void setDescending (bool isSet)
 
void setRising (bool isSet)
 
const EGG::Vector3ftransPos () const
 
const EGG::Matrix34ftransform () const
 

Private Member Functions

EGG::Matrix34f calcOrthonormalBasis ()
 
EGG::Vector3f calcOscillation (const EGG::Matrix34f &mat)
 
EGG::Matrix34f FUN_807202BC ()
 

Static Private Member Functions

static EGG::Vector3f Interpolate (f32 t, const EGG::Vector3f &v0, const EGG::Vector3f &v1)
 

Private Attributes

const Kart::KartObjectm_kartObj
 
EGG::Vector3f m_pos
 
EGG::Vector3f m_transPos
 
EGG::Vector3f m_anchorPos
 
EGG::Matrix34f m_28
 
EGG::Matrix34f m_58
 
EGG::Matrix34f m_88
 
EGG::Matrix34f m_transform
 
f32 m_phaseX
 Left/right oscillation phase.
 
f32 m_phaseY
 Up/down oscillation phase.
 
EGG::Vector3f m_lastKartObjPos
 
EGG::Vector3f m_velDir
 
EGG::Vector3f m_riseVel
 Velocity of Lakitu once he leaves by rising upwards.
 
EGG::Vector3f m_dir
 
EGG::Vector3f m_currForward
 The current direction that Lakitu is at.
 
EGG::Vector3f m_targetForward
 The direction that Lakitu wants to move to.
 
f32 m_forwardInterpRate
 
bool m_isAwayOrDescending
 
f32 m_velDirInterpRate
 
bool m_isDescending
 
bool m_isRising
 

Constructor & Destructor Documentation

◆ JugemMove()

Kinoko::Field::JugemMove::JugemMove ( const Kart::KartObject * kartObj)
0x8071E9B4

Definition at line 10 of file JugemMove.cc.

Member Function Documentation

◆ calc()

void Kinoko::Field::JugemMove::calc ( )
0x8071F404

Definition at line 40 of file JugemMove.cc.

◆ calcOrthonormalBasis()

EGG::Matrix34f Kinoko::Field::JugemMove::calcOrthonormalBasis ( )
private0x80720024

Definition at line 174 of file JugemMove.cc.

◆ calcOscillation()

EGG::Vector3f Kinoko::Field::JugemMove::calcOscillation ( const EGG::Matrix34f & mat)
private0x807201B0

Definition at line 200 of file JugemMove.cc.

◆ FUN_807202BC()

EGG::Matrix34f Kinoko::Field::JugemMove::FUN_807202BC ( )
nodiscardprivate0x807202BC

Definition at line 225 of file JugemMove.cc.

◆ init()

void Kinoko::Field::JugemMove::init ( )
0x8071EB6C

Definition at line 16 of file JugemMove.cc.

◆ Interpolate()

static EGG::Vector3f Kinoko::Field::JugemMove::Interpolate ( f32 t,
const EGG::Vector3f & v0,
const EGG::Vector3f & v1 )
inlinestaticnodiscardprivate

Definition at line 62 of file JugemMove.hh.

◆ setAnchorPos()

void Kinoko::Field::JugemMove::setAnchorPos ( const EGG::Vector3f & v)
inline0x8071EFD8

Definition at line 29 of file JugemMove.hh.

◆ setAwayOrDescending()

void Kinoko::Field::JugemMove::setAwayOrDescending ( bool isSet)
inline

Definition at line 37 of file JugemMove.hh.

◆ setDescending()

void Kinoko::Field::JugemMove::setDescending ( bool isSet)
inline

Definition at line 41 of file JugemMove.hh.

◆ setForwardFromKartObjMainRot()

void Kinoko::Field::JugemMove::setForwardFromKartObjMainRot ( bool set124)
0x8071F204

Definition at line 156 of file JugemMove.cc.

◆ setForwardFromKartObjPosDelta()

void Kinoko::Field::JugemMove::setForwardFromKartObjPosDelta ( bool set124)
0x8071F0CC

Definition at line 134 of file JugemMove.cc.

◆ setPos()

void Kinoko::Field::JugemMove::setPos ( const EGG::Vector3f & pos,
bool transPos )
inline0x8071EFA8

Definition at line 17 of file JugemMove.hh.

◆ setRiseVel()

void Kinoko::Field::JugemMove::setRiseVel ( const EGG::Vector3f & v)
inline

Definition at line 33 of file JugemMove.hh.

◆ setRising()

void Kinoko::Field::JugemMove::setRising ( bool isSet)
inline

Definition at line 45 of file JugemMove.hh.

◆ transform()

const EGG::Matrix34f & Kinoko::Field::JugemMove::transform ( ) const
inline

Definition at line 53 of file JugemMove.hh.

◆ transPos()

const EGG::Vector3f & Kinoko::Field::JugemMove::transPos ( ) const
inline

Definition at line 49 of file JugemMove.hh.

Member Data Documentation

◆ m_28

EGG::Matrix34f Kinoko::Field::JugemMove::m_28
private

Definition at line 71 of file JugemMove.hh.

◆ m_58

EGG::Matrix34f Kinoko::Field::JugemMove::m_58
private

Definition at line 72 of file JugemMove.hh.

◆ m_88

EGG::Matrix34f Kinoko::Field::JugemMove::m_88
private

Definition at line 73 of file JugemMove.hh.

◆ m_anchorPos

EGG::Vector3f Kinoko::Field::JugemMove::m_anchorPos
private

Definition at line 70 of file JugemMove.hh.

◆ m_currForward

EGG::Vector3f Kinoko::Field::JugemMove::m_currForward
private

The current direction that Lakitu is at.

Definition at line 81 of file JugemMove.hh.

◆ m_dir

EGG::Vector3f Kinoko::Field::JugemMove::m_dir
private

Definition at line 80 of file JugemMove.hh.

◆ m_forwardInterpRate

f32 Kinoko::Field::JugemMove::m_forwardInterpRate
private

Definition at line 83 of file JugemMove.hh.

◆ m_isAwayOrDescending

bool Kinoko::Field::JugemMove::m_isAwayOrDescending
private

Definition at line 84 of file JugemMove.hh.

◆ m_isDescending

bool Kinoko::Field::JugemMove::m_isDescending
private

Definition at line 86 of file JugemMove.hh.

◆ m_isRising

bool Kinoko::Field::JugemMove::m_isRising
private

Definition at line 87 of file JugemMove.hh.

◆ m_kartObj

const Kart::KartObject* Kinoko::Field::JugemMove::m_kartObj
private

Definition at line 67 of file JugemMove.hh.

◆ m_lastKartObjPos

EGG::Vector3f Kinoko::Field::JugemMove::m_lastKartObjPos
private

Definition at line 77 of file JugemMove.hh.

◆ m_phaseX

f32 Kinoko::Field::JugemMove::m_phaseX
private

Left/right oscillation phase.

Definition at line 75 of file JugemMove.hh.

◆ m_phaseY

f32 Kinoko::Field::JugemMove::m_phaseY
private

Up/down oscillation phase.

Definition at line 76 of file JugemMove.hh.

◆ m_pos

EGG::Vector3f Kinoko::Field::JugemMove::m_pos
private

Definition at line 68 of file JugemMove.hh.

◆ m_riseVel

EGG::Vector3f Kinoko::Field::JugemMove::m_riseVel
private

Velocity of Lakitu once he leaves by rising upwards.

Definition at line 79 of file JugemMove.hh.

◆ m_targetForward

EGG::Vector3f Kinoko::Field::JugemMove::m_targetForward
private

The direction that Lakitu wants to move to.

Definition at line 82 of file JugemMove.hh.

◆ m_transform

EGG::Matrix34f Kinoko::Field::JugemMove::m_transform
private

Definition at line 74 of file JugemMove.hh.

◆ m_transPos

EGG::Vector3f Kinoko::Field::JugemMove::m_transPos
private

Definition at line 69 of file JugemMove.hh.

◆ m_velDir

EGG::Vector3f Kinoko::Field::JugemMove::m_velDir
private

Definition at line 78 of file JugemMove.hh.

◆ m_velDirInterpRate

f32 Kinoko::Field::JugemMove::m_velDirInterpRate
private

Definition at line 85 of file JugemMove.hh.