mirror of
				https://github.com/isledecomp/isle.git
				synced 2025-10-25 09:24:17 +00:00 
			
		
		
		
	 909c44b679
			
		
	
	909c44b679
	
	
	
		
			
			* Add vtable comparison to reccmp * Add missing scalar deleting destructors * Fix some vtables --------- Co-authored-by: Christian Semmler <mail@csemmler.com>
		
			
				
	
	
		
			70 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			70 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| #ifndef INFOCENTERSTATE_H
 | |
| #define INFOCENTERSTATE_H
 | |
| 
 | |
| #include "decomp.h"
 | |
| #include "legostate.h"
 | |
| 
 | |
| // VTABLE: LEGO1 0x100d93a8
 | |
| // SIZE 0x94
 | |
| class InfocenterState : public LegoState {
 | |
| public:
 | |
| 	InfocenterState();
 | |
| 	virtual ~InfocenterState();
 | |
| 
 | |
| 	// FUNCTION: LEGO1 0x10071840
 | |
| 	inline virtual const char* ClassName() const override // vtable+0x0c
 | |
| 	{
 | |
| 		// STRING: LEGO1 0x100f04dc
 | |
| 		return "InfocenterState";
 | |
| 	}
 | |
| 
 | |
| 	// FUNCTION: LEGO1 0x10071850
 | |
| 	inline virtual MxBool IsA(const char* p_name) const override // vtable+0x10
 | |
| 	{
 | |
| 		return !strcmp(p_name, InfocenterState::ClassName()) || LegoState::IsA(p_name);
 | |
| 	}
 | |
| 
 | |
| 	inline MxU32 GetInfocenterBufferElement(MxS32 p_index) { return m_buffer[p_index]; }
 | |
| 	inline MxU32 GetUnknown0x74() { return m_unk0x74; }
 | |
| 
 | |
| 	inline void SetUnknown0x74(MxU32 p_unk0x74) { m_unk0x74 = p_unk0x74; }
 | |
| 
 | |
| 	// SYNTHETIC: LEGO1 0x10071900
 | |
| 	// InfocenterState::`scalar deleting destructor'
 | |
| 
 | |
| private:
 | |
| 	// Members should be renamed with their offsets before use
 | |
| 	/*
 | |
| 	  struct UnkStruct
 | |
| 	  {
 | |
| 		undefined4 unk1;
 | |
| 		undefined2 unk2;
 | |
| 		undefined2 unk3;
 | |
| 		undefined2 unk4;
 | |
| 	  };
 | |
| 
 | |
| 	  undefined2 unk1;
 | |
| 	  undefined2 unk2;
 | |
| 	  undefined4 unk3;
 | |
| 	  undefined4 padding1;
 | |
| 	  void *unk4;
 | |
| 	  undefined2 unk5;
 | |
| 	  undefined2 unk6;
 | |
| 	  undefined2 unk7;
 | |
| 	  undefined2 padding2;
 | |
| 	  void *unk8;
 | |
| 	  undefined2 unk9;
 | |
| 	  undefined2 unk10;
 | |
| 	  undefined2 unk11;
 | |
| 	  undefined2 padding3;
 | |
| 	  UnkStruct unk12[6];
 | |
| 	  undefined4 unk13;
 | |
| 	*/
 | |
| 
 | |
| 	undefined m_pad[0x6c];
 | |
| 	MxU32 m_unk0x74;   // 0x74
 | |
| 	MxU32 m_buffer[7]; // 0x78
 | |
| };
 | |
| 
 | |
| #endif // INFOCENTERSTATE_H
 |