A reimplementation of Mario Kart Wii's physics engine in C++
Loading...
Searching...
No Matches
ObjectEscalatorGroup.cc
1#include "ObjectEscalatorGroup.hh"
2
3#include "game/field/obj/ObjectEscalator.hh"
4
5namespace Kinoko::Field {
6
8ObjectEscalatorGroup::ObjectEscalatorGroup(const System::MapdataGeoObj &params)
9 : ObjectCollidable(params) {
10 constexpr f32 X_OFFSET = 1465.0f;
11 constexpr f32 Y_OFFSET = 510.0f;
12 constexpr f32 Z_OFFSET = 50.0f;
13 constexpr EGG::Vector3f POS_OFFSET = EGG::Vector3f(0.0f, Y_OFFSET, Z_OFFSET);
14 constexpr EGG::Vector3f RIGHT_OFFSET = EGG::Vector3f(X_OFFSET, -Y_OFFSET, -Z_OFFSET);
15 constexpr EGG::Vector3f LEFT_OFFSET = EGG::Vector3f(-X_OFFSET, -Y_OFFSET, -Z_OFFSET);
16 constexpr EGG::Vector3f SCALE = EGG::Vector3f(1.75f, 1.75f, 1.75f);
17
18 addPos(POS_OFFSET);
19 setScale(SCALE);
20
21 m_rightEscalator = EGG::egg_new<ObjectEscalator>(params, false);
22 m_leftEscalator = EGG::egg_new<ObjectEscalator>(params, true);
23
24 calcTransform();
25 m_rightEscalator->m_initialPos = pos() + transform().multVector33(RIGHT_OFFSET);
26 m_leftEscalator->m_initialPos = pos() + transform().multVector33(LEFT_OFFSET);
27
28 m_rightEscalator->load();
29 m_leftEscalator->load();
30}
31
33ObjectEscalatorGroup::~ObjectEscalatorGroup() = default;
34
35} // namespace Kinoko::Field
Pertains to collision.