begin implementation of InfoCenter class (#444)

* Push changes

* fixes

* Implement Infocenter::HandleEndAction

* match Infocenter::StopCutScene

* implement Infocenter::HandleKeyPress

* fixes

* Update infocenter.cpp

* Update legoworld.cpp

* use enums

* WIP Fixes

* Fix

* Fix

* Fix

* Rename function

* Change enum

* Update enums

* Refactor another enum

* Refactor MxDSType

* Refactor HashTableOpt

* Fixes

* Refactor tickle enum

* Update other enums

* Add EnumConstantName to ncc

* Move enum to global namespace

* Rename enum

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
This commit is contained in:
Misha
2024-01-17 11:53:53 -05:00
committed by GitHub
parent aaa18bc9e2
commit f50b771fff
100 changed files with 1160 additions and 555 deletions

View File

@@ -15,14 +15,14 @@ MxU16 g_sep = TWOCC(',', ' ');
// FUNCTION: LEGO1 0x100ad810
MxDSAction::MxDSAction()
{
this->m_flags = MxDSAction::Flag_Enabled;
this->m_flags = MxDSAction::c_enabled;
this->m_startTime = INT_MIN;
this->m_extraData = NULL;
this->m_extraLength = 0;
this->m_duration = INT_MIN;
this->m_loopCount = -1;
this->SetType(MxDSType_Action);
this->SetType(e_action);
this->m_location.Fill(FLT_MAX);
this->m_direction.Fill(FLT_MAX);
this->m_up.Fill(FLT_MAX);

View File

@@ -5,7 +5,7 @@ DECOMP_SIZE_ASSERT(MxDSAnim, 0xb8)
// FUNCTION: LEGO1 0x100c8ff0
MxDSAnim::MxDSAnim()
{
this->SetType(MxDSType_Anim);
this->SetType(e_anim);
}
// FUNCTION: LEGO1 0x100c91a0

View File

@@ -5,7 +5,7 @@ DECOMP_SIZE_ASSERT(MxDSEvent, 0xb8)
// FUNCTION: LEGO1 0x100c95f0
MxDSEvent::MxDSEvent()
{
this->SetType(MxDSType_Event);
this->SetType(e_event);
}
// FUNCTION: LEGO1 0x100c97a0

View File

@@ -15,7 +15,7 @@ MxDSMediaAction::MxDSMediaAction()
this->m_paletteManagement = 1;
this->m_unk0xb4 = -1;
this->m_sustainTime = 0;
this->SetType(MxDSType_MediaAction);
this->SetType(e_mediaAction);
}
// FUNCTION: LEGO1 0x100c8cf0

View File

@@ -7,7 +7,7 @@ DECOMP_SIZE_ASSERT(MxDSActionListCursor, 0x10);
// FUNCTION: LEGO1 0x100c9b90
MxDSMultiAction::MxDSMultiAction()
{
this->SetType(MxDSType_MultiAction);
this->SetType(e_multiAction);
this->m_actions = new MxDSActionList;
this->m_actions->SetDestroy(MxDSActionList::Destroy);
}

View File

@@ -11,7 +11,6 @@
#include "mxdsserialaction.h"
#include "mxdssound.h"
#include "mxdsstill.h"
#include "mxdstypes.h"
#include "mxutil.h"
#include <stdlib.h>
@@ -22,7 +21,7 @@ DECOMP_SIZE_ASSERT(MxDSObject, 0x2c);
// FUNCTION: LEGO1 0x100bf6a0
MxDSObject::MxDSObject()
{
this->SetType(MxDSType_Object);
this->SetType(e_object);
this->m_sourceName = NULL;
this->m_unk0x14 = 0;
this->m_objectName = NULL;
@@ -148,40 +147,40 @@ MxDSObject* DeserializeDSObjectDispatch(MxU8** p_source, MxS16 p_flags)
switch (type) {
default:
return NULL;
case MxDSType_Object:
case MxDSObject::e_object:
obj = new MxDSObject();
break;
case MxDSType_Action:
case MxDSObject::e_action:
obj = new MxDSAction();
break;
case MxDSType_MediaAction:
case MxDSObject::e_mediaAction:
obj = new MxDSMediaAction();
break;
case MxDSType_Anim:
case MxDSObject::e_anim:
obj = new MxDSAnim();
break;
case MxDSType_Sound:
case MxDSObject::e_sound:
obj = new MxDSSound();
break;
case MxDSType_MultiAction:
case MxDSObject::e_multiAction:
obj = new MxDSMultiAction();
break;
case MxDSType_SerialAction:
case MxDSObject::e_serialAction:
obj = new MxDSSerialAction();
break;
case MxDSType_ParallelAction:
case MxDSObject::e_parallelAction:
obj = new MxDSParallelAction();
break;
case MxDSType_Event:
case MxDSObject::e_event:
obj = new MxDSEvent();
break;
case MxDSType_SelectAction:
case MxDSObject::e_selectAction:
obj = new MxDSSelectAction();
break;
case MxDSType_Still:
case MxDSObject::e_still:
obj = new MxDSStill();
break;
case MxDSType_ObjectAction:
case MxDSObject::e_objectAction:
obj = new MxDSObjectAction();
break;
}

View File

@@ -5,7 +5,7 @@ DECOMP_SIZE_ASSERT(MxDSObjectAction, 0xb8)
// FUNCTION: LEGO1 0x100c8870
MxDSObjectAction::MxDSObjectAction()
{
this->SetType(MxDSType_ObjectAction);
this->SetType(e_objectAction);
}
// FUNCTION: LEGO1 0x100c8a20

View File

@@ -7,7 +7,7 @@ DECOMP_SIZE_ASSERT(MxDSParallelAction, 0x9c)
// FUNCTION: LEGO1 0x100cae80
MxDSParallelAction::MxDSParallelAction()
{
this->SetType(MxDSType_ParallelAction);
this->SetType(e_parallelAction);
}
// FUNCTION: LEGO1 0x100cb040

View File

@@ -12,7 +12,7 @@ DECOMP_SIZE_ASSERT(MxListEntry<MxString>, 0x18)
// FUNCTION: LEGO1 0x100cb2b0
MxDSSelectAction::MxDSSelectAction()
{
this->SetType(MxDSType_SelectAction);
this->SetType(e_selectAction);
this->m_unk0xac = new MxStringList;
}

View File

@@ -7,7 +7,7 @@ DECOMP_SIZE_ASSERT(MxDSSerialAction, 0xa8)
// FUNCTION: LEGO1 0x100ca9d0
MxDSSerialAction::MxDSSerialAction()
{
this->SetType(MxDSType_SerialAction);
this->SetType(e_serialAction);
this->m_cursor = new MxDSActionListCursor(this->m_actions);
this->m_unk0xa0 = 0;
}

View File

@@ -8,7 +8,7 @@ DECOMP_SIZE_ASSERT(MxDSSound, 0xc0)
MxDSSound::MxDSSound()
{
this->m_volume = 0x4f;
this->SetType(MxDSType_Sound);
this->SetType(e_sound);
}
// FUNCTION: LEGO1 0x100c9470

View File

@@ -5,7 +5,7 @@ DECOMP_SIZE_ASSERT(MxDSStill, 0xb8)
// FUNCTION: LEGO1 0x100c98c0
MxDSStill::MxDSStill()
{
this->SetType(MxDSType_Still);
this->SetType(e_still);
}
// FUNCTION: LEGO1 0x100c9a70