mirror of
https://github.com/isledecomp/isle-portable.git
synced 2025-09-22 11:31:57 -04:00
Clear unknowns in LegoPhoneme
(#1556)
This commit is contained in:
parent
bc481cc1c5
commit
3b3fe276c4
@ -10,32 +10,32 @@ class LegoTextureInfo;
|
||||
// SIZE 0x20
|
||||
class LegoPhoneme {
|
||||
public:
|
||||
LegoPhoneme(const char* p_name, undefined4 p_unk0x14)
|
||||
LegoPhoneme(const char* p_name, MxU32 p_count)
|
||||
{
|
||||
m_name = p_name;
|
||||
m_name.ToUpperCase();
|
||||
Init();
|
||||
m_unk0x14 = p_unk0x14;
|
||||
m_count = p_count;
|
||||
}
|
||||
~LegoPhoneme();
|
||||
|
||||
virtual undefined4 VTable0x00(); // vtable+0x00
|
||||
virtual void VTable0x04(undefined4 p_unk0x14); // vtable+0x04
|
||||
virtual LegoTextureInfo* VTable0x08(); // vtable+0x08
|
||||
virtual void VTable0x0c(LegoTextureInfo* p_unk0x18); // vtable+0x0c
|
||||
virtual LegoTextureInfo* VTable0x10(); // vtable+0x10
|
||||
virtual void VTable0x14(LegoTextureInfo* p_unk0x1c); // vtable+0x14
|
||||
virtual void VTable0x18(); // vtable+0x18
|
||||
virtual void Init(); // vtable+0x1c
|
||||
virtual void VTable0x20(undefined4); // vtable+0x20
|
||||
virtual MxU32 GetCount(); // vtable+0x00
|
||||
virtual void SetCount(MxU32 p_count); // vtable+0x04
|
||||
virtual LegoTextureInfo* GetTextureInfo(); // vtable+0x08
|
||||
virtual void SetTextureInfo(LegoTextureInfo* p_textureInfo); // vtable+0x0c
|
||||
virtual LegoTextureInfo* GetCachedTextureInfo(); // vtable+0x10
|
||||
virtual void SetCachedTextureInfo(LegoTextureInfo* p_cachedTextureInfo); // vtable+0x14
|
||||
virtual void VTable0x18(); // vtable+0x18
|
||||
virtual void Init(); // vtable+0x1c
|
||||
virtual void VTable0x20(undefined4); // vtable+0x20
|
||||
|
||||
MxString& GetName() { return m_name; }
|
||||
|
||||
private:
|
||||
MxString m_name; // 0x04
|
||||
undefined4 m_unk0x14; // 0x14
|
||||
LegoTextureInfo* m_unk0x18; // 0x18
|
||||
LegoTextureInfo* m_unk0x1c; // 0x1c
|
||||
MxString m_name; // 0x04
|
||||
MxU32 m_count; // 0x14
|
||||
LegoTextureInfo* m_textureInfo; // 0x18
|
||||
LegoTextureInfo* m_cachedTextureInfo; // 0x1c
|
||||
};
|
||||
|
||||
#endif // LEGOPHONEME_H
|
||||
|
@ -8,39 +8,39 @@ LegoPhoneme::~LegoPhoneme()
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x10044eb0
|
||||
undefined4 LegoPhoneme::VTable0x00()
|
||||
MxU32 LegoPhoneme::GetCount()
|
||||
{
|
||||
return m_unk0x14;
|
||||
return m_count;
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x10044ec0
|
||||
void LegoPhoneme::VTable0x04(undefined4 p_unk0x14)
|
||||
void LegoPhoneme::SetCount(MxU32 p_count)
|
||||
{
|
||||
m_unk0x14 = p_unk0x14;
|
||||
m_count = p_count;
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x10044ed0
|
||||
LegoTextureInfo* LegoPhoneme::VTable0x08()
|
||||
LegoTextureInfo* LegoPhoneme::GetTextureInfo()
|
||||
{
|
||||
return m_unk0x18;
|
||||
return m_textureInfo;
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x10044ee0
|
||||
void LegoPhoneme::VTable0x0c(LegoTextureInfo* p_unk0x18)
|
||||
void LegoPhoneme::SetTextureInfo(LegoTextureInfo* p_textureInfo)
|
||||
{
|
||||
m_unk0x18 = p_unk0x18;
|
||||
m_textureInfo = p_textureInfo;
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x10044ef0
|
||||
LegoTextureInfo* LegoPhoneme::VTable0x10()
|
||||
LegoTextureInfo* LegoPhoneme::GetCachedTextureInfo()
|
||||
{
|
||||
return m_unk0x1c;
|
||||
return m_cachedTextureInfo;
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x10044f00
|
||||
void LegoPhoneme::VTable0x14(LegoTextureInfo* p_unk0x1c)
|
||||
void LegoPhoneme::SetCachedTextureInfo(LegoTextureInfo* p_cachedTextureInfo)
|
||||
{
|
||||
m_unk0x1c = p_unk0x1c;
|
||||
m_cachedTextureInfo = p_cachedTextureInfo;
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x10044f10
|
||||
@ -51,9 +51,9 @@ void LegoPhoneme::VTable0x18()
|
||||
// FUNCTION: LEGO1 0x10044f20
|
||||
void LegoPhoneme::Init()
|
||||
{
|
||||
m_unk0x14 = 0;
|
||||
m_unk0x18 = NULL;
|
||||
m_unk0x1c = NULL;
|
||||
m_count = 0;
|
||||
m_textureInfo = NULL;
|
||||
m_cachedTextureInfo = NULL;
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x10044f30
|
||||
|
@ -68,8 +68,8 @@ void LegoPhonemePresenter::StartingTickle()
|
||||
|
||||
CharacterManager()->SetHeadTexture(entityROI, textureInfo);
|
||||
|
||||
phoneme->VTable0x0c(m_textureInfo);
|
||||
phoneme->VTable0x14(textureInfo);
|
||||
phoneme->SetTextureInfo(m_textureInfo);
|
||||
phoneme->SetCachedTextureInfo(textureInfo);
|
||||
phonemeList->Append(phoneme);
|
||||
m_textureInfo = textureInfo;
|
||||
}
|
||||
@ -78,7 +78,7 @@ void LegoPhonemePresenter::StartingTickle()
|
||||
cursor.Current(phoneme);
|
||||
delete newPhoneme;
|
||||
|
||||
phoneme->VTable0x04(phoneme->VTable0x00() + 1);
|
||||
phoneme->SetCount(phoneme->GetCount() + 1);
|
||||
cursor.SetValue(phoneme);
|
||||
|
||||
m_unk0x70 = TRUE;
|
||||
@ -136,7 +136,7 @@ void LegoPhonemePresenter::EndAction()
|
||||
cursor.Current(phoneme);
|
||||
delete newPhoneme;
|
||||
|
||||
if (phoneme->VTable0x00() == 1) {
|
||||
if (phoneme->GetCount() == 1) {
|
||||
LegoROI* roi;
|
||||
|
||||
if (m_unk0x84) {
|
||||
@ -154,12 +154,12 @@ void LegoPhonemePresenter::EndAction()
|
||||
CharacterManager()->ReleaseActor(m_roiName.GetData());
|
||||
}
|
||||
|
||||
TextureContainer()->EraseCached(phoneme->VTable0x10());
|
||||
TextureContainer()->EraseCached(phoneme->VTable0x08());
|
||||
TextureContainer()->EraseCached(phoneme->GetCachedTextureInfo());
|
||||
TextureContainer()->EraseCached(phoneme->GetTextureInfo());
|
||||
cursor.Destroy();
|
||||
}
|
||||
else {
|
||||
phoneme->VTable0x04(phoneme->VTable0x00() - 1);
|
||||
phoneme->SetCount(phoneme->GetCount() - 1);
|
||||
cursor.SetValue(phoneme);
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user