Kinoko
A reimplementation of Mario Kart Wii's physics engine in C++
Toggle main menu visibility
Loading...
Searching...
No Matches
ObjectDokan.hh
1
#pragma once
2
3
#include "game/field/obj/ObjectCollidable.hh"
4
5
#include "game/kart/Reaction.hh"
6
7
namespace
Kinoko::Field
{
8
9
class
ObjectDokan final :
public
ObjectCollidable {
10
public
:
11
ObjectDokan(
const
System::MapdataGeoObj
¶ms);
12
~ObjectDokan()
override
;
13
14
void
init()
override
;
15
void
calc()
override
;
16
18
[[nodiscard]]
LoadFlags
loadFlags
()
const override
{
19
return
LoadFlags
(
eLoadFlags::Calc
);
20
}
21
22
void
calcCollisionTransform()
override
;
23
24
Kart::Reaction
onCollision(
Kart::KartObject
*kartObj,
Kart::Reaction
reactionOnKart,
25
Kart::Reaction
reactionOnObj,
EGG::Vector3f
&hitDepth)
override
;
26
27
private
:
28
void
calcFloor();
29
30
bool
m_b0;
31
EGG::Vector3f
m_velocity;
32
};
33
34
}
// namespace Kinoko::Field
Kinoko::Field::ObjectBase::LoadFlags
EGG::TBitFlag< u8, eLoadFlags > LoadFlags
A bitfield of eLoadFlags that represents the update requirements of the object.
Definition
ObjectBase.hh:36
Kinoko::Field::ObjectBase::eLoadFlags::Calc
@ Calc
The state of the object should be recalculated every frame.
Definition
ObjectBase.hh:30
Kinoko::Field::ObjectDokan::loadFlags
LoadFlags loadFlags() const override
Returns a bitmask indicating which lifecycle hooks should be called for the object.
Definition
ObjectDokan.hh:18
Kinoko::Kart::KartObject
The highest level abstraction for a kart.
Definition
KartObject.hh:11
Kinoko::System::MapdataGeoObj
Definition
MapdataGeoObj.hh:9
Kinoko::Field
Pertains to collision.
Definition
BoxColManager.cc:10
Kinoko::Kart::Reaction
Reaction
Represents the different reactions that can occur when a kart collides with an object.
Definition
Reaction.hh:8
Kinoko::EGG::Vector3f
A 3D float vector.
Definition
Vector.hh:107
game
field
obj
ObjectDokan.hh
Made by
Malleo
. Logo by
vabold
. Website generated by
Doxygen
1.17.0