SpaghettiKart
Loading...
Searching...
No Matches
MarioSign.h
Go to the documentation of this file.
1#pragma once
2
3#include <libultraship.h>
4#include "engine/Actor.h"
5#include "CoreMath.h"
6#include "engine/World.h"
8
9extern "C" {
10#include "common_structs.h"
11}
12
13class AMarioSign : public AActor {
14public:
15
16 virtual ~AMarioSign() {
17 _count -= 1;
18 };
19 explicit AMarioSign(const SpawnParams& params);
20
21 // This is simply a helper function to keep Spawning code clean
22 static inline AMarioSign* Spawn(FVector pos, IRotator rot, FVector velocity, FVector scale) {
23 SpawnParams params = {
24 .Name = "mk:mario_sign",
25 .Location = pos,
26 .Rotation = rot,
27 .Scale = scale,
28 .Velocity = velocity,
29 .Speed = 182,
30 };
31 return static_cast<AMarioSign*>(AddActorToWorld<AMarioSign>(params));
32 }
33
34 virtual bool IsMod() override;
35 virtual void SetSpawnParams(SpawnParams& params) override;
36 virtual void Tick() override;
37 virtual void Draw(Camera*) override;
38private:
39 static size_t _count;
40 size_t _idx;
41};
static AActor * AddActorToWorld(const SpawnParams &params)
Definition RegisterContent.h:14
AActor()
Definition Actor.cpp:13
virtual void Draw(Camera *) override
Definition MarioSign.cpp:68
static AMarioSign * Spawn(FVector pos, IRotator rot, FVector velocity, FVector scale)
Definition MarioSign.h:22
size_t _idx
Definition MarioSign.h:40
virtual void Tick() override
Definition MarioSign.cpp:54
AMarioSign(const SpawnParams &params)
Definition MarioSign.cpp:19
virtual ~AMarioSign()
Definition MarioSign.h:16
virtual void SetSpawnParams(SpawnParams &params) override
Definition MarioSign.cpp:50
virtual bool IsMod() override
Definition MarioSign.cpp:46
static size_t _count
Definition MarioSign.h:39
Definition camera.h:35
Definition CoreMath.h:30
Definition CoreMath.h:141
Definition SpawnParams.h:30