Definition at line 12 of file ObjectCarTGE.hh.
Public Types | |
| enum class | CarType { Normal = 0 , Truck = 1 , BombCar = 2 } |
Public Types inherited from Field::ObjectBase | |
| enum class | eFlags { Position = 0 , Rotation = 1 , Matrix = 2 , Scale = 3 } |
| typedef EGG::TBitFlag< u16, eFlags > | Flags |
Public Member Functions | |
| ObjectCarTGE (const System::MapdataGeoObj ¶ms) | |
| void | init () override |
| void | calc () override |
| u32 | loadFlags () const override |
| const char * | getResources () const override |
| const char * | getKclName () const override |
| void | createCollision () override |
| void | calcCollisionTransform () override |
| f32 | getCollisionRadius () const override |
| Kart::Reaction | onCollision (Kart::KartObject *kartObj, Kart::Reaction reactionOnKart, Kart::Reaction reactionOnObj, EGG::Vector3f &hitDepth) override |
| bool | checkCollision (ObjectCollisionBase *lhs, EGG::Vector3f &dist) override |
| const EGG::Vector3f & | collisionCenter () const override |
| void | setHighwayManager (const ObjectHighwayManager *highwayMgr) |
| void | reset () |
| bool | squashed () const |
Public Member Functions inherited from Field::ObjectCollidable | |
| ObjectCollidable (const System::MapdataGeoObj ¶ms) | |
| ObjectCollidable (const char *name, const EGG::Vector3f &pos, const EGG::Vector3f &rot, const EGG::Vector3f &scale) | |
| void | load () override |
| void | calcCollisionTransform () override |
| f32 | getCollisionRadius () const override |
| Finds the radius that fits fully in a BoxColUnit. | |
| virtual void | loadAABB (f32 maxSpeed) |
| virtual void | loadAABB (f32 radius, f32 maxSpeed) |
| virtual void | processKartReactions (Kart::KartObject *kartObj, Kart::Reaction &reactionOnKart, Kart::Reaction &reactionOnObj) |
| virtual void | onWallCollision (Kart::KartObject *, const EGG::Vector3f &) |
| virtual void | onObjectCollision (Kart::KartObject *) |
| virtual const EGG::Vector3f & | getCollisionTranslation () const |
| virtual ObjectCollisionBase * | collision () const |
Public Member Functions inherited from Field::ObjectBase | |
| ObjectBase (const System::MapdataGeoObj ¶ms) | |
| ObjectBase (const char *name, const EGG::Vector3f &pos, const EGG::Vector3f &rot, const EGG::Vector3f &scale) | |
| virtual void | calcModel () |
| virtual void | loadGraphics () |
| virtual void | loadAnims () |
| virtual void | loadRail () |
| virtual const char * | getName () const |
| virtual void | resize (f32 radius, f32 maxSpeed) |
| virtual void | unregisterCollision () |
| virtual void | disableCollision () const |
| virtual void | enableCollision () const |
| virtual const BoxColUnit * | getUnit () const |
| const RailInterpolator * | railInterpolator () const |
| virtual const EGG::Vector3f & | getPosition () const |
| virtual ObjectId | id () const |
| const EGG::Vector3f & | pos () const |
| void | setPos (const EGG::Vector3f &pos) |
| void | setScale (const EGG::Vector3f &scale) |
| void | setTransform (const EGG::Matrix34f &mat) |
| const EGG::Vector3f & | scale () const |
Private Member Functions | |
| void | enterStateStub () |
| void | calcStateStub () |
| void | calcState1 () |
| The state when cars are speeding up. | |
| void | calcState2 () |
| The state when cars are slowing down. | |
| void | calcPos () |
Private Attributes | |
| const ObjectHighwayManager * | m_highwayMgr |
| ObjectCollisionBase * | m_auxCollision |
| f32 | m_highwayVel |
| Speed while on the highway. | |
| f32 | m_localVel |
| Speed while off the highway. | |
| char | m_carName [32] |
| char | m_mdlName [32] |
| CarType | m_carType |
| Car, truck, or bomb car. | |
| ObjectId | m_dummyId |
| EGG::Vector3f | m_scaledTangentDir |
| f32 | m_currSpeed |
| EGG::Vector3f | m_up |
| EGG::Vector3f | m_tangent |
| bool | m_squashed |
| bool | m_hasAuxCollision |
| f32 | m_hitAngle |
Static Private Attributes | |
| static constexpr f32 | TOLL_BOOTH_ACCEL = 200.0f |
| static constexpr std::array< StateManagerEntry, 3 > | STATE_ENTRIES |
Additional Inherited Members | |
Protected Member Functions inherited from Field::ObjectCollidable | |
| void | createCollision () override |
| void | registerManagedObject () |
Protected Member Functions inherited from Field::ObjectBase | |
| void | calcTransform () |
| void | linkAnims (const std::span< const char * > &names, const std::span< Render::AnmType > types) |
| void | setMatrixTangentTo (const EGG::Vector3f &up, const EGG::Vector3f &tangent) |
| void | setMatrixFromOrthonormalBasisAndPos (const EGG::Vector3f &v) |
Protected Member Functions inherited from Field::StateManager | |
| StateManager (void *obj, const std::span< const StateManagerEntry > &entries) | |
| void | calc () |
Static Protected Member Functions inherited from Field::ObjectBase | |
| static f32 | CheckPointAgainstLineSegment (const EGG::Vector3f &point, const EGG::Vector3f &a, const EGG::Vector3f &b) |
| Calculates on what side of line segment ab point lies. | |
| static EGG::Vector3f | RotateXZByYaw (f32 angle, const EGG::Vector3f &v) |
| Rotates a vector around the Y-axis and returns the XZ-plane portion of the vector. | |
| static EGG::Vector3f | RotateAxisAngle (f32 angle, const EGG::Vector3f &axis, const EGG::Vector3f &v1) |
| static void | SetRotTangentHorizontal (EGG::Matrix34f &mat, const EGG::Vector3f &up, const EGG::Vector3f &tangent) |
| static EGG::Matrix34f | OrthonormalBasis (const EGG::Vector3f &v) |
| static EGG::Matrix34f | RailOrthonormalBasis (const RailInterpolator &railInterpolator) |
| static EGG::Vector3f | Interpolate (f32 t, const EGG::Vector3f &v0, const EGG::Vector3f &v1) |
Protected Attributes inherited from Field::ObjectCollidable | |
| ObjectCollisionBase * | m_collision |
Protected Attributes inherited from Field::ObjectBase | |
| Render::DrawMdl * | m_drawMdl |
| Abstract::g3d::ResFile * | m_resFile |
| ObjectId | m_id |
| RailInterpolator * | m_railInterpolator |
| BoxColUnit * | m_boxColUnit |
| Flags | m_flags |
| EGG::Vector3f | m_pos |
| EGG::Vector3f | m_rot |
| EGG::Vector3f | m_scale |
| EGG::Matrix34f | m_transform |
| const System::MapdataGeoObj * | m_mapObj |
Protected Attributes inherited from Field::StateManager | |
| u16 | m_currentStateId |
| s32 | m_nextStateId |
| u32 | m_currentFrame |
| std::span< u16 > | m_entryIds |
| std::span< const StateManagerEntry > | m_entries |
| void * | m_obj |
|
strong |
| Enumerator | |
|---|---|
| BombCar | Unused in time trials. |
Definition at line 14 of file ObjectCarTGE.hh.
|
0x806D5EE4 |
Definition at line 15 of file ObjectCarTGE.cc.
|
override0x806D691C |
Definition at line 100 of file ObjectCarTGE.cc.
|
overridevirtual0x806D6ECC |
Reimplemented from Field::ObjectBase.
Definition at line 142 of file ObjectCarTGE.cc.
|
overridevirtual0x806D7BF8 |
Implements Field::ObjectBase.
Definition at line 181 of file ObjectCarTGE.cc.
|
private0x806D9000 |
Definition at line 313 of file ObjectCarTGE.cc.
|
private0x806D7D70 |
The state when cars are speeding up.
On Moonview Highway, the speed cap m_highwayVel is 70, which means this state is only executed for 1 frame when cars get on the highway.
Definition at line 284 of file ObjectCarTGE.cc.
|
private0x806D7E0C |
The state when cars are slowing down.
On Moonview Highway, the speed floor m_localVel is 40, which means this state is only executed for 1 frame when cars get off the highway.
Definition at line 300 of file ObjectCarTGE.cc.
|
private |
Definition at line 278 of file ObjectCarTGE.cc.
|
overridevirtual0x806DA660 |
Reimplemented from Field::ObjectCollidable.
Definition at line 248 of file ObjectCarTGE.cc.
|
nodiscardoverridevirtual0x806D7CF8 |
Reimplemented from Field::ObjectCollidable.
Definition at line 261 of file ObjectCarTGE.cc.
|
overridevirtual0x806D7AF8 |
Implements Field::ObjectBase.
Definition at line 162 of file ObjectCarTGE.cc.
|
private |
Definition at line 276 of file ObjectCarTGE.cc.
|
nodiscardoverridevirtual0x806D69C0 |
Reimplemented from Field::ObjectBase.
Definition at line 199 of file ObjectCarTGE.cc.
|
inlinenodiscardoverridevirtual0x806DA7A4 |
Reimplemented from Field::ObjectBase.
Definition at line 37 of file ObjectCarTGE.hh.
|
inlinenodiscardoverridevirtual0x806D68B0 |
Reimplemented from Field::ObjectBase.
Definition at line 32 of file ObjectCarTGE.hh.
|
overridevirtual0x806D6B14 |
Reimplemented from Field::ObjectBase.
Definition at line 105 of file ObjectCarTGE.cc.
|
inlinenodiscardoverridevirtual0x806DA7AC |
Reimplemented from Field::ObjectBase.
Definition at line 27 of file ObjectCarTGE.hh.
|
overridevirtual0x806D7328 |
Reimplemented from Field::ObjectCollidable.
Definition at line 208 of file ObjectCarTGE.cc.
|
inline0x806D9A04 |
Definition at line 54 of file ObjectCarTGE.hh.
|
inline |
Definition at line 49 of file ObjectCarTGE.hh.
|
inlinenodiscard |
Definition at line 58 of file ObjectCarTGE.hh.
|
private |
Definition at line 73 of file ObjectCarTGE.hh.
|
private |
Definition at line 76 of file ObjectCarTGE.hh.
|
private |
Car, truck, or bomb car.
Definition at line 78 of file ObjectCarTGE.hh.
|
private |
Definition at line 81 of file ObjectCarTGE.hh.
|
private |
Definition at line 79 of file ObjectCarTGE.hh.
|
private |
Definition at line 85 of file ObjectCarTGE.hh.
|
private |
Definition at line 72 of file ObjectCarTGE.hh.
|
private |
Speed while on the highway.
Definition at line 74 of file ObjectCarTGE.hh.
|
private |
Definition at line 86 of file ObjectCarTGE.hh.
|
private |
Speed while off the highway.
Definition at line 75 of file ObjectCarTGE.hh.
|
private |
Definition at line 77 of file ObjectCarTGE.hh.
|
private |
Definition at line 80 of file ObjectCarTGE.hh.
|
private |
Definition at line 84 of file ObjectCarTGE.hh.
|
private |
Definition at line 83 of file ObjectCarTGE.hh.
|
private |
Definition at line 82 of file ObjectCarTGE.hh.
|
staticconstexprprivate |
Definition at line 88 of file ObjectCarTGE.hh.
|
staticconstexprprivate |
Definition at line 63 of file ObjectCarTGE.hh.