A reimplementation of Mario Kart Wii's physics engine in C++
Loading...
Searching...
No Matches
ObjectBreakable.hh
1#pragma once
2
3#include "game/field/obj/ObjectCollidable.hh"
4
5namespace Field {
6
8public:
10 ObjectBreakable(const System::MapdataGeoObj &params) : ObjectCollidable(params), m_state(0) {}
11
13 ~ObjectBreakable() = default;
14
16 [[nodiscard]] u32 loadFlags() const override {
17 return 1;
18 }
19
21 Kart::Reaction onCollision(Kart::KartObject * /*kartObj*/, Kart::Reaction reactionOnKart,
22 Kart::Reaction /*reactionOnObj*/, EGG::Vector3f & /*hitDepth*/) override {
23 return reactionOnKart;
24 }
25
27 virtual void enableCollision() {
28 m_state = 1;
29 }
30
31protected:
32 u32 m_state;
33};
34
35} // namespace Field
The highest level abstraction for a kart.
Definition KartObject.hh:11
Pertains to collision.
A 3D float vector.
Definition Vector.hh:87