mirror of
				https://github.com/isledecomp/isle.git
				synced 2025-10-25 17:34:05 +00:00 
			
		
		
		
	 3e6d789324
			
		
	
	3e6d789324
	
	
	
		
			
			* Add all BETA10 `ClassName()` functions and vtables * Run formatter, fix copy error * Fix copy error * Add BETA10 library functions --------- Co-authored-by: jonschz <jonschz@users.noreply.github.com>
		
			
				
	
	
		
			206 lines
		
	
	
		
			5.2 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			206 lines
		
	
	
		
			5.2 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| #ifndef BUILDINGS_H
 | |
| #define BUILDINGS_H
 | |
| 
 | |
| #include "buildingentity.h"
 | |
| 
 | |
| class LegoEventNotificationParam;
 | |
| 
 | |
| // VTABLE: LEGO1 0x100d48a8
 | |
| // VTABLE: BETA10 0x101bd818
 | |
| // SIZE 0x68
 | |
| class RaceStandsEntity : public BuildingEntity {
 | |
| 	// FUNCTION: LEGO1 0x1000efa0
 | |
| 	// FUNCTION: BETA10 0x100a9820
 | |
| 	const char* ClassName() const override // vtable+0x0c
 | |
| 	{
 | |
| 		// at LEGO1 0x100f0300, needs no annotation
 | |
| 		return "RaceStandsEntity";
 | |
| 	}
 | |
| 
 | |
| 	// FUNCTION: LEGO1 0x1000efb0
 | |
| 	MxBool IsA(const char* p_name) const override // vtable+0x10
 | |
| 	{
 | |
| 		return !strcmp(p_name, RaceStandsEntity::ClassName()) || BuildingEntity::IsA(p_name);
 | |
| 	}
 | |
| 
 | |
| 	MxLong HandleClick(LegoEventNotificationParam& p_param) override;
 | |
| 
 | |
| 	// SYNTHETIC: LEGO1 0x1000f9e0
 | |
| 	// RaceStandsEntity::`scalar deleting destructor'
 | |
| };
 | |
| 
 | |
| // VTABLE: LEGO1 0x100d4a18
 | |
| // VTABLE: BETA10 0x101bd7b0
 | |
| // SIZE 0x68
 | |
| class BeachHouseEntity : public BuildingEntity {
 | |
| public:
 | |
| 	// FUNCTION: LEGO1 0x1000ee80
 | |
| 	// FUNCTION: BETA10 0x100a96f0
 | |
| 	const char* ClassName() const override // vtable+0x0c
 | |
| 	{
 | |
| 		// STRING: LEGO1 0x100f0314
 | |
| 		return "BeachHouseEntity";
 | |
| 	}
 | |
| 
 | |
| 	// FUNCTION: LEGO1 0x1000ee90
 | |
| 	MxBool IsA(const char* p_name) const override // vtable+0x10
 | |
| 	{
 | |
| 		return !strcmp(p_name, BeachHouseEntity::ClassName()) || BuildingEntity::IsA(p_name);
 | |
| 	}
 | |
| 
 | |
| 	MxLong HandleClick(LegoEventNotificationParam& p_param) override;
 | |
| 
 | |
| 	// SYNTHETIC: LEGO1 0x1000f970
 | |
| 	// BeachHouseEntity::`scalar deleting destructor'
 | |
| };
 | |
| 
 | |
| // VTABLE: LEGO1 0x100d4ab0
 | |
| // VTABLE: BETA10 0x101bd748
 | |
| // SIZE 0x68
 | |
| class PoliceEntity : public BuildingEntity {
 | |
| public:
 | |
| 	// FUNCTION: LEGO1 0x1000ed60
 | |
| 	// FUNCTION: BETA10 0x100a95c0
 | |
| 	const char* ClassName() const override // vtable+0x0c
 | |
| 	{
 | |
| 		// STRING: LEGO1 0x100f0328
 | |
| 		return "PoliceEntity";
 | |
| 	}
 | |
| 
 | |
| 	// FUNCTION: LEGO1 0x1000ed70
 | |
| 	MxBool IsA(const char* p_name) const override // vtable+0x10
 | |
| 	{
 | |
| 		return !strcmp(p_name, PoliceEntity::ClassName()) || BuildingEntity::IsA(p_name);
 | |
| 	}
 | |
| 
 | |
| 	MxLong HandleClick(LegoEventNotificationParam& p_param) override; // vtable+0x50
 | |
| 
 | |
| 	// SYNTHETIC: LEGO1 0x1000f900
 | |
| 	// PoliceEntity::`scalar deleting destructor'
 | |
| };
 | |
| 
 | |
| // VTABLE: LEGO1 0x100d4b90
 | |
| // VTABLE: BETA10 0x101bd610
 | |
| // SIZE 0x68
 | |
| class InfoCenterEntity : public BuildingEntity {
 | |
| public:
 | |
| 	// FUNCTION: LEGO1 0x1000ea00
 | |
| 	// FUNCTION: BETA10 0x100a9230
 | |
| 	const char* ClassName() const override // vtable+0x0c
 | |
| 	{
 | |
| 		// STRING: LEGO1 0x100f035c
 | |
| 		return "InfoCenterEntity";
 | |
| 	}
 | |
| 
 | |
| 	// FUNCTION: LEGO1 0x1000ea10
 | |
| 	MxBool IsA(const char* p_name) const override // vtable+0x10
 | |
| 	{
 | |
| 		return !strcmp(p_name, InfoCenterEntity::ClassName()) || BuildingEntity::IsA(p_name);
 | |
| 	}
 | |
| 
 | |
| 	MxLong HandleClick(LegoEventNotificationParam& p_param) override; // vtable+0x50
 | |
| 
 | |
| 	// SYNTHETIC: LEGO1 0x1000f7b0
 | |
| 	// InfoCenterEntity::`scalar deleting destructor'
 | |
| };
 | |
| 
 | |
| // VTABLE: LEGO1 0x100d5068
 | |
| // VTABLE: BETA10 0x101bd678
 | |
| // SIZE 0x68
 | |
| class HospitalEntity : public BuildingEntity {
 | |
| public:
 | |
| 	// FUNCTION: LEGO1 0x1000ec40
 | |
| 	// FUNCTION: BETA10 0x100a9360
 | |
| 	const char* ClassName() const override // vtable+0x0c
 | |
| 	{
 | |
| 		// STRING: LEGO1 0x100f0338
 | |
| 		return "HospitalEntity";
 | |
| 	}
 | |
| 
 | |
| 	// FUNCTION: LEGO1 0x1000ec50
 | |
| 	MxBool IsA(const char* p_name) const override // vtable+0x10
 | |
| 	{
 | |
| 		return !strcmp(p_name, HospitalEntity::ClassName()) || BuildingEntity::IsA(p_name);
 | |
| 	}
 | |
| 
 | |
| 	MxLong HandleClick(LegoEventNotificationParam& p_param) override; // vtable+0x50
 | |
| 
 | |
| 	// SYNTHETIC: LEGO1 0x1000f820
 | |
| 	// HospitalEntity::`scalar deleting destructor'
 | |
| };
 | |
| 
 | |
| // VTABLE: LEGO1 0x100d50c0
 | |
| // VTABLE: BETA10 0x101bd880
 | |
| // SIZE 0x68
 | |
| class CaveEntity : public BuildingEntity {
 | |
| 	// FUNCTION: LEGO1 0x1000f1e0
 | |
| 	// FUNCTION: BETA10 0x100a9950
 | |
| 	const char* ClassName() const override // vtable+0x0c
 | |
| 	{
 | |
| 		// at LEGO1 0x100f0300, needs no annotation
 | |
| 		return "RaceStandsEntity";
 | |
| 	}
 | |
| 
 | |
| 	// FUNCTION: LEGO1 0x1000f1f0
 | |
| 	MxBool IsA(const char* p_name) const override // vtable+0x10
 | |
| 	{
 | |
| 		return !strcmp(p_name, CaveEntity::ClassName()) || BuildingEntity::IsA(p_name);
 | |
| 	}
 | |
| 
 | |
| 	MxLong HandleClick(LegoEventNotificationParam& p_param) override;
 | |
| 
 | |
| 	// SYNTHETIC: LEGO1 0x1000fa50
 | |
| 	// CaveEntity::`scalar deleting destructor'
 | |
| };
 | |
| 
 | |
| // VTABLE: LEGO1 0x100d5200
 | |
| // VTABLE: BETA10 0x101bd8e8
 | |
| // SIZE 0x68
 | |
| class JailEntity : public BuildingEntity {
 | |
| 	// FUNCTION: LEGO1 0x1000f0c0
 | |
| 	// FUNCTION: BETA10 0x100a9a80
 | |
| 	const char* ClassName() const override // vtable+0x0c
 | |
| 	{
 | |
| 		// at LEGO1 0x100f0300, needs no annotation
 | |
| 		return "RaceStandsEntity";
 | |
| 	}
 | |
| 
 | |
| 	// FUNCTION: LEGO1 0x1000f0d0
 | |
| 	MxBool IsA(const char* p_name) const override // vtable+0x10
 | |
| 	{
 | |
| 		return !strcmp(p_name, JailEntity::ClassName()) || BuildingEntity::IsA(p_name);
 | |
| 	}
 | |
| 
 | |
| 	MxLong HandleClick(LegoEventNotificationParam& p_param) override;
 | |
| 
 | |
| 	// SYNTHETIC: LEGO1 0x1000fac0
 | |
| 	// JailEntity::`scalar deleting destructor'
 | |
| };
 | |
| 
 | |
| // VTABLE: LEGO1 0x100d5258
 | |
| // VTABLE: BETA10 0x101bd6e0
 | |
| // SIZE 0x68
 | |
| class GasStationEntity : public BuildingEntity {
 | |
| public:
 | |
| 	// FUNCTION: LEGO1 0x1000eb20
 | |
| 	// FUNCTION: BETA10 0x100a9490
 | |
| 	const char* ClassName() const override // vtable+0x0c
 | |
| 	{
 | |
| 		// STRING: LEGO1 0x100f0348
 | |
| 		return "GasStationEntity";
 | |
| 	}
 | |
| 
 | |
| 	// FUNCTION: LEGO1 0x1000eb30
 | |
| 	MxBool IsA(const char* p_name) const override // vtable+0x10
 | |
| 	{
 | |
| 		return !strcmp(p_name, GasStationEntity::ClassName()) || BuildingEntity::IsA(p_name);
 | |
| 	}
 | |
| 
 | |
| 	MxLong HandleClick(LegoEventNotificationParam& p_param) override;
 | |
| 
 | |
| 	// SYNTHETIC: LEGO1 0x1000f890
 | |
| 	// GasStationEntity::`scalar deleting destructor'
 | |
| };
 | |
| 
 | |
| #endif // BUILDINGS_H
 |