forked from Phobos-developers/YRpp
-
Notifications
You must be signed in to change notification settings - Fork 0
/
FlyLocomotionClass.h
76 lines (61 loc) · 1.94 KB
/
FlyLocomotionClass.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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
//Locomotor = {4A582746-9839-11d1-B709-00A024DDAFD1}
#pragma once
#include <LocomotionClass.h>
class NOVTABLE FlyLocomotionClass : public LocomotionClass
{
public:
static constexpr uintptr_t ILocoVTable = 0x7E89F4;
//IUnknown
virtual HRESULT __stdcall QueryInterface(REFIID iid, void** ppvObject) R0;
virtual ULONG __stdcall AddRef() R0;
virtual ULONG __stdcall Release() R0;
//ILocomotion
virtual bool __stdcall Is_Moving() R0;
virtual CoordStruct* __stdcall Destination(CoordStruct* pcoord) R0;
virtual bool __stdcall Process() R0;
virtual void __stdcall Move_To(CoordStruct to) RX;
virtual void __stdcall Stop_Moving() RX;
virtual void __stdcall Do_Turn(DirStruct coord) RX;
virtual Layer __stdcall In_Which_Layer() RT(Layer);
virtual void __stdcall Mark_All_Occupation_Bits(MarkType mark) RX;
virtual void __stdcall Limbo() RX;
//IPersist
virtual HRESULT __stdcall GetClassID(CLSID* pClassID) R0;
//IPersistStream
virtual HRESULT __stdcall Load(IStream* pStm) R0;
virtual HRESULT __stdcall Save(IStream* pStm, BOOL fClearDirty) R0;
//Destructor
virtual ~FlyLocomotionClass() RX;
//LocomotionClass
virtual int Size() R0;
//FlyLocomotionClass
//Constructor
FlyLocomotionClass()
: LocomotionClass(noinit_t())
{ JMP_THIS(0x4CC9A0); }
protected:
explicit __forceinline FlyLocomotionClass(noinit_t)
: LocomotionClass(noinit_t())
{ }
//===========================================================================
//===== Properties ==========================================================
//===========================================================================
public:
bool AirportBound;
CoordStruct MovingDestination;
CoordStruct XYZ2;
bool HasMoveOrder;
int FlightLevel;
double TargetSpeed;
double CurrentSpeed;
char IsTakingOff;
bool IsLanding;
bool WasLanding;
bool unknown_bool_53;
DWORD unknown_54;
DWORD unknown_58;
bool IsElevating;
bool unknown_bool_5D;
bool unknown_bool_5E;
bool unknown_bool_5F;
};