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

#include <KartState.hh>

Description

Houses various flags and other variables to preserve the kart's state.

Most notably, this class is the direct observer of the input state, and sets the appropriate flags for KartMove to act upon the input state. This class also is responsible for managing calculations of the start boost duration.

Definition at line 12 of file KartState.hh.

Inheritance diagram for Kart::KartState:

Public Member Functions

void init ()
 
void reset ()
 
void calcInput ()
 Each frame, read input and save related bit flags. Also handles start boosts.
 
void calc ()
 Every frame, resets the input state and saves collision-related bit flags.
 
void resetFlags ()
 
void calcCollisions ()
 Each frame, checks for collision and saves relevant bit flags.
 
void calcStartBoost ()
 STAGE 1 - Each frame, calculates the start boost charge.
 
void calcHandleStartBoost ()
 On countdown end, calculates and applies our start boost charge.
 
void handleStartBoost (size_t idx)
 Applies the relevant start boost duration.
 
void resetEjection ()
 Resets certain bitfields pertaining to ejections (reject road, half pipe zippers, etc.)
 

Static Public Attributes

static constexpr std::array< StartBoostEntry, 6 > START_BOOST_ENTRIES
 

bitfield0

The bitfield at offset 0x4. It mostly pertains to the input state and some collision info.

bool m_bAccelerate
 Accel button is pressed.
 
bool m_bBrake
 
bool m_bDriftInput
 A "fake" button, normally set if you meet the speed requirement to hop.
 
bool m_bDriftManual
 Currently in a drift w/ manual.
 
bool m_bBeforeRespawn
 Set on respawn collision, cleared on position snap.
 
bool m_bWall3Collision
 Set when colliding with wall KCL COL_TYPE_WALL_2.
 
bool m_bWallCollision
 Set if we are colliding with a wall.
 
bool m_bHopStart
 Set if m_bDriftInput was toggled on this frame.
 
bool m_bAccelerateStart
 Set if m_bAccelerate was toggled on this frame.
 
bool m_bGroundStart
 Set first frame landing from airtime.
 
bool m_bVehicleBodyFloorCollision
 Set if the vehicle body is colliding with the floor.
 
bool m_bAnyWheelCollision
 Set when any wheel is touching floor collision.
 
bool m_bAllWheelsCollision
 Set when all wheels are touching floor collision.
 
bool m_bStickLeft
 Set on left stick input. Mutually exclusive to m_bStickRight.
 
bool m_bWallCollisionStart
 Set if we have just started colliding with a wall.
 
bool m_bAirtimeOver20
 Set after 20 frames of airtime, resets on landing.
 
bool m_bStickyRoad
 Like the rBC stairs.
 
bool m_bTouchingGround
 Set when any part of the vehicle is colliding with floor KCL.
 
bool m_bHop
 Set while we are in a drift hop. Clears when we land.
 
bool m_bBoost
 Set while in a boost.
 
bool m_bAirStart
 
bool m_bStickRight
 Set on right stick input. Mutually exclusive to m_bStickLeft.
 
bool m_bMushroomBoost
 Set while we are in a mushroom boost.
 
bool m_bDriftAuto
 Currently in a drift w/ automatic.
 
bool m_bSlipdriftCharge
 
bool m_bWheelie
 Set while we are in a wheelie (even during the countdown).
 
bool m_bJumpPad
 
bool m_bRampBoost
 

bitfield1

The bitfield at offset 0x8.

bool m_bInAction
 
bool m_bTriggerRespawn
 
bool m_bCannonStart
 
bool m_bInCannon
 
bool m_bTrickStart
 
bool m_bInATrick
 
bool m_bBoostOffroadInvincibility
 Set if we should ignore offroad slowdown this frame.
 
bool m_bHalfPipeRamp
 Set while colliding with zipper KCL.
 
bool m_bOverZipper
 Set while mid-air from a zipper.
 
bool m_bZipperInvisibleWall
 Set when colliding with invisible wall above a zipper.
 
bool m_bZipperBoost
 Set when boosting after landing from a zipper.
 
bool m_bZipperStick
 Set while mid-air and still influenced by the zipper.
 
bool m_bZipperTrick
 Set while tricking mid-air from a zipper.
 
bool m_bDisableBackwardsAccel
 Enforces a 20f delay when reversing after charging SSMT.
 
bool m_bRespawnKillY
 Set while respawning to cap external velocity at 0.
 
bool m_bBurnout
 Set during a burnout on race start.
 
bool m_bTrickRot
 
bool m_bChargingSsmt
 Tracks whether we are charging a stand-still mini-turbo.
 
bool m_bRejectRoad
 Collision which causes a change in the player's pos and rot.
 
bool m_bRejectRoadTrigger
 e.g. DK Summit ending, and Maple Treeway side walls.
 
bool m_bTrickable
 

bitfield2

The bitfield at offset 0xC.

bool m_bWheelieRot
 
bool m_bSkipWheelCalc
 
bool m_bNoSparkInvisibleWall
 
bool m_bInRespawn
 
bool m_bAfterRespawn
 
bool m_bJumpPadDisableYsusForce
 

bitfield3

The bitfield at offset 0x10.

bool m_bUNK2
 
bool m_bSomethingWallCollision
 
bool m_bSoftWallDrift
 
bool m_bHWG
 Set when "Horizontal Wall Glitch" is active.
 
bool m_bAfterCannon
 
bool m_bChargeStartBoost
 Like m_bAccelerate but during countdown.
 
bool m_bEndHalfPipe
 

bitfield4

The bitfield at offset 0x14.

bool m_bAutoDrift
 True if auto transmission, false if manual.
 

Setters

void clearBitfield0 ()
 Helper function to clear all bit flags at 0x4-0x7 in KartState.
 
void clearBitfield1 ()
 Helper function to clear all bit flags at 0x8-0xB in KartState.
 
void clearBitfield2 ()
 Helper function to clear all bit flags at 0xC-0xF in KartState.
 
void clearBitfield3 ()
 Helper function to clear all bit flags at 0x10-0x13 in KartState.
 
void setAccelerate (bool isSet)
 
void setDriftInput (bool isSet)
 
void setDriftManual (bool isSet)
 
void setBeforeRespawn (bool isSet)
 
void setWallCollision (bool isSet)
 
void setHopStart (bool isSet)
 
void setVehicleBodyFloorCollision (bool isSet)
 
void setAnyWheelCollision (bool isSet)
 
void setWallCollisionStart (bool isSet)
 
void setStickyRoad (bool isSet)
 
void setAllWheelsCollision (bool isSet)
 
void setTouchingGround (bool isSet)
 
void setHop (bool isSet)
 
void setBoost (bool isSet)
 
void setMushroomBoost (bool isSet)
 
void setSlipdriftCharge (bool isSet)
 
void setDriftAuto (bool isSet)
 
void setWheelie (bool isSet)
 
void setJumpPad (bool isSet)
 
void setRampBoost (bool isSet)
 
void setInAction (bool isSet)
 
void setTriggerRespawn (bool isSet)
 
void setCannonStart (bool isSet)
 
void setInCannon (bool isSet)
 
void setTrickStart (bool isSet)
 
void setInATrick (bool isSet)
 
void setBoostOffroadInvincibility (bool isSet)
 
void setHalfPipeRamp (bool isSet)
 
void setOverZipper (bool isSet)
 
void setZipperInvisibleWall (bool isSet)
 
void setZipperBoost (bool isSet)
 
void setZipperStick (bool isSet)
 
void setZipperTrick (bool isSet)
 
void setDisableBackwardsAccel (bool isSet)
 
void setRespawnKillY (bool isSet)
 
void setBurnout (bool isSet)
 
void setTrickRot (bool isSet)
 
void setChargingSsmt (bool isSet)
 
void setRejectRoad (bool isSet)
 
void setRejectRoadTrigger (bool isSet)
 
void setTrickable (bool isSet)
 
void setWheelieRot (bool isSet)
 
void setSkipWheelCalc (bool isSet)
 
void setNoSparkInvisibleWall (bool isSet)
 
void setInRespawn (bool isSet)
 
void setAfterRespawn (bool isSet)
 
void setJumpPadDisableYsusForce (bool isSet)
 
void setSomethingWallCollision (bool isSet)
 
void setSoftWallDrift (bool isSet)
 
void setHWG (bool isSet)
 
void setAfterCannon (bool isSet)
 
void setEndHalfPipe (bool isSet)
 
void setCannonPointId (u16 val)
 
void setBoostRampType (s32 val)
 
void setJumpPadVariant (s32 val)
 
void setHalfPipeInvisibilityTimer (s16 val)
 
void setTrickableTimer (s16 val)
 

Getters

bool isDrifting () const
 
bool isAccelerate () const
 
bool isBrake () const
 
bool isDriftInput () const
 
bool isDriftManual () const
 
bool isBeforeRespawn () const
 
bool isWall3Collision () const
 
bool isWallCollision () const
 
bool isHopStart () const
 
bool isAccelerateStart () const
 
bool isGroundStart () const
 
bool isVehicleBodyFloorCollision () const
 
bool isAnyWheelCollision () const
 
bool isAllWheelsCollision () const
 
bool isStickLeft () const
 
bool isWallCollisionStart () const
 
bool isAirtimeOver20 () const
 
bool isStickyRoad () const
 
bool isTouchingGround () const
 
bool isHop () const
 
bool isSoftWallDrift () const
 
bool isHWG () const
 
bool isAfterCannon () const
 
bool isChargeStartBoost () const
 
bool isBoost () const
 
bool isAirStart () const
 
bool isStickRight () const
 
bool isMushroomBoost () const
 
bool isDriftAuto () const
 
bool isSlipdriftCharge () const
 
bool isWheelie () const
 
bool isJumpPad () const
 
bool isRampBoost () const
 
bool isInAction () const
 
bool isTriggerRespawn () const
 
bool isCannonStart () const
 
bool isInCannon () const
 
bool isTrickStart () const
 
bool isInATrick () const
 
bool isBoostOffroadInvincibility () const
 
bool isHalfPipeRamp () const
 
bool isOverZipper () const
 
bool isZipperInvisibleWall () const
 
bool isZipperBoost () const
 
bool isZipperTrick () const
 
bool isDisableBackwardsAccel () const
 
bool isRespawnKillY () const
 
bool isBurnout () const
 
bool isZipperStick () const
 
bool isTrickRot () const
 
bool isChargingSsmt () const
 
bool isRejectRoad () const
 
bool isRejectRoadTrigger () const
 
bool isTrickable () const
 
bool isWheelieRot () const
 
bool isJumpPadDisableYsusForce () const
 
bool isSkipWheelCalc () const
 
bool isNoSparkInvisibleWall () const
 
bool isInRespawn () const
 
bool isAfterRespawn () const
 
bool isUNK2 () const
 
bool isSomethingWallCollision () const
 
bool isEndHalfPipe () const
 
bool isAutoDrift () const
 
u16 cannonPointId () const
 
s32 boostRampType () const
 
s32 jumpPadVariant () const
 
f32 stickX () const
 
f32 stickY () const
 
u32 airtime () const
 
const EGG::Vector3ftop () const
 
const EGG::Vector3fsoftWallSpeed () const
 
f32 startBoostCharge () const
 
s16 wallBonkTimer () const
 
s16 trickableTimer () const
 

Private Attributes

u32 m_airtime
 
EGG::Vector3f m_top
 
EGG::Vector3f m_softWallSpeed
 
s32 m_hwgTimer
 
u16 m_cannonPointId
 
s32 m_boostRampType
 
s32 m_jumpPadVariant
 
s16 m_halfPipeInvisibilityTimer
 
f32 m_stickX
 One of 15 discrete stick values from [-1.0, 1.0].
 
f32 m_stickY
 One of 15 discrete stick values from [-1.0, 1.0].
 
f32 m_startBoostCharge
 0-1 representation of start boost charge. Burnout if >0.95f.
 
size_t m_startBoostIdx
 Used to map m_startBoostCharge to a start boost duration.
 
s16 m_wallBonkTimer
 2f counter that stunts your speed after hitting a wall.
 
s16 m_trickableTimer
 

Additional Inherited Members

- Private Member Functions inherited from Kart::KartObjectProxy
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
 
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
 
void apply (size_t idx)
 
- Static Private Member Functions inherited from Kart::KartObjectProxy
static std::list< KartObjectProxy * > & proxyList ()
 

Constructor & Destructor Documentation

◆ KartState()

Kart::KartState::KartState ( )
0x805943B4

Definition at line 30 of file KartState.cc.

Member Function Documentation

◆ airtime()

u32 Kart::KartState::airtime ( ) const
inlinenodiscard

Definition at line 540 of file KartState.hh.

◆ boostRampType()

s32 Kart::KartState::boostRampType ( ) const
inlinenodiscard

Definition at line 524 of file KartState.hh.

◆ calc()

void Kart::KartState::calc ( )
0x8059474C

Every frame, resets the input state and saves collision-related bit flags.

Stage: All

Definition at line 117 of file KartState.cc.

◆ calcCollisions()

void Kart::KartState::calcCollisions ( )
0x80594BD4

Each frame, checks for collision and saves relevant bit flags.

Stage: All

Iterates each tire to check for collision. If any tire is colliding with the floor, the "Any Wheel Collision" bit is set. If all tires are colliding with the floor, the "All Wheels Collision" bit is set. Tracks airtime and computes the appropriate top vector, given the floor normals of all colliding floor KCLs.

Definition at line 154 of file KartState.cc.

◆ calcHandleStartBoost()

void Kart::KartState::calcHandleStartBoost ( )
0x805959D4

On countdown end, calculates and applies our start boost charge.

Stage: 1

Definition at line 374 of file KartState.cc.

◆ calcInput()

void Kart::KartState::calcInput ( )
0x8059487C

Each frame, read input and save related bit flags. Also handles start boosts.

Stage: 1+

Definition at line 70 of file KartState.cc.

◆ calcStartBoost()

void Kart::KartState::calcStartBoost ( )
0x80595918

STAGE 1 - Each frame, calculates the start boost charge.

If the player is holding accelerate, the start boost charge increases using exponential decay. If the player is not holding accelerate, the start boost charge decays by 4% each frame.

Definition at line 356 of file KartState.cc.

◆ cannonPointId()

u16 Kart::KartState::cannonPointId ( ) const
inlinenodiscard

Definition at line 520 of file KartState.hh.

◆ clearBitfield0()

void Kart::KartState::clearBitfield0 ( )

Helper function to clear all bit flags at 0x4-0x7 in KartState.

Definition at line 421 of file KartState.cc.

◆ clearBitfield1()

void Kart::KartState::clearBitfield1 ( )

Helper function to clear all bit flags at 0x8-0xB in KartState.

Definition at line 453 of file KartState.cc.

◆ clearBitfield2()

void Kart::KartState::clearBitfield2 ( )

Helper function to clear all bit flags at 0xC-0xF in KartState.

Definition at line 478 of file KartState.cc.

◆ clearBitfield3()

void Kart::KartState::clearBitfield3 ( )

Helper function to clear all bit flags at 0x10-0x13 in KartState.

Definition at line 488 of file KartState.cc.

◆ handleStartBoost()

void Kart::KartState::handleStartBoost ( size_t idx)
0x80595AF8

Applies the relevant start boost duration.

Parameters
idxThe index into the start boost entries array.

Definition at line 405 of file KartState.cc.

◆ init()

void Kart::KartState::init ( )
0x8059455C

Definition at line 44 of file KartState.cc.

◆ isAccelerate()

bool Kart::KartState::isAccelerate ( ) const
inlinenodiscard

Definition at line 268 of file KartState.hh.

◆ isAccelerateStart()

bool Kart::KartState::isAccelerateStart ( ) const
inlinenodiscard

Definition at line 300 of file KartState.hh.

◆ isAfterCannon()

bool Kart::KartState::isAfterCannon ( ) const
inlinenodiscard

Definition at line 352 of file KartState.hh.

◆ isAfterRespawn()

bool Kart::KartState::isAfterRespawn ( ) const
inlinenodiscard

Definition at line 500 of file KartState.hh.

◆ isAirStart()

bool Kart::KartState::isAirStart ( ) const
inlinenodiscard

Definition at line 364 of file KartState.hh.

◆ isAirtimeOver20()

bool Kart::KartState::isAirtimeOver20 ( ) const
inlinenodiscard

Definition at line 328 of file KartState.hh.

◆ isAllWheelsCollision()

bool Kart::KartState::isAllWheelsCollision ( ) const
inlinenodiscard

Definition at line 316 of file KartState.hh.

◆ isAnyWheelCollision()

bool Kart::KartState::isAnyWheelCollision ( ) const
inlinenodiscard

Definition at line 312 of file KartState.hh.

◆ isAutoDrift()

bool Kart::KartState::isAutoDrift ( ) const
inlinenodiscard

Definition at line 516 of file KartState.hh.

◆ isBeforeRespawn()

bool Kart::KartState::isBeforeRespawn ( ) const
inlinenodiscard

Definition at line 284 of file KartState.hh.

◆ isBoost()

bool Kart::KartState::isBoost ( ) const
inlinenodiscard

Definition at line 360 of file KartState.hh.

◆ isBoostOffroadInvincibility()

bool Kart::KartState::isBoostOffroadInvincibility ( ) const
inlinenodiscard

Definition at line 420 of file KartState.hh.

◆ isBrake()

bool Kart::KartState::isBrake ( ) const
inlinenodiscard

Definition at line 272 of file KartState.hh.

◆ isBurnout()

bool Kart::KartState::isBurnout ( ) const
inlinenodiscard

Definition at line 452 of file KartState.hh.

◆ isCannonStart()

bool Kart::KartState::isCannonStart ( ) const
inlinenodiscard

Definition at line 404 of file KartState.hh.

◆ isChargeStartBoost()

bool Kart::KartState::isChargeStartBoost ( ) const
inlinenodiscard

Definition at line 356 of file KartState.hh.

◆ isChargingSsmt()

bool Kart::KartState::isChargingSsmt ( ) const
inlinenodiscard

Definition at line 464 of file KartState.hh.

◆ isDisableBackwardsAccel()

bool Kart::KartState::isDisableBackwardsAccel ( ) const
inlinenodiscard

Definition at line 444 of file KartState.hh.

◆ isDriftAuto()

bool Kart::KartState::isDriftAuto ( ) const
inlinenodiscard

Definition at line 376 of file KartState.hh.

◆ isDrifting()

bool Kart::KartState::isDrifting ( ) const
inlinenodiscard

Definition at line 264 of file KartState.hh.

◆ isDriftInput()

bool Kart::KartState::isDriftInput ( ) const
inlinenodiscard

Definition at line 276 of file KartState.hh.

◆ isDriftManual()

bool Kart::KartState::isDriftManual ( ) const
inlinenodiscard

Definition at line 280 of file KartState.hh.

◆ isEndHalfPipe()

bool Kart::KartState::isEndHalfPipe ( ) const
inlinenodiscard

Definition at line 512 of file KartState.hh.

◆ isGroundStart()

bool Kart::KartState::isGroundStart ( ) const
inlinenodiscard

Definition at line 304 of file KartState.hh.

◆ isHalfPipeRamp()

bool Kart::KartState::isHalfPipeRamp ( ) const
inlinenodiscard

Definition at line 424 of file KartState.hh.

◆ isHop()

bool Kart::KartState::isHop ( ) const
inlinenodiscard

Definition at line 340 of file KartState.hh.

◆ isHopStart()

bool Kart::KartState::isHopStart ( ) const
inlinenodiscard

Definition at line 296 of file KartState.hh.

◆ isHWG()

bool Kart::KartState::isHWG ( ) const
inlinenodiscard

Definition at line 348 of file KartState.hh.

◆ isInAction()

bool Kart::KartState::isInAction ( ) const
inlinenodiscard

Definition at line 396 of file KartState.hh.

◆ isInATrick()

bool Kart::KartState::isInATrick ( ) const
inlinenodiscard

Definition at line 416 of file KartState.hh.

◆ isInCannon()

bool Kart::KartState::isInCannon ( ) const
inlinenodiscard

Definition at line 408 of file KartState.hh.

◆ isInRespawn()

bool Kart::KartState::isInRespawn ( ) const
inlinenodiscard

Definition at line 496 of file KartState.hh.

◆ isJumpPad()

bool Kart::KartState::isJumpPad ( ) const
inlinenodiscard

Definition at line 388 of file KartState.hh.

◆ isJumpPadDisableYsusForce()

bool Kart::KartState::isJumpPadDisableYsusForce ( ) const
inlinenodiscard

Definition at line 484 of file KartState.hh.

◆ isMushroomBoost()

bool Kart::KartState::isMushroomBoost ( ) const
inlinenodiscard

Definition at line 372 of file KartState.hh.

◆ isNoSparkInvisibleWall()

bool Kart::KartState::isNoSparkInvisibleWall ( ) const
inlinenodiscard

Definition at line 492 of file KartState.hh.

◆ isOverZipper()

bool Kart::KartState::isOverZipper ( ) const
inlinenodiscard

Definition at line 428 of file KartState.hh.

◆ isRampBoost()

bool Kart::KartState::isRampBoost ( ) const
inlinenodiscard

Definition at line 392 of file KartState.hh.

◆ isRejectRoad()

bool Kart::KartState::isRejectRoad ( ) const
inlinenodiscard

Definition at line 468 of file KartState.hh.

◆ isRejectRoadTrigger()

bool Kart::KartState::isRejectRoadTrigger ( ) const
inlinenodiscard

Definition at line 472 of file KartState.hh.

◆ isRespawnKillY()

bool Kart::KartState::isRespawnKillY ( ) const
inlinenodiscard

Definition at line 448 of file KartState.hh.

◆ isSkipWheelCalc()

bool Kart::KartState::isSkipWheelCalc ( ) const
inlinenodiscard

Definition at line 488 of file KartState.hh.

◆ isSlipdriftCharge()

bool Kart::KartState::isSlipdriftCharge ( ) const
inlinenodiscard

Definition at line 380 of file KartState.hh.

◆ isSoftWallDrift()

bool Kart::KartState::isSoftWallDrift ( ) const
inlinenodiscard

Definition at line 344 of file KartState.hh.

◆ isSomethingWallCollision()

bool Kart::KartState::isSomethingWallCollision ( ) const
inlinenodiscard

Definition at line 508 of file KartState.hh.

◆ isStickLeft()

bool Kart::KartState::isStickLeft ( ) const
inlinenodiscard

Definition at line 320 of file KartState.hh.

◆ isStickRight()

bool Kart::KartState::isStickRight ( ) const
inlinenodiscard

Definition at line 368 of file KartState.hh.

◆ isStickyRoad()

bool Kart::KartState::isStickyRoad ( ) const
inlinenodiscard

Definition at line 332 of file KartState.hh.

◆ isTouchingGround()

bool Kart::KartState::isTouchingGround ( ) const
inlinenodiscard

Definition at line 336 of file KartState.hh.

◆ isTrickable()

bool Kart::KartState::isTrickable ( ) const
inlinenodiscard

Definition at line 476 of file KartState.hh.

◆ isTrickRot()

bool Kart::KartState::isTrickRot ( ) const
inlinenodiscard

Definition at line 460 of file KartState.hh.

◆ isTrickStart()

bool Kart::KartState::isTrickStart ( ) const
inlinenodiscard

Definition at line 412 of file KartState.hh.

◆ isTriggerRespawn()

bool Kart::KartState::isTriggerRespawn ( ) const
inlinenodiscard

Definition at line 400 of file KartState.hh.

◆ isUNK2()

bool Kart::KartState::isUNK2 ( ) const
inlinenodiscard

Definition at line 504 of file KartState.hh.

◆ isVehicleBodyFloorCollision()

bool Kart::KartState::isVehicleBodyFloorCollision ( ) const
inlinenodiscard

Definition at line 308 of file KartState.hh.

◆ isWall3Collision()

bool Kart::KartState::isWall3Collision ( ) const
inlinenodiscard

Definition at line 288 of file KartState.hh.

◆ isWallCollision()

bool Kart::KartState::isWallCollision ( ) const
inlinenodiscard

Definition at line 292 of file KartState.hh.

◆ isWallCollisionStart()

bool Kart::KartState::isWallCollisionStart ( ) const
inlinenodiscard

Definition at line 324 of file KartState.hh.

◆ isWheelie()

bool Kart::KartState::isWheelie ( ) const
inlinenodiscard

Definition at line 384 of file KartState.hh.

◆ isWheelieRot()

bool Kart::KartState::isWheelieRot ( ) const
inlinenodiscard

Definition at line 480 of file KartState.hh.

◆ isZipperBoost()

bool Kart::KartState::isZipperBoost ( ) const
inlinenodiscard

Definition at line 436 of file KartState.hh.

◆ isZipperInvisibleWall()

bool Kart::KartState::isZipperInvisibleWall ( ) const
inlinenodiscard

Definition at line 432 of file KartState.hh.

◆ isZipperStick()

bool Kart::KartState::isZipperStick ( ) const
inlinenodiscard

Definition at line 456 of file KartState.hh.

◆ isZipperTrick()

bool Kart::KartState::isZipperTrick ( ) const
inlinenodiscard

Definition at line 440 of file KartState.hh.

◆ jumpPadVariant()

s32 Kart::KartState::jumpPadVariant ( ) const
inlinenodiscard

Definition at line 528 of file KartState.hh.

◆ reset()

void Kart::KartState::reset ( )
0x80594594

Definition at line 49 of file KartState.cc.

◆ resetEjection()

void Kart::KartState::resetEjection ( )
0x805958F0

Resets certain bitfields pertaining to ejections (reject road, half pipe zippers, etc.)

Definition at line 415 of file KartState.cc.

◆ resetFlags()

void Kart::KartState::resetFlags ( )
0x80594704

Definition at line 127 of file KartState.cc.

◆ setAccelerate()

void Kart::KartState::setAccelerate ( bool isSet)
inline

Definition at line 34 of file KartState.hh.

◆ setAfterCannon()

void Kart::KartState::setAfterCannon ( bool isSet)
inline

Definition at line 234 of file KartState.hh.

◆ setAfterRespawn()

void Kart::KartState::setAfterRespawn ( bool isSet)
inline

Definition at line 214 of file KartState.hh.

◆ setAllWheelsCollision()

void Kart::KartState::setAllWheelsCollision ( bool isSet)
inline

Definition at line 74 of file KartState.hh.

◆ setAnyWheelCollision()

void Kart::KartState::setAnyWheelCollision ( bool isSet)
inline

Definition at line 62 of file KartState.hh.

◆ setBeforeRespawn()

void Kart::KartState::setBeforeRespawn ( bool isSet)
inline

Definition at line 46 of file KartState.hh.

◆ setBoost()

void Kart::KartState::setBoost ( bool isSet)
inline

Definition at line 86 of file KartState.hh.

◆ setBoostOffroadInvincibility()

void Kart::KartState::setBoostOffroadInvincibility ( bool isSet)
inline

Definition at line 138 of file KartState.hh.

◆ setBoostRampType()

void Kart::KartState::setBoostRampType ( s32 val)
inline

Definition at line 246 of file KartState.hh.

◆ setBurnout()

void Kart::KartState::setBurnout ( bool isSet)
inline

Definition at line 174 of file KartState.hh.

◆ setCannonPointId()

void Kart::KartState::setCannonPointId ( u16 val)
inline

Definition at line 242 of file KartState.hh.

◆ setCannonStart()

void Kart::KartState::setCannonStart ( bool isSet)
inline

Definition at line 122 of file KartState.hh.

◆ setChargingSsmt()

void Kart::KartState::setChargingSsmt ( bool isSet)
inline

Definition at line 182 of file KartState.hh.

◆ setDisableBackwardsAccel()

void Kart::KartState::setDisableBackwardsAccel ( bool isSet)
inline

Definition at line 166 of file KartState.hh.

◆ setDriftAuto()

void Kart::KartState::setDriftAuto ( bool isSet)
inline

Definition at line 98 of file KartState.hh.

◆ setDriftInput()

void Kart::KartState::setDriftInput ( bool isSet)
inline

Definition at line 38 of file KartState.hh.

◆ setDriftManual()

void Kart::KartState::setDriftManual ( bool isSet)
inline

Definition at line 42 of file KartState.hh.

◆ setEndHalfPipe()

void Kart::KartState::setEndHalfPipe ( bool isSet)
inline

Definition at line 238 of file KartState.hh.

◆ setHalfPipeInvisibilityTimer()

void Kart::KartState::setHalfPipeInvisibilityTimer ( s16 val)
inline

Definition at line 254 of file KartState.hh.

◆ setHalfPipeRamp()

void Kart::KartState::setHalfPipeRamp ( bool isSet)
inline

Definition at line 142 of file KartState.hh.

◆ setHop()

void Kart::KartState::setHop ( bool isSet)
inline

Definition at line 82 of file KartState.hh.

◆ setHopStart()

void Kart::KartState::setHopStart ( bool isSet)
inline

Definition at line 54 of file KartState.hh.

◆ setHWG()

void Kart::KartState::setHWG ( bool isSet)
inline

Definition at line 230 of file KartState.hh.

◆ setInAction()

void Kart::KartState::setInAction ( bool isSet)
inline

Definition at line 114 of file KartState.hh.

◆ setInATrick()

void Kart::KartState::setInATrick ( bool isSet)
inline

Definition at line 134 of file KartState.hh.

◆ setInCannon()

void Kart::KartState::setInCannon ( bool isSet)
inline

Definition at line 126 of file KartState.hh.

◆ setInRespawn()

void Kart::KartState::setInRespawn ( bool isSet)
inline

Definition at line 210 of file KartState.hh.

◆ setJumpPad()

void Kart::KartState::setJumpPad ( bool isSet)
inline

Definition at line 106 of file KartState.hh.

◆ setJumpPadDisableYsusForce()

void Kart::KartState::setJumpPadDisableYsusForce ( bool isSet)
inline

Definition at line 218 of file KartState.hh.

◆ setJumpPadVariant()

void Kart::KartState::setJumpPadVariant ( s32 val)
inline

Definition at line 250 of file KartState.hh.

◆ setMushroomBoost()

void Kart::KartState::setMushroomBoost ( bool isSet)
inline

Definition at line 90 of file KartState.hh.

◆ setNoSparkInvisibleWall()

void Kart::KartState::setNoSparkInvisibleWall ( bool isSet)
inline

Definition at line 206 of file KartState.hh.

◆ setOverZipper()

void Kart::KartState::setOverZipper ( bool isSet)
inline

Definition at line 146 of file KartState.hh.

◆ setRampBoost()

void Kart::KartState::setRampBoost ( bool isSet)
inline

Definition at line 110 of file KartState.hh.

◆ setRejectRoad()

void Kart::KartState::setRejectRoad ( bool isSet)
inline

Definition at line 186 of file KartState.hh.

◆ setRejectRoadTrigger()

void Kart::KartState::setRejectRoadTrigger ( bool isSet)
inline

Definition at line 190 of file KartState.hh.

◆ setRespawnKillY()

void Kart::KartState::setRespawnKillY ( bool isSet)
inline

Definition at line 170 of file KartState.hh.

◆ setSkipWheelCalc()

void Kart::KartState::setSkipWheelCalc ( bool isSet)
inline

Definition at line 202 of file KartState.hh.

◆ setSlipdriftCharge()

void Kart::KartState::setSlipdriftCharge ( bool isSet)
inline

Definition at line 94 of file KartState.hh.

◆ setSoftWallDrift()

void Kart::KartState::setSoftWallDrift ( bool isSet)
inline

Definition at line 226 of file KartState.hh.

◆ setSomethingWallCollision()

void Kart::KartState::setSomethingWallCollision ( bool isSet)
inline

Definition at line 222 of file KartState.hh.

◆ setStickyRoad()

void Kart::KartState::setStickyRoad ( bool isSet)
inline

Definition at line 70 of file KartState.hh.

◆ setTouchingGround()

void Kart::KartState::setTouchingGround ( bool isSet)
inline

Definition at line 78 of file KartState.hh.

◆ setTrickable()

void Kart::KartState::setTrickable ( bool isSet)
inline

Definition at line 194 of file KartState.hh.

◆ setTrickableTimer()

void Kart::KartState::setTrickableTimer ( s16 val)
inline

Definition at line 258 of file KartState.hh.

◆ setTrickRot()

void Kart::KartState::setTrickRot ( bool isSet)
inline

Definition at line 178 of file KartState.hh.

◆ setTrickStart()

void Kart::KartState::setTrickStart ( bool isSet)
inline

Definition at line 130 of file KartState.hh.

◆ setTriggerRespawn()

void Kart::KartState::setTriggerRespawn ( bool isSet)
inline

Definition at line 118 of file KartState.hh.

◆ setVehicleBodyFloorCollision()

void Kart::KartState::setVehicleBodyFloorCollision ( bool isSet)
inline

Definition at line 58 of file KartState.hh.

◆ setWallCollision()

void Kart::KartState::setWallCollision ( bool isSet)
inline

Definition at line 50 of file KartState.hh.

◆ setWallCollisionStart()

void Kart::KartState::setWallCollisionStart ( bool isSet)
inline

Definition at line 66 of file KartState.hh.

◆ setWheelie()

void Kart::KartState::setWheelie ( bool isSet)
inline

Definition at line 102 of file KartState.hh.

◆ setWheelieRot()

void Kart::KartState::setWheelieRot ( bool isSet)
inline

Definition at line 198 of file KartState.hh.

◆ setZipperBoost()

void Kart::KartState::setZipperBoost ( bool isSet)
inline

Definition at line 154 of file KartState.hh.

◆ setZipperInvisibleWall()

void Kart::KartState::setZipperInvisibleWall ( bool isSet)
inline

Definition at line 150 of file KartState.hh.

◆ setZipperStick()

void Kart::KartState::setZipperStick ( bool isSet)
inline

Definition at line 158 of file KartState.hh.

◆ setZipperTrick()

void Kart::KartState::setZipperTrick ( bool isSet)
inline

Definition at line 162 of file KartState.hh.

◆ softWallSpeed()

const EGG::Vector3f & Kart::KartState::softWallSpeed ( ) const
inlinenodiscard

Definition at line 548 of file KartState.hh.

◆ startBoostCharge()

f32 Kart::KartState::startBoostCharge ( ) const
inlinenodiscard

Definition at line 552 of file KartState.hh.

◆ stickX()

f32 Kart::KartState::stickX ( ) const
inlinenodiscard

Definition at line 532 of file KartState.hh.

◆ stickY()

f32 Kart::KartState::stickY ( ) const
inlinenodiscard

Definition at line 536 of file KartState.hh.

◆ top()

const EGG::Vector3f & Kart::KartState::top ( ) const
inlinenodiscard

Definition at line 544 of file KartState.hh.

◆ trickableTimer()

s16 Kart::KartState::trickableTimer ( ) const
inlinenodiscard

Definition at line 560 of file KartState.hh.

◆ wallBonkTimer()

s16 Kart::KartState::wallBonkTimer ( ) const
inlinenodiscard

Definition at line 556 of file KartState.hh.

Member Data Documentation

◆ m_airtime

u32 Kart::KartState::m_airtime
private

Definition at line 660 of file KartState.hh.

◆ m_bAccelerate

bool Kart::KartState::m_bAccelerate
private

Accel button is pressed.

Definition at line 571 of file KartState.hh.

◆ m_bAccelerateStart

bool Kart::KartState::m_bAccelerateStart
private

Set if m_bAccelerate was toggled on this frame.

Definition at line 583 of file KartState.hh.

◆ m_bAfterCannon

bool Kart::KartState::m_bAfterCannon
private

Definition at line 649 of file KartState.hh.

◆ m_bAfterRespawn

bool Kart::KartState::m_bAfterRespawn
private

Definition at line 638 of file KartState.hh.

◆ m_bAirStart

bool Kart::KartState::m_bAirStart
private

Definition at line 595 of file KartState.hh.

◆ m_bAirtimeOver20

bool Kart::KartState::m_bAirtimeOver20
private

Set after 20 frames of airtime, resets on landing.

Definition at line 590 of file KartState.hh.

◆ m_bAllWheelsCollision

bool Kart::KartState::m_bAllWheelsCollision
private

Set when all wheels are touching floor collision.

Definition at line 587 of file KartState.hh.

◆ m_bAnyWheelCollision

bool Kart::KartState::m_bAnyWheelCollision
private

Set when any wheel is touching floor collision.

Definition at line 586 of file KartState.hh.

◆ m_bAutoDrift

bool Kart::KartState::m_bAutoDrift
private

True if auto transmission, false if manual.

Definition at line 657 of file KartState.hh.

◆ m_bBeforeRespawn

bool Kart::KartState::m_bBeforeRespawn
private

Set on respawn collision, cleared on position snap.

Definition at line 579 of file KartState.hh.

◆ m_bBoost

bool Kart::KartState::m_bBoost
private

Set while in a boost.

Definition at line 594 of file KartState.hh.

◆ m_bBoostOffroadInvincibility

bool Kart::KartState::m_bBoostOffroadInvincibility
private

Set if we should ignore offroad slowdown this frame.

Definition at line 614 of file KartState.hh.

◆ m_bBrake

bool Kart::KartState::m_bBrake
private

Brake button is pressed.

Definition at line 572 of file KartState.hh.

◆ m_bBurnout

bool Kart::KartState::m_bBurnout
private

Set during a burnout on race start.

Definition at line 623 of file KartState.hh.

◆ m_bCannonStart

bool Kart::KartState::m_bCannonStart
private

Definition at line 610 of file KartState.hh.

◆ m_bChargeStartBoost

bool Kart::KartState::m_bChargeStartBoost
private

Like m_bAccelerate but during countdown.

Definition at line 650 of file KartState.hh.

◆ m_bChargingSsmt

bool Kart::KartState::m_bChargingSsmt
private

Tracks whether we are charging a stand-still mini-turbo.

Definition at line 625 of file KartState.hh.

◆ m_bDisableBackwardsAccel

bool Kart::KartState::m_bDisableBackwardsAccel
private

Enforces a 20f delay when reversing after charging SSMT.

Definition at line 621 of file KartState.hh.

◆ m_bDriftAuto

bool Kart::KartState::m_bDriftAuto
private

Currently in a drift w/ automatic.

Definition at line 598 of file KartState.hh.

◆ m_bDriftInput

bool Kart::KartState::m_bDriftInput
private

A "fake" button, normally set if you meet the speed requirement to hop.

Warning
When playing back a ghost, the game will register a hop regardless of whether or not the acceleration button is pressed. This can lead to "successful" synchronization of ghosts which could not have been created legitimately in the first place.

Definition at line 577 of file KartState.hh.

◆ m_bDriftManual

bool Kart::KartState::m_bDriftManual
private

Currently in a drift w/ manual.

Definition at line 578 of file KartState.hh.

◆ m_bEndHalfPipe

bool Kart::KartState::m_bEndHalfPipe
private

Definition at line 651 of file KartState.hh.

◆ m_bGroundStart

bool Kart::KartState::m_bGroundStart
private

Set first frame landing from airtime.

Definition at line 584 of file KartState.hh.

◆ m_bHalfPipeRamp

bool Kart::KartState::m_bHalfPipeRamp
private

Set while colliding with zipper KCL.

Definition at line 615 of file KartState.hh.

◆ m_bHop

bool Kart::KartState::m_bHop
private

Set while we are in a drift hop. Clears when we land.

Definition at line 593 of file KartState.hh.

◆ m_bHopStart

bool Kart::KartState::m_bHopStart
private

Set if m_bDriftInput was toggled on this frame.

Definition at line 582 of file KartState.hh.

◆ m_bHWG

bool Kart::KartState::m_bHWG
private

Set when "Horizontal Wall Glitch" is active.

Definition at line 648 of file KartState.hh.

◆ m_bInAction

bool Kart::KartState::m_bInAction
private

Definition at line 608 of file KartState.hh.

◆ m_bInATrick

bool Kart::KartState::m_bInATrick
private

Definition at line 613 of file KartState.hh.

◆ m_bInCannon

bool Kart::KartState::m_bInCannon
private

Definition at line 611 of file KartState.hh.

◆ m_bInRespawn

bool Kart::KartState::m_bInRespawn
private

Definition at line 637 of file KartState.hh.

◆ m_bJumpPad

bool Kart::KartState::m_bJumpPad
private

Definition at line 601 of file KartState.hh.

◆ m_bJumpPadDisableYsusForce

bool Kart::KartState::m_bJumpPadDisableYsusForce
private

Definition at line 639 of file KartState.hh.

◆ m_bMushroomBoost

bool Kart::KartState::m_bMushroomBoost
private

Set while we are in a mushroom boost.

Definition at line 597 of file KartState.hh.

◆ m_bNoSparkInvisibleWall

bool Kart::KartState::m_bNoSparkInvisibleWall
private

Definition at line 636 of file KartState.hh.

◆ m_boostRampType

s32 Kart::KartState::m_boostRampType
private

Definition at line 665 of file KartState.hh.

◆ m_bOverZipper

bool Kart::KartState::m_bOverZipper
private

Set while mid-air from a zipper.

Definition at line 616 of file KartState.hh.

◆ m_bRampBoost

bool Kart::KartState::m_bRampBoost
private

Definition at line 602 of file KartState.hh.

◆ m_bRejectRoad

bool Kart::KartState::m_bRejectRoad
private

Collision which causes a change in the player's pos and rot.

Definition at line 626 of file KartState.hh.

◆ m_bRejectRoadTrigger

bool Kart::KartState::m_bRejectRoadTrigger
private

e.g. DK Summit ending, and Maple Treeway side walls.

Definition at line 627 of file KartState.hh.

◆ m_bRespawnKillY

bool Kart::KartState::m_bRespawnKillY
private

Set while respawning to cap external velocity at 0.

Definition at line 622 of file KartState.hh.

◆ m_bSkipWheelCalc

bool Kart::KartState::m_bSkipWheelCalc
private

Definition at line 635 of file KartState.hh.

◆ m_bSlipdriftCharge

bool Kart::KartState::m_bSlipdriftCharge
private

Definition at line 599 of file KartState.hh.

◆ m_bSoftWallDrift

bool Kart::KartState::m_bSoftWallDrift
private

Definition at line 647 of file KartState.hh.

◆ m_bSomethingWallCollision

bool Kart::KartState::m_bSomethingWallCollision
private

Definition at line 646 of file KartState.hh.

◆ m_bStickLeft

bool Kart::KartState::m_bStickLeft
private

Set on left stick input. Mutually exclusive to m_bStickRight.

Definition at line 588 of file KartState.hh.

◆ m_bStickRight

bool Kart::KartState::m_bStickRight
private

Set on right stick input. Mutually exclusive to m_bStickLeft.

Definition at line 596 of file KartState.hh.

◆ m_bStickyRoad

bool Kart::KartState::m_bStickyRoad
private

Like the rBC stairs.

Definition at line 591 of file KartState.hh.

◆ m_bTouchingGround

bool Kart::KartState::m_bTouchingGround
private

Set when any part of the vehicle is colliding with floor KCL.

Definition at line 592 of file KartState.hh.

◆ m_bTrickable

bool Kart::KartState::m_bTrickable
private

Definition at line 628 of file KartState.hh.

◆ m_bTrickRot

bool Kart::KartState::m_bTrickRot
private

Definition at line 624 of file KartState.hh.

◆ m_bTrickStart

bool Kart::KartState::m_bTrickStart
private

Definition at line 612 of file KartState.hh.

◆ m_bTriggerRespawn

bool Kart::KartState::m_bTriggerRespawn
private

Definition at line 609 of file KartState.hh.

◆ m_bUNK2

bool Kart::KartState::m_bUNK2
private

Definition at line 645 of file KartState.hh.

◆ m_bVehicleBodyFloorCollision

bool Kart::KartState::m_bVehicleBodyFloorCollision
private

Set if the vehicle body is colliding with the floor.

Definition at line 585 of file KartState.hh.

◆ m_bWall3Collision

bool Kart::KartState::m_bWall3Collision
private

Set when colliding with wall KCL COL_TYPE_WALL_2.

Definition at line 580 of file KartState.hh.

◆ m_bWallCollision

bool Kart::KartState::m_bWallCollision
private

Set if we are colliding with a wall.

Definition at line 581 of file KartState.hh.

◆ m_bWallCollisionStart

bool Kart::KartState::m_bWallCollisionStart
private

Set if we have just started colliding with a wall.

Definition at line 589 of file KartState.hh.

◆ m_bWheelie

bool Kart::KartState::m_bWheelie
private

Set while we are in a wheelie (even during the countdown).

Definition at line 600 of file KartState.hh.

◆ m_bWheelieRot

bool Kart::KartState::m_bWheelieRot
private

Definition at line 634 of file KartState.hh.

◆ m_bZipperBoost

bool Kart::KartState::m_bZipperBoost
private

Set when boosting after landing from a zipper.

Definition at line 618 of file KartState.hh.

◆ m_bZipperInvisibleWall

bool Kart::KartState::m_bZipperInvisibleWall
private

Set when colliding with invisible wall above a zipper.

Definition at line 617 of file KartState.hh.

◆ m_bZipperStick

bool Kart::KartState::m_bZipperStick
private

Set while mid-air and still influenced by the zipper.

Definition at line 619 of file KartState.hh.

◆ m_bZipperTrick

bool Kart::KartState::m_bZipperTrick
private

Set while tricking mid-air from a zipper.

Definition at line 620 of file KartState.hh.

◆ m_cannonPointId

u16 Kart::KartState::m_cannonPointId
private

Definition at line 664 of file KartState.hh.

◆ m_halfPipeInvisibilityTimer

s16 Kart::KartState::m_halfPipeInvisibilityTimer
private

Definition at line 667 of file KartState.hh.

◆ m_hwgTimer

s32 Kart::KartState::m_hwgTimer
private

Definition at line 663 of file KartState.hh.

◆ m_jumpPadVariant

s32 Kart::KartState::m_jumpPadVariant
private

Definition at line 666 of file KartState.hh.

◆ m_softWallSpeed

EGG::Vector3f Kart::KartState::m_softWallSpeed
private

Definition at line 662 of file KartState.hh.

◆ m_startBoostCharge

f32 Kart::KartState::m_startBoostCharge
private

0-1 representation of start boost charge. Burnout if >0.95f.

Definition at line 670 of file KartState.hh.

◆ m_startBoostIdx

size_t Kart::KartState::m_startBoostIdx
private

Used to map m_startBoostCharge to a start boost duration.

Definition at line 671 of file KartState.hh.

◆ m_stickX

f32 Kart::KartState::m_stickX
private

One of 15 discrete stick values from [-1.0, 1.0].

Definition at line 668 of file KartState.hh.

◆ m_stickY

f32 Kart::KartState::m_stickY
private

One of 15 discrete stick values from [-1.0, 1.0].

Definition at line 669 of file KartState.hh.

◆ m_top

EGG::Vector3f Kart::KartState::m_top
private

Definition at line 661 of file KartState.hh.

◆ m_trickableTimer

s16 Kart::KartState::m_trickableTimer
private

Definition at line 673 of file KartState.hh.

◆ m_wallBonkTimer

s16 Kart::KartState::m_wallBonkTimer
private

2f counter that stunts your speed after hitting a wall.

Note
This object is labeled as having a poor name. It should be renamed to better represent its purpose.

Definition at line 672 of file KartState.hh.

◆ START_BOOST_ENTRIES

std::array<StartBoostEntry, 6> START_BOOST_ENTRIES
staticconstexpr0x808B64F8
Initial value:
= {{
{0.85f, 0},
{0.88f, 10},
{0.905f, 20},
{0.925f, 30},
{0.94f, 45},
{0.95f, 70},
}}

Definition at line 20 of file KartState.cc.