isle/LEGO1/ambulance.h
Joshua Peisach 1fa2fd9737
The IslePathActor's (#113)
* pizza: fix type m_unk90

* Initial implementation of a lot of IslePathActor's

All IslePathActor's seem to have (for the most part), the same few variables in common,
probably some ID. SkateBoard, Pizza and TowTrack seem to be a bit more complicated with additional
fields surrounding it.

* Add missing ClassName(s) and IsA(s)

* Add decomp size asserts

* Fix size assertions

* Make legopathactor fields protected for now, fix a type in Pizza

* Fix TowTrack structure

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2023-09-10 14:01:39 +02:00

41 lines
808 B
C++

#ifndef AMBULANCE_H
#define AMBULANCE_H
#include "islepathactor.h"
// VTABLE 0x100d71a8
// SIZE 0x184
class Ambulance : public IslePathActor
{
public:
Ambulance();
// OFFSET: LEGO1 0x10035fa0
inline virtual const char *ClassName() const override // vtable+0x0c
{
// 0x100f03c4
return "Ambulance";
}
// OFFSET: LEGO1 0x10035fb0
inline virtual MxBool IsA(const char *name) const override // vtable+0x10
{
return !strcmp(name, Ambulance::ClassName()) || IslePathActor::IsA(name);
}
private:
// TODO: Ambulance fields
undefined m_unk160[4];
MxS32 m_unk164;
MxS16 m_unk168;
MxS16 m_unk16a;
MxS16 m_unk16c;
MxS16 m_unk16e;
MxS16 m_unk170;
MxS16 m_unk172;
MxS32 m_unk174;
MxS32 m_unk178;
MxFloat m_unk17c;
undefined m_unk180[4];
};
#endif // AMBULANCE_H