isle-portable/LEGO1/towtrack.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

42 lines
789 B
C++

#ifndef TOWTRACK_H
#define TOWTRACK_H
#include "decomp.h"
#include "islepathactor.h"
// VTABLE 0x100d7ee0
// SIZE 0x180
class TowTrack : public IslePathActor
{
public:
TowTrack();
// OFFSET: LEGO1 0x1004c7c0
inline virtual const char *ClassName() const override // vtable+0x0c
{
// 0x100f03b8
return "TowTrack";
}
// OFFSET: LEGO1 0x1004c7d0
inline virtual MxBool IsA(const char *name) const override // vtable+0x10
{
return !strcmp(name, TowTrack::ClassName()) || IslePathActor::IsA(name);
}
private:
// TODO: TowTrack field types
undefined m_unk154[4];
MxS32 m_unk164;
MxS16 m_unk168;
MxS16 m_unk16a;
MxS16 m_unk16c;
MxS16 m_unk16e;
MxS32 m_unk170;
MxS32 m_unk174;
MxFloat m_unk178;
undefined4 m_unk17c;
};
#endif // TOWTRACK_H