isle-portable/LEGO1/lego/legoomni/include/legoplantmanager.h
Christian Semmler e0af725fb6
Updates from isledecomp/isle (#19)
* Refactor JukeBox, add enum for music (#988)

* Refactor JukeBox, add enum for music

* add BETA annotation

* Fix BETA annotation

* Fix BETA annotation

* Fix

* Consolidate state and building entity classes (#989)

* Match LegoCacheSoundManager::FindSoundByKey (#991)

* Match LegoCacheSoundManager::FindSoundByKey

* Remove space

* Implement/match LegoActor::Mute (#992)

* Add more annotations to ISLE (#990)

* Minor improvements in ISLE.EXE

* Add more annotations

* Fix

* Comment out

* Fix lint

* Add enum for actor IDs (#993)

* Implement/match LegoEntity::ClickAnimation (#994)

* Implement/match LegoEntity::VTable0x38

* Update names

* Implement/match LegoEntity::SwitchSound / SwitchMove / SwitchColor / SwitchMood (#995)

* Implement/match LegoEntity::SwitchSound

* Name

* Name

* Implement/match LegoEntity::SwitchMove

* Mood

* Implement/match LegoCharacterManager::SwitchColor (#996)

* Implement/match IslePathActor::Exit (#997)

* Implement/match IslePathActor::Exit

* Name

* Name

* Partially fix vector interface

* Revert "Partially fix vector interface"

This reverts commit 6e7a1e2b08fd82012b28be3054eeff65428eb4d1.

* Revert "Revert "Partially fix vector interface""

This reverts commit e3860e3c9fa1f8937b702d6c81d6e3bb4dadecc6.

* Fix

* Remove some COMPAT_MODE

* Implement/match Ambulance::Notify (#998)

* Update isleapp.cpp

* Streamline MxVideoParamFlags (#999)

* Streamline MxVideoParamFlags

* Remove this-> from MxOmniCreateFlags

---------

Co-authored-by: MS <disinvite@users.noreply.github.com>
2024-06-07 21:32:27 +02:00

55 lines
1.4 KiB
C++

#ifndef LEGOPLANTMANAGER_H
#define LEGOPLANTMANAGER_H
#include "decomp.h"
#include "mxcore.h"
class LegoEntity;
class LegoROI;
class LegoStorage;
// VTABLE: LEGO1 0x100d6758
// SIZE 0x2c
class LegoPlantManager : public MxCore {
public:
LegoPlantManager();
~LegoPlantManager() override; // vtable+0x00
MxResult Tickle() override; // vtable+0x08
// FUNCTION: LEGO1 0x10026290
inline const char* ClassName() const override // vtable+0x0c
{
// STRING: LEGO1 0x100f318c
return "LegoPlantManager";
}
void Init();
void FUN_10026360(MxS32 p_scriptIndex);
void FUN_100263a0(undefined4 p_und);
void Write(LegoStorage* p_storage);
MxResult Read(LegoStorage* p_storage);
MxBool SwitchColor(LegoEntity* p_entity);
MxBool SwitchVariant(LegoEntity* p_entity);
MxBool SwitchSound(LegoEntity* p_entity);
MxBool SwitchMove(LegoEntity* p_entity);
MxBool SwitchMood(LegoEntity* p_entity);
MxU32 FUN_10026b70(LegoEntity* p_entity);
MxU32 FUN_10026ba0(LegoEntity* p_entity, MxBool);
void FUN_10026c50(LegoEntity* p_entity);
void FUN_10027120();
static void SetCustomizeAnimFile(const char* p_value);
static const char* GetCustomizeAnimFile() { return g_customizeAnimFile; }
// SYNTHETIC: LEGO1 0x100262a0
// LegoPlantManager::`scalar deleting destructor'
private:
static char* g_customizeAnimFile;
undefined m_unk0x08[0x24]; // 0x08
};
#endif // LEGOPLANTMANAGER_H