Kinoko
A reimplementation of Mario Kart Wii's physics engine in C++
Loading...
Searching...
No Matches
ObjectProjectile.hh
1
#pragma once
2
3
#include "game/field/obj/ObjectCollidable.hh"
4
5
namespace
Field
{
6
8
class
ObjectProjectile
:
public
ObjectCollidable
{
9
public
:
10
ObjectProjectile
(
const
System::MapdataGeoObj
¶ms)
11
:
ObjectCollidable
(params), m_idx(params.setting(0)) {}
12
13
~ObjectProjectile
()
override
=
default
;
14
16
virtual
void
initProjectile
(
const
EGG::Vector3f
&pos) = 0;
17
19
virtual
void
onLaunch
() = 0;
20
21
[[nodiscard]] s16 idx()
const
{
22
return
m_idx;
23
}
24
25
protected
:
26
const
s16 m_idx;
27
};
28
29
}
// namespace Field
Field::ObjectCollidable
Definition
ObjectCollidable.hh:16
Field::ObjectProjectile
Abstract class that represents an object thrown by an ObjectProjectileLauncher.
Definition
ObjectProjectile.hh:8
Field::ObjectProjectile::onLaunch
virtual void onLaunch()=0
Callback function use by the ObjectSniper that wants to throw this projectile.
Field::ObjectProjectile::initProjectile
virtual void initProjectile(const EGG::Vector3f &pos)=0
Callback function called by the managing ObjectSniper.
System::MapdataGeoObj
Definition
MapdataGeoObj.hh:9
Field
Pertains to collision.
Definition
BoxColManager.cc:8
EGG::Vector3f
A 3D float vector.
Definition
Vector.hh:88
game
field
obj
ObjectProjectile.hh
Made by
Malleo
. Logo by
vabold
. Website generated by
Doxygen
1.12.0