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

#include <KartBurnout.hh>

Description

Calculates the duration of burnout and rotation induced when holding acceleration too long during the race countdown.

Definition at line 10 of file KartBurnout.hh.

Inheritance diagram for Kinoko::Kart::KartBurnout:

Public Member Functions

void start ()
void calc ()

Getters

f32 pitch () const

Private Member Functions

void calcRotation ()
bool calcEnd (u32 duration)
void activate ()
void deactivate ()
bool isActive () const
void setPos (const EGG::Vector3f &pos)
void setRot (const EGG::Quatf &q)
void setInertiaScale (const EGG::Vector3f &scale)
KartActionaction ()
const KartActionaction () const
KartBodybody ()
const KartBodybody () const
KartCollidecollide ()
const KartCollidecollide () const
CollisionGroupcollisionGroup ()
const CollisionGroupcollisionGroup () const
KartMovemove ()
const KartMovemove () const
KartHalfPipehalfPipe ()
const KartHalfPipehalfPipe () const
KartScalekartScale ()
const KartScalekartScale () const
KartJumpjump ()
const KartJumpjump () const
KartParamparam ()
const KartParamparam () const
const BSPbsp () const
KartPhysicsphysics ()
const KartPhysicsphysics () const
KartDynamicsdynamics ()
const KartDynamicsdynamics () const
KartStatestate ()
const KartStatestate () const
KartSubsub ()
const KartSubsub () const
KartSuspensionsuspension (u16 suspIdx)
const KartSuspensionsuspension (u16 suspIdx) const
KartSuspensionPhysicssuspensionPhysics (u16 suspIdx)
const KartSuspensionPhysicssuspensionPhysics (u16 suspIdx) const
KartTiretire (u16 tireIdx)
const KartTiretire (u16 tireIdx) const
WheelPhysicstirePhysics (u16 tireIdx)
const WheelPhysicstirePhysics (u16 tireIdx) const
CollisionDatacollisionData ()
const CollisionDatacollisionData () const
CollisionDatacollisionData (u16 tireIdx)
const CollisionDatacollisionData (u16 tireIdx) const
const System::KPadinputs () const
Render::KartModelmodel ()
const Render::KartModelmodel () const
Field::ObjectCollisionKartobjectCollisionKart ()
const Field::ObjectCollisionKartobjectCollisionKart () const
Field::BoxColUnitboxColUnit ()
const Field::BoxColUnitboxColUnit () const
const EGG::Vector3fscale () const
const EGG::Matrix34fpose () const
EGG::Vector3f bodyFront () const
 Returns the third column of the rotation matrix, which is the facing vector.
EGG::Vector3f bodyForward () const
 Returns the first column of the rotation matrix, which is the "right" direction.
EGG::Vector3f bodyUp () const
 Returns the second column of the rotation matrix, which is the "up" direction.
const EGG::Vector3fcomponentXAxis () const
const EGG::Vector3fcomponentYAxis () const
const EGG::Vector3fcomponentZAxis () const
const EGG::Vector3fpos () const
const EGG::Vector3fprevPos () const
const EGG::QuatffullRot () const
const EGG::Vector3fextVel () const
const EGG::Vector3fintVel () const
const EGG::Vector3fvelocity () const
f32 speed () const
f32 acceleration () const
f32 softSpeedLimit () const
const EGG::QuatfmainRot () const
const EGG::Vector3fangVel2 () const
bool isBike () const
u16 suspCount () const
u16 tireCount () const
bool hasFloorCollision (const WheelPhysics *wheelPhysics) const
std::pair< EGG::Vector3f, EGG::Vector3fgetCannonPosRot ()
f32 speedRatio () const
f32 speedRatioCapped () const
bool isInRespawn () const
Field::KCLTypeMask wallKclType () const
u32 wallKclVariant () const
Status & status ()
const Status & status () const
const EGG::Vector3fwheelPos (u16 idx) const
const EGG::Vector3fwheelEdgePos (u16 idx) const
f32 cameraDistY () const
s32 hopStickX () const
KartParam::Stats::DriftType vehicleType () const
void apply (size_t idx)

Private Attributes

u32 m_timer
u16 m_phase
f32 m_amplitude
f32 m_pitch

Additional Inherited Members

static std::list< KartObjectProxy *, EGG::Allocator< KartObjectProxy * > > & proxyList ()

Constructor & Destructor Documentation

◆ KartBurnout()

Kinoko::Kart::KartBurnout::KartBurnout ( )
defaultinlined in 0x80577FC4

◆ ~KartBurnout()

Kinoko::Kart::KartBurnout::~KartBurnout ( )
default0x805781DC

Member Function Documentation

◆ activate()

void Kinoko::Kart::KartBurnout::activate ( )
private0x80589844

Definition at line 71 of file KartBurnout.cc.

◆ calc()

void Kinoko::Kart::KartBurnout::calc ( )
0x80589118

Definition at line 25 of file KartBurnout.cc.

◆ calcEnd()

bool Kinoko::Kart::KartBurnout::calcEnd ( u32 duration)
private0x8058920C

Definition at line 66 of file KartBurnout.cc.

◆ calcRotation()

void Kinoko::Kart::KartBurnout::calcRotation ( )
private0x80589308

Definition at line 44 of file KartBurnout.cc.

◆ deactivate()

void Kinoko::Kart::KartBurnout::deactivate ( )
private0x80589818

Definition at line 76 of file KartBurnout.cc.

◆ isActive()

bool Kinoko::Kart::KartBurnout::isActive ( ) const
nodiscardprivate0x80589830

Definition at line 81 of file KartBurnout.cc.

◆ pitch()

f32 Kinoko::Kart::KartBurnout::pitch ( ) const
nodiscard

Definition at line 39 of file KartBurnout.cc.

◆ start()

void Kinoko::Kart::KartBurnout::start ( )
0x805890B0

Definition at line 17 of file KartBurnout.cc.

Member Data Documentation

◆ m_amplitude

f32 Kinoko::Kart::KartBurnout::m_amplitude
private

Definition at line 32 of file KartBurnout.hh.

◆ m_phase

u16 Kinoko::Kart::KartBurnout::m_phase
private

Definition at line 31 of file KartBurnout.hh.

◆ m_pitch

f32 Kinoko::Kart::KartBurnout::m_pitch
private

Definition at line 33 of file KartBurnout.hh.

◆ m_timer

u32 Kinoko::Kart::KartBurnout::m_timer
private

Definition at line 30 of file KartBurnout.hh.