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

#include <KartItem.hh>

Description

State management for item usage.

Definition at line 13 of file KartItem.hh.

Inheritance diagram for Kinoko::Item::KartItem:

Public Member Functions

void init (size_t playerIdx)
void calc ()
 Calculates item activation based on the controller input state.
void clear ()
void activateMushroom ()
void useMushroom ()

Getters

ItemInventoryinventory ()
const ItemInventoryinventory () const

Private Types

enum class  eFlags {
  Lockout = 10 ,
  ItemButtonHold = 12 ,
  ItemButtonActivation = 14
}
typedef EGG::TBitFlag< u16, eFlags > Flags

Private Attributes

Flags m_flags
ItemInventory m_inventory

Additional Inherited Members

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)
static std::list< KartObjectProxy *, EGG::Allocator< KartObjectProxy * > > & proxyList ()

Member Typedef Documentation

◆ Flags

typedef EGG::TBitFlag<u16, eFlags> Kinoko::Item::KartItem::Flags
private

Definition at line 41 of file KartItem.hh.

Member Enumeration Documentation

◆ eFlags

enum class Kinoko::Item::KartItem::eFlags
strongprivate

Definition at line 36 of file KartItem.hh.

Constructor & Destructor Documentation

◆ KartItem()

Kinoko::Item::KartItem::KartItem ( )
0x8079754C

Definition at line 11 of file KartItem.cc.

◆ ~KartItem()

Kinoko::Item::KartItem::~KartItem ( )
default0x8079951C

Member Function Documentation

◆ activateMushroom()

void Kinoko::Item::KartItem::activateMushroom ( )
0x8079864C

Definition at line 70 of file KartItem.cc.

◆ calc()

void Kinoko::Item::KartItem::calc ( )
0x80797928

Calculates item activation based on the controller input state.

Definition at line 25 of file KartItem.cc.

◆ clear()

void Kinoko::Item::KartItem::clear ( )
0x80798848

Definition at line 63 of file KartItem.cc.

◆ init()

void Kinoko::Item::KartItem::init ( size_t playerIdx)
0x807976E0

Definition at line 19 of file KartItem.cc.

◆ inventory() [1/2]

ItemInventory & Kinoko::Item::KartItem::inventory ( )
inlinenodiscard

Definition at line 26 of file KartItem.hh.

◆ inventory() [2/2]

const ItemInventory & Kinoko::Item::KartItem::inventory ( ) const
inlinenodiscard

Definition at line 30 of file KartItem.hh.

◆ useMushroom()

void Kinoko::Item::KartItem::useMushroom ( )
0x807A9D3C

Definition at line 75 of file KartItem.cc.

Member Data Documentation

◆ m_flags

Flags Kinoko::Item::KartItem::m_flags
private

Definition at line 43 of file KartItem.hh.

◆ m_inventory

ItemInventory Kinoko::Item::KartItem::m_inventory
private

Definition at line 44 of file KartItem.hh.