forked from Ares-Developers/YRpp
-
Notifications
You must be signed in to change notification settings - Fork 30
/
Kamikaze.h
47 lines (33 loc) · 829 Bytes
/
Kamikaze.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#pragma once
#include <ArrayClasses.h>
#include <GeneralDefinitions.h>
#include <Helpers/CompileTime.h>
//forward declarations
class AircraftClass;
class CellClass;
class Kamikaze {
public:
struct KamikazeControl {
AircraftClass* Item;
CellClass* Cell;
};
static constexpr reference<Kamikaze, 0xABC5F8u> const Instance{};
Kamikaze() noexcept : UpdateTimer(100), Nodes()
{ }
~Kamikaze()
{ JMP_THIS(0x54E690); }
void Add(AircraftClass* pAircraft)
{ JMP_THIS(0x54E3B0); }
void Remove(AircraftClass* pAircraft)
{ JMP_THIS(0x54E590); }
void Update()
{ JMP_THIS(0x54E4D0); }
void Clear()
{ JMP_THIS(0x54E6F0); }
HRESULT Save(IStream* pStm)
{ JMP_THIS(0x54E750); }
HRESULT Load(IStream* pStm)
{ JMP_THIS(0x54E7B0); }
CDTimerClass UpdateTimer;
DynamicVectorClass<KamikazeControl*> Nodes;
};