#include <ObjectHeyho.hh>
Shy guys on DK Summit.
Definition at line 9 of file ObjectHeyho.hh.
Public Member Functions | |
| ObjectHeyho (const System::MapdataGeoObj ¶ms) | |
| void | init () override |
| void | calc () override |
| void | loadAnims () override |
| void | calcCollisionTransform () override |
| u32 | loadFlags () const override |
| Public Member Functions inherited from Kinoko::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 |
| 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 Kart::Reaction | onCollision (Kart::KartObject *, Kart::Reaction reactionOnKart, Kart::Reaction, EGG::Vector3f &) |
| virtual void | onWallCollision (Kart::KartObject *, const EGG::Vector3f &) |
| virtual void | onObjectCollision (Kart::KartObject *) |
| virtual bool | checkCollision (ObjectCollisionBase *lhs, EGG::Vector3f &dist) |
| virtual const EGG::Vector3f & | getCollisionTranslation () const |
| virtual ObjectCollisionBase * | collision () const |
| Public Member Functions inherited from Kinoko::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 const char * | getResources () const |
| virtual void | loadGraphics () |
| virtual void | loadRail () |
| virtual const char * | getName () const |
| virtual const char * | getKclName () 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 |
| void | setPos (const EGG::Vector3f &pos) |
| void | addPos (const EGG::Vector3f &v) |
| void | subPos (const EGG::Vector3f &v) |
| void | setScale (const EGG::Vector3f &scale) |
| void | setScale (f32 scale) |
| void | setRot (const EGG::Vector3f &rot) |
| void | setRotNoFlag (const EGG::Vector3f &rot) |
| void | addRot (const EGG::Vector3f &v) |
| void | subRot (const EGG::Vector3f &v) |
| void | setTransform (const EGG::Matrix34f &mat) |
| const EGG::Vector3f & | pos () const |
| const EGG::Vector3f & | scale () const |
| const EGG::Vector3f & | rot () const |
| const EGG::Matrix34f & | transform () const |
Private Types | |
| enum class | Animation { Move = 1 , Jump = 2 , Jumped = 3 } |
Private Member Functions | |
| void | changeAnimation (Animation anim) |
| void | enterMove () |
| void | enterJump () |
| void | calcMove () |
| void | calcJump () |
| void | calcStateTransition () |
| void | calcMotion () |
| void | calcInterp () |
Private Attributes | |
| const s32 | m_color |
| f32 | m_apex |
| EGG::Vector3f | m_midpoint |
| EGG::Vector3f | m_transformOffset |
| f32 | m_currentVel |
| f32 | m_accel |
| f32 | m_maxVelSq |
| EGG::Vector3f | m_up |
| EGG::Vector3f | m_forward |
| EGG::Vector3f | m_floorNrm |
| bool | m_floorCollision |
| Animation | m_currentAnim |
| bool | m_freeFall |
| f32 | m_launchVel |
| s16 | m_spinFrame |
Static Private Attributes | |
| static constexpr std::array< StateManagerEntry, 2 > | STATE_ENTRIES |
| static constexpr EGG::Vector3f | COLLISION_OFFSET = EGG::Vector3f(0.0f, 10.0f, 0.0f) |
| static constexpr f32 | COLLISION_RADIUS = 100.0f |
Additional Inherited Members | |
| Public Types inherited from Kinoko::Field::ObjectBase | |
| enum class | eFlags { Position = 0 , Rotation = 1 , Matrix = 2 , Scale = 3 } |
| typedef EGG::TBitFlag< u16, eFlags > | Flags |
| Protected Member Functions inherited from Kinoko::Field::ObjectCollidable | |
| void | createCollision () override |
| virtual const EGG::Vector3f & | collisionCenter () const |
| void | registerManagedObject () |
| Protected Member Functions inherited from Kinoko::Field::ObjectBase | |
| void | calcTransform () |
| void | calcRotLock () |
| 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 Kinoko::Field::StateManager | |
| StateManager (void *obj, const std::span< const StateManagerEntry > &entries) | |
| void | calc () |
| Static Protected Member Functions inherited from Kinoko::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 | AdjustVecForward (f32 sidewaysScalar, f32 forwardScalar, f32 minSpeed, const EGG::Vector3f &src, EGG::Vector3f forward) |
| static f32 | CalcParabolicDisplacement (f32 initVel, f32 accel, u32 frame) |
| Solves the standard kinematic equation \(y(t) = v_0\, t - \frac{1}{2} a t^{2}\). | |
| static EGG::Vector3f | Interpolate (f32 t, const EGG::Vector3f &v0, const EGG::Vector3f &v1) |
| Protected Attributes inherited from Kinoko::Field::ObjectCollidable | |
| ObjectCollisionBase * | m_collision |
| Protected Attributes inherited from Kinoko::Field::ObjectBase | |
| Render::DrawMdl * | m_drawMdl |
| Abstract::g3d::ResFile * | m_resFile |
| ObjectId | m_id |
| RailInterpolator * | m_railInterpolator |
| BoxColUnit * | m_boxColUnit |
| const System::MapdataGeoObj * | m_mapObj |
| Protected Attributes inherited from Kinoko::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 |
|
strongprivate |
Definition at line 25 of file ObjectHeyho.hh.
|
0x806CE828 |
Definition at line 9 of file ObjectHeyho.cc.
|
overridedefault0x806CEB24 |
|
overridevirtual0x806CEDF8 |
Reimplemented from Kinoko::Field::ObjectBase.
Definition at line 51 of file ObjectHeyho.cc.
|
overridevirtual0x806D01D4 |
Reimplemented from Kinoko::Field::ObjectCollidable.
Definition at line 78 of file ObjectHeyho.cc.
|
private0x806CFFB0 |
Definition at line 231 of file ObjectHeyho.cc.
|
private0x806CF72C |
Definition at line 117 of file ObjectHeyho.cc.
|
private0x806CFDB0 |
Definition at line 191 of file ObjectHeyho.cc.
|
private0x806CF4D0 |
Definition at line 92 of file ObjectHeyho.cc.
|
private0x806CFD48 |
Definition at line 177 of file ObjectHeyho.cc.
|
inlineprivate |
Definition at line 31 of file ObjectHeyho.hh.
|
inlineprivate0x806CF714 |
Definition at line 42 of file ObjectHeyho.hh.
|
inlineprivate0x806CF4CC |
Definition at line 39 of file ObjectHeyho.hh.
|
overridevirtual0x806CEB90 |
Reimplemented from Kinoko::Field::ObjectBase.
Definition at line 33 of file ObjectHeyho.cc.
|
overridevirtual0x806D013C |
Reimplemented from Kinoko::Field::ObjectBase.
Definition at line 59 of file ObjectHeyho.cc.
|
inlinenodiscardoverridevirtual0x806D02B4 |
Reimplemented from Kinoko::Field::ObjectBase.
Definition at line 20 of file ObjectHeyho.hh.
|
staticconstexprprivate |
Definition at line 74 of file ObjectHeyho.hh.
|
staticconstexprprivate |
Definition at line 75 of file ObjectHeyho.hh.
|
private |
Definition at line 58 of file ObjectHeyho.hh.
|
private |
Definition at line 54 of file ObjectHeyho.hh.
|
private |
Definition at line 53 of file ObjectHeyho.hh.
|
private |
Definition at line 64 of file ObjectHeyho.hh.
|
private |
Definition at line 57 of file ObjectHeyho.hh.
|
private |
Definition at line 63 of file ObjectHeyho.hh.
|
private |
Definition at line 62 of file ObjectHeyho.hh.
|
private |
Definition at line 61 of file ObjectHeyho.hh.
|
private |
Definition at line 65 of file ObjectHeyho.hh.
|
private |
Definition at line 66 of file ObjectHeyho.hh.
|
private |
Definition at line 59 of file ObjectHeyho.hh.
|
private |
Definition at line 55 of file ObjectHeyho.hh.
|
private |
Definition at line 67 of file ObjectHeyho.hh.
|
private |
Definition at line 56 of file ObjectHeyho.hh.
|
private |
Definition at line 60 of file ObjectHeyho.hh.
|
staticconstexprprivate |
Definition at line 69 of file ObjectHeyho.hh.