SpaghettiKart
Loading...
Searching...
No Matches
Crab.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <libultraship.h>
4
#include <vector>
5
#include "
engine/registry/RegisterContent.h
"
6
#include "
engine/objects/Object.h
"
7
#include "
CoreMath.h
"
8
#include "
World.h
"
9
10
extern
"C"
{
11
#include "
macros.h
"
12
#include "
main.h
"
13
#include "
vehicles.h
"
14
#include "
waypoints.h
"
15
#include "
common_structs.h
"
16
#include "
objects.h
"
17
#include "
course_offsets.h
"
18
#include "some_data.h"
19
}
20
32
class
OCrab
:
public
OObject
{
33
public
:
34
// This is simply a helper function to keep Spawning code clean
35
static
inline
OCrab
*
Spawn
(
const
FVector2D
& start,
const
FVector2D
& end) {
36
SpawnParams
params = {
37
.Name =
"mk:crab"
,
38
.PatrolStart = start,
39
.PatrolEnd = end,
40
};
41
return
static_cast<
OCrab
*
>
(
AddObjectToWorld<OCrab>
(params));
42
}
43
44
explicit
OCrab
(
const
SpawnParams
& params);
45
46
~OCrab
() {
47
_count
--;
48
}
49
50
virtual
void
Tick
()
override
;
51
virtual
void
Draw
(s32 cameraId)
override
;
52
virtual
void
SetSpawnParams
(
SpawnParams
& params)
override
;
53
virtual
void
DrawEditorProperties
()
override
;
54
55
void
DrawModel
(s32 cameraId);
56
57
void
init_ktb_crab
(s32 objectIndex);
58
void
func_80082B34
(s32 objectIndex);
59
void
func_80082C30
(s32 objectIndex);
60
void
func_80082E18
(s32 objectIndex);
61
62
private
:
63
FVector2D
_start
;
64
FVector2D
_end
;
65
static
size_t
_count
;
66
s32
_idx
;
67
};
CoreMath.h
Object.h
RegisterContent.h
AddObjectToWorld
static OObject * AddObjectToWorld(const SpawnParams ¶ms)
Definition
RegisterContent.h:10
World.h
OCrab::DrawModel
void DrawModel(s32 cameraId)
Definition
Crab.cpp:97
OCrab::func_80082B34
void func_80082B34(s32 objectIndex)
Definition
Crab.cpp:144
OCrab::~OCrab
~OCrab()
Definition
Crab.h:46
OCrab::_count
static size_t _count
Definition
Crab.h:65
OCrab::Draw
virtual void Draw(s32 cameraId) override
Definition
Crab.cpp:74
OCrab::OCrab
OCrab(const SpawnParams ¶ms)
Definition
Crab.cpp:32
OCrab::init_ktb_crab
void init_ktb_crab(s32 objectIndex)
Definition
Crab.cpp:126
OCrab::Tick
virtual void Tick() override
Definition
Crab.cpp:57
OCrab::_end
FVector2D _end
Definition
Crab.h:64
OCrab::Spawn
static OCrab * Spawn(const FVector2D &start, const FVector2D &end)
Definition
Crab.h:35
OCrab::_idx
s32 _idx
Definition
Crab.h:66
OCrab::SetSpawnParams
virtual void SetSpawnParams(SpawnParams ¶ms) override
Definition
Crab.cpp:51
OCrab::func_80082E18
void func_80082E18(s32 objectIndex)
Definition
Crab.cpp:205
OCrab::func_80082C30
void func_80082C30(s32 objectIndex)
Definition
Crab.cpp:163
OCrab::DrawEditorProperties
virtual void DrawEditorProperties() override
Definition
Crab.cpp:211
OCrab::_start
FVector2D _start
Definition
Crab.h:63
OObject::OObject
OObject()
Definition
Object.cpp:13
common_structs.h
course_offsets.h
macros.h
main.h
objects.h
FVector2D
Definition
CoreMath.h:102
SpawnParams
Definition
SpawnParams.h:30
vehicles.h
waypoints.h
src
engine
objects
Crab.h
Generated by
1.13.2