Skip to content

Commit e3100f3

Browse files
authored
Merge branch 'master' into implemement-BoundingVolume0x64
2 parents da8acf7 + 4da5bff commit e3100f3

5 files changed

Lines changed: 183 additions & 184 deletions

File tree

LEGORacers/include/obscureicon0x1a8.h

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ class ObscureIcon0x1a8 : public ObscureVantage0x58 {
2323
undefined m_unk0x39[0x40 - 0x39]; // 0x39
2424
undefined2 m_unk0x40; // 0x40
2525
undefined m_unk0x42[0x44 - 0x42]; // 0x42
26-
ObscureIcon0x1a8* m_parentIcon; // 0x44
26+
ObscureIcon0x1a8* m_parent; // 0x44
2727
undefined2 m_unk0x48; // 0x48
2828
LegoU8 m_unk0x4a; // 0x4a
2929
undefined m_unk0x4b[0x52 - 0x4b]; // 0x4b
@@ -75,52 +75,52 @@ class ObscureIcon0x1a8 : public ObscureVantage0x58 {
7575
virtual ObscureIcon0x1a8* VTable0x6c();
7676

7777
LegoBool32 FUN_00471e30(CreateParams0x84* p_createParams, const CreateState0x90* p_createState);
78-
void FUN_00471ec0(ObscureIcon0x1a8* p_parentIcon);
79-
void FUN_00471f00();
78+
void AttachToParent(ObscureIcon0x1a8* p_parent);
79+
void DetachFromParent();
8080

8181
// SYNTHETIC: LEGORACERS 0x00471c80
8282
// ObscureIcon0x1a8::`scalar deleting destructor'
8383

8484
protected:
8585
void FUN_00471d90(CreateParams0x84* p_createParams, const CreateState0x90* p_createState);
86-
ObscureIcon0x1a8* FUN_00471f70();
86+
ObscureIcon0x1a8* FindRoot();
8787
ObscureIcon0x1a8* FUN_00471f90();
8888
void FUN_00471fb0(undefined4 p_flags);
8989
void FUN_00472010(undefined4 p_flags);
90-
void FUN_00472080();
91-
void FUN_00472540();
90+
void RefreshVisualState();
91+
void BeginRectTransition();
9292

93-
ObscureIcon0x1a8* m_parentIcon; // 0x058
94-
ObscureIcon0x1a8* m_prevIcon; // 0x05c
95-
ObscureIcon0x1a8* m_nextIcon; // 0x060
96-
ObscureIcon0x1a8* m_firstIcon; // 0x064
97-
ObscureIcon0x1a8* m_lastIcon; // 0x068
93+
ObscureIcon0x1a8* m_parent; // 0x058
94+
ObscureIcon0x1a8* m_prevSibling; // 0x05c
95+
ObscureIcon0x1a8* m_nextSibling; // 0x060
96+
ObscureIcon0x1a8* m_firstChild; // 0x064
97+
ObscureIcon0x1a8* m_lastChild; // 0x068
9898
Rect m_unk0x6c[6]; // 0x06c
9999
Rect m_unk0xcc[6]; // 0x0cc
100-
LegoU8 m_unk0x12c; // 0x12c
100+
LegoU8 m_stateFlags; // 0x12c
101101
LegoBool m_unk0x12d; // 0x12d
102102
undefined m_unk0x12e[0x130 - 0x12e]; // 0x12e
103-
LegoS32 m_unk0x130; // 0x130
104-
LegoS32 m_unk0x134; // 0x134
105-
LegoFloat m_unk0x138; // 0x138
106-
LegoFloat m_unk0x13c; // 0x13c
107-
LegoFloat m_unk0x140; // 0x140
108-
LegoFloat m_unk0x144; // 0x144
109-
LegoFloat m_unk0x148; // 0x148
110-
LegoFloat m_unk0x14c; // 0x14c
111-
LegoFloat m_unk0x150; // 0x150
112-
LegoFloat m_unk0x154; // 0x154
103+
LegoS32 m_transitionDurationMs; // 0x130
104+
LegoS32 m_transitionRemainingMs; // 0x134
105+
LegoFloat m_rectDeltaTop; // 0x138
106+
LegoFloat m_rectDeltaBottom; // 0x13c
107+
LegoFloat m_rectDeltaLeft; // 0x140
108+
LegoFloat m_rectDeltaRight; // 0x144
109+
LegoFloat m_rectTopF; // 0x148
110+
LegoFloat m_rectBottomF; // 0x14c
111+
LegoFloat m_rectLeftF; // 0x150
112+
LegoFloat m_rectRightF; // 0x154
113113
undefined4 m_unk0x158[4]; // 0x158
114114
undefined2 m_unk0x168; // 0x168
115115
SoundGroupBinding* m_soundGroupBinding; // 0x16c
116116
ImaginaryInterface* m_eventHandler; // 0x170
117117
VisualState0x4 m_unk0x174[6]; // 0x174
118118
LegoU16 m_soundIds[5]; // 0x18c
119119
undefined m_unk0x196[0x198 - 0x196]; // 0x196
120-
ObscureIcon0x1a8* m_unk0x198; // 0x198
121-
LegoU8 m_unk0x19c; // 0x19c
120+
ObscureIcon0x1a8* m_activeChild; // 0x198
121+
LegoU8 m_visualStateIndex; // 0x19c
122122
undefined m_unk0x19d[0x1a0 - 0x19d]; // 0x19d
123-
LegoU32 m_unk0x1a0; // 0x1a0
123+
LegoU32 m_activeKeyCode; // 0x1a0
124124
undefined4 m_unk0x1a4; // 0x1a4
125125
};
126126

LEGORacers/src/crimsonsun0xa4entry.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ void CrimsonSun0xa4::Entry0x74c::FUN_00468390()
9494

9595
icon->VTable0x10(&rect);
9696
icon->SetParent(&m_unk0x2cc);
97-
icon->FUN_00471ec0(GetUnk0xd8());
97+
icon->AttachToParent(GetUnk0xd8());
9898
icon->VTable0x4c(5);
9999
}
100100

@@ -116,7 +116,7 @@ void CrimsonSun0xa4::Entry0x74c::FUN_00468430()
116116

117117
icon->VTable0x10(&rect);
118118
icon->SetParent(&m_unk0x2cc);
119-
icon->FUN_00471ec0(GetUnk0xd8());
119+
icon->AttachToParent(GetUnk0xd8());
120120

121121
if (m_unk0x2c8) {
122122
icon->VTable0x4c(5);
@@ -141,7 +141,7 @@ void CrimsonSun0xa4::Entry0x74c::FUN_004684e0()
141141

142142
icon->VTable0x10(&rect);
143143
icon->SetParent(&m_unk0x2cc);
144-
icon->FUN_00471ec0(GetUnk0xd8());
144+
icon->AttachToParent(GetUnk0xd8());
145145

146146
if (!m_unk0x2c8) {
147147
icon->VTable0x4c(5);
@@ -263,17 +263,17 @@ void CrimsonSun0xa4::Entry0x74c::FUN_004687a0()
263263
FUN_00468740();
264264

265265
if (m_unk0x6c8.GetUnk0x78() && (m_unk0x6c8.GetUnk0x78()->GetFlags() & 1)) {
266-
m_unk0x6c8.GetUnk0x78()->FUN_00471f00();
266+
m_unk0x6c8.GetUnk0x78()->DetachFromParent();
267267
m_unk0x6c8.GetUnk0x78()->RemoveFromParent();
268268
}
269269

270270
if (m_unk0x6c8.GetUnk0x7c() && (m_unk0x6c8.GetUnk0x7c()->GetFlags() & 1)) {
271-
m_unk0x6c8.GetUnk0x7c()->FUN_00471f00();
271+
m_unk0x6c8.GetUnk0x7c()->DetachFromParent();
272272
m_unk0x6c8.GetUnk0x7c()->RemoveFromParent();
273273
}
274274

275275
if (m_unk0x6c8.GetUnk0x80() && (m_unk0x6c8.GetUnk0x80()->GetFlags() & 1)) {
276-
m_unk0x6c8.GetUnk0x80()->FUN_00471f00();
276+
m_unk0x6c8.GetUnk0x80()->DetachFromParent();
277277
m_unk0x6c8.GetUnk0x80()->RemoveFromParent();
278278
}
279279

LEGORacers/src/imaginarydrillfieldat0x498.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -71,10 +71,10 @@ void ImaginaryDrillFieldAt0x498::VTable0x40(ImaginaryInterface* p_eventHandler)
7171
// FUNCTION: LEGORACERS 0x00482910
7272
undefined4 ImaginaryDrillFieldAt0x498::VTable0x38(Rect*, Rect*)
7373
{
74-
m_unk0x208.SetUnk0x58(m_unk0x1d8[m_unk0x19c]);
75-
m_unk0x208.VTable0x14(&m_unk0x1f0[m_unk0x19c]);
76-
m_unk0x264.SetUnk0x60(m_unk0x1c0[m_unk0x19c]);
77-
m_unk0x264.VTable0x14(&m_unk0x174[m_unk0x19c]);
74+
m_unk0x208.SetUnk0x58(m_unk0x1d8[m_visualStateIndex]);
75+
m_unk0x208.VTable0x14(&m_unk0x1f0[m_visualStateIndex]);
76+
m_unk0x264.SetUnk0x60(m_unk0x1c0[m_visualStateIndex]);
77+
m_unk0x264.VTable0x14(&m_unk0x174[m_visualStateIndex]);
7878

7979
return 0;
8080
}

LEGORacers/src/imaginarynotion0x290.cpp

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -383,7 +383,7 @@ void ImaginaryNotion0x290::FUN_0046ba60(ObscureVantage0x58::CreateParams0x30* p_
383383
// FUNCTION: LEGORACERS 0x0046bb10
384384
void ImaginaryNotion0x290::FUN_0046bb10(ObscureIcon0x1a8::CreateParams0x84* p_createParams)
385385
{
386-
if (!p_createParams->m_parentIcon && p_createParams->m_unk0x74) {
386+
if (!p_createParams->m_parent && p_createParams->m_unk0x74) {
387387
if (p_createParams->m_unk0x4a) {
388388
CeruleanQueen0x58::Entry0x84* entry = (CeruleanQueen0x58::Entry0x84*) GetMenuInputBindings()->FUN_0046aff0(
389389
p_createParams->m_flagsAndName.m_unk0x2d
@@ -395,8 +395,7 @@ void ImaginaryNotion0x290::FUN_0046bb10(ObscureIcon0x1a8::CreateParams0x84* p_cr
395395
p_createParams->m_unk0x48 = 1;
396396
}
397397

398-
p_createParams->m_parentIcon =
399-
static_cast<ObscureIcon0x1a8*>(m_unk0xd8.FUN_00472f10(p_createParams->m_unk0x48));
398+
p_createParams->m_parent = static_cast<ObscureIcon0x1a8*>(m_unk0xd8.FUN_00472f10(p_createParams->m_unk0x48));
400399
}
401400

402401
if (!p_createParams->m_unk0x80) {

0 commit comments

Comments
 (0)