Mario Kart 64
Loading...
Searching...
No Matches
Flagpole.h
Go to the documentation of this file.
1#pragma once
2
3#include <libultraship.h>
4#include <vector>
5#include "Object.h"
6
7#include "World.h"
8
9extern "C" {
10#include "macros.h"
11#include "main.h"
12#include "vehicles.h"
13#include "waypoints.h"
14#include "common_structs.h"
15#include "objects.h"
16#include "camera.h"
17#include "some_data.h"
18}
19
20// This used to use directional_angle for rot. It now uses orientation for editor compatibility.
21// There doesn't seem to be any reason this actor's behaviour would differ from this
22class OFlagpole : public OObject {
23public:
24 explicit OFlagpole(const SpawnParams& params);
25
26 // This is simply a helper function to keep Spawning code clean
27 static inline OFlagpole* Spawn(FVector pos, s16 direction) {
28 IRotator rot;
29 rot.Set(0, direction, 0);
30 SpawnParams params = {
31 .Name = "mk:flagpole",
32 .Location = pos,
33 .Rotation = rot,
34 };
35 return static_cast<OFlagpole*>(gWorldInstance.AddObject(new OFlagpole(params)));
36 }
37
39 _count--;
40 }
41
42 static size_t GetCount() {
43 return _count;
44 }
45
46 virtual void Tick() override;
47 virtual void Draw(s32 cameraId) override;
48
49 void func_80055164(s32 objectIndex);
50 void func_80082F1C(s32 objectIndex);
51 void func_80083018(s32 objectIndex);
52 void func_80083060(s32 objectIndex);
53
54private:
55 static size_t _count;
56 size_t _idx;
57};
World gWorldInstance
Definition Game.cpp:74
OFlagpole(const SpawnParams &params)
Definition Flagpole.cpp:19
void func_80083018(s32 objectIndex)
Definition Flagpole.cpp:86
void func_80083060(s32 objectIndex)
Definition Flagpole.cpp:97
size_t _idx
Definition Flagpole.h:56
static OFlagpole * Spawn(FVector pos, s16 direction)
Definition Flagpole.h:27
static size_t GetCount()
Definition Flagpole.h:42
virtual void Draw(s32 cameraId) override
Definition Flagpole.cpp:49
void func_80082F1C(s32 objectIndex)
Definition Flagpole.cpp:74
static size_t _count
Definition Flagpole.h:55
virtual void Tick() override
Definition Flagpole.cpp:40
~OFlagpole()
Definition Flagpole.h:38
void func_80055164(s32 objectIndex)
Definition Flagpole.cpp:58
OObject()
Definition Object.cpp:13
Definition CoreMath.h:30
Definition CoreMath.h:137
Definition SpawnParams.h:30