Skip to content

Commit 91c6007

Browse files
authored
Stubs for more Obscure classes (isledecomp#201)
* Stubs for Obscure classes * Break out files
1 parent a6b8b0d commit 91c6007

14 files changed

Lines changed: 402 additions & 2 deletions

CMakeLists.txt

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -261,8 +261,14 @@ add_executable(legoracers WIN32
261261
LEGORacers/src/ceruleanknight0x20.cpp
262262
LEGORacers/src/ceruleanqueen0x58.cpp
263263
LEGORacers/src/ceruleanemperor0x4c.cpp
264-
LEGORacers/src/obscurevantage0x58.cpp
264+
LEGORacers/src/obscureanchor0x5c.cpp
265+
LEGORacers/src/obscureanthem0x58.cpp
265266
LEGORacers/src/obscureicon0x1a8.cpp
267+
LEGORacers/src/obscurerune0x4d8.cpp
268+
LEGORacers/src/obscuresigil0xdc.cpp
269+
LEGORacers/src/obscuretome0x3dc.cpp
270+
LEGORacers/src/obscurevantage0x58.cpp
271+
LEGORacers/src/obscurezebra0xa4.cpp
266272
LEGORacers/src/imaginaryaxe0x36c4.cpp
267273
LEGORacers/src/imaginarybandsaw0x2228.cpp
268274
LEGORacers/src/imaginarybelt0x2548.cpp
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
#ifndef OBSCUREANCHOR0X5C
2+
#define OBSCUREANCHOR0X5C
3+
4+
#include "compat.h"
5+
#include "decomp.h"
6+
#include "obscureanthem0x58.h"
7+
8+
// VTABLE: LEGORACERS 0x004b26bc
9+
// SIZE 0x5c
10+
class ObscureAnchor0x5c : public ObscureAnthem0x58 {
11+
public:
12+
ObscureAnchor0x5c();
13+
14+
void VTable0x00() override; // vtable+0x00
15+
~ObscureAnchor0x5c() override; // vtable+0x04
16+
undefined4 VTable0x38(undefined4, undefined4) override; // vtable+0x38
17+
18+
// SYNTHETIC: LEGORACERS 0x0046f0d0
19+
// ObscureAnchor0x5c::`scalar deleting destructor'
20+
21+
protected:
22+
undefined4 m_unk0x58; // 0x58
23+
};
24+
25+
#endif // OBSCUREANCHOR0X5C
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
#ifndef OBSCUREANTHEM0X58
2+
#define OBSCUREANTHEM0X58
3+
4+
#include "compat.h"
5+
#include "decomp.h"
6+
#include "obscurevantage0x58.h"
7+
8+
// VTABLE: LEGORACERS 0x004b263c
9+
// SIZE 0x58
10+
class ObscureAnthem0x58 : public ObscureVantage0x58 {
11+
public:
12+
ObscureAnthem0x58();
13+
~ObscureAnthem0x58() override; // vtable+0x04
14+
undefined4 VTable0x2c(void*, undefined4, undefined4) override; // vtable+0x2c
15+
undefined4 VTable0x30(OnyxCircularBuffer0x1c::Item*, undefined4, undefined4) override; // vtable+0x30
16+
undefined4 VTable0x34(OnyxCircularBuffer0x1c::Item*, undefined4, undefined4) override; // vtable+0x34
17+
18+
// SYNTHETIC: LEGORACERS 0x0046ea30
19+
// ObscureAnthem0x58::`scalar deleting destructor'
20+
};
21+
22+
#endif // OBSCUREANTHEM0X58
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
#ifndef OBSCURERUNE0X4D8
2+
#define OBSCURERUNE0X4D8
3+
4+
#include "compat.h"
5+
#include "decomp.h"
6+
#include "obscuresigil0xdc.h"
7+
#include "obscuretome0x3dc.h"
8+
9+
// VTABLE: LEGORACERS 0x004b1e40
10+
// SIZE 0x4d8
11+
class ObscureRune0x4d8 : public ObscureSigil0xdc {
12+
public:
13+
ObscureRune0x4d8();
14+
~ObscureRune0x4d8() override; // vtable+0x04
15+
16+
// SYNTHETIC: LEGORACERS 0x00466100
17+
// ObscureRune0x4d8::`scalar deleting destructor'
18+
19+
protected:
20+
ObscureTome0x3dc m_unk0xdc; // 0x0dc
21+
undefined m_unk0x4b8[0x4d8 - 0x4b8]; // 0x4b8
22+
};
23+
24+
#endif // OBSCURERUNE0X4D8
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
#ifndef OBSCURESIGIL0XDC
2+
#define OBSCURESIGIL0XDC
3+
4+
#include "compat.h"
5+
#include "decomp.h"
6+
#include "obscurevantage0x58.h"
7+
#include "types.h"
8+
9+
// VTABLE: LEGORACERS 0x004b1dfc
10+
// SIZE: 0xdc
11+
class ObscureSigil0xdc : public ObscureVantage0x58 {
12+
public:
13+
ObscureSigil0xdc();
14+
15+
void VTable0x00() override; // vtable+0x00
16+
~ObscureSigil0xdc() override; // vtable+0x04
17+
undefined4 VTable0x08() override; // vtable+0x08
18+
undefined4 VTable0x2c(void*, undefined4, undefined4) override; // vtable+0x2c
19+
undefined4 VTable0x30(OnyxCircularBuffer0x1c::Item*, undefined4, undefined4) override; // vtable+0x30
20+
undefined4 VTable0x34(OnyxCircularBuffer0x1c::Item*, undefined4, undefined4) override; // vtable+0x34
21+
undefined4 VTable0x38(undefined4, undefined4) override; // vtable+0x38
22+
undefined4 VTable0x3c(undefined4) override; // vtable+0x3c
23+
24+
// SYNTHETIC: LEGORACERS 0x00465730
25+
// ObscureSigil0xdc::`scalar deleting destructor'
26+
27+
protected:
28+
undefined4 m_unk0x58; // 0x58
29+
undefined4 m_unk0x5c; // 0x5c
30+
undefined4 m_unk0x60; // 0x60
31+
undefined4 m_unk0x64; // 0x64
32+
undefined4 m_unk0x68; // 0x68
33+
undefined4 m_unk0x6c; // 0x6c
34+
undefined m_unk0x70[0x88 - 0x70]; // 0x70
35+
undefined4 m_unk0x88; // 0x88
36+
undefined4 m_unk0x8c; // 0x8c
37+
undefined4 m_unk0x90; // 0x90
38+
undefined4 m_unk0x94; // 0x94
39+
LegoFloat m_unk0x98; // 0x98
40+
undefined m_unk0x9c[0xb4 - 0x9c]; // 0x9c
41+
undefined4 m_unk0xb4; // 0xb4
42+
undefined4 m_unk0xb8; // 0xb8
43+
undefined4 m_unk0xbc; // 0xbc
44+
undefined4 m_unk0xc0; // 0xc0
45+
undefined4 m_unk0xc4; // 0xc4
46+
undefined4 m_unk0xc8; // 0xc8
47+
undefined4 m_unk0xcc; // 0xcc
48+
undefined4 m_unk0xd0; // 0xd0
49+
undefined4 m_unk0xd4; // 0xd4
50+
undefined4 m_unk0xd8; // 0xd8
51+
};
52+
53+
#endif // OBSCURESIGIL0XDC
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
#ifndef OBSCURETOME0X3DC
2+
#define OBSCURETOME0X3DC
3+
4+
#include "compat.h"
5+
#include "decomp.h"
6+
#include "obscureanchor0x5c.h"
7+
#include "obscureanthem0x58.h"
8+
#include "obscurezebra0xa4.h"
9+
10+
// VTABLE: LEGORACERS 0x004b267c
11+
// SIZE 0x3dc
12+
class ObscureTome0x3dc : public ObscureAnthem0x58 {
13+
public:
14+
ObscureTome0x3dc();
15+
~ObscureTome0x3dc() override; // vtable+0x04
16+
void VTable0x10(undefined4) override; // vtable+0x10
17+
18+
// SYNTHETIC: LEGORACERS 0x0046ec30
19+
// ObscureTome0x3dc::`scalar deleting destructor'
20+
21+
protected:
22+
ObscureZebra0xa4 m_unk0x58; // 0x058
23+
ObscureAnchor0x5c m_unk0xfc[8]; // 0x0fc
24+
};
25+
26+
#endif // OBSCURETOME0X3DC
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
#ifndef OBSCUREZEBRA0XA4
2+
#define OBSCUREZEBRA0XA4
3+
4+
#include "compat.h"
5+
#include "decomp.h"
6+
#include "obscurevantage0x58.h"
7+
8+
// VTABLE: LEGORACERS 0x004b29f4
9+
// SIZE 0xa4
10+
class ObscureZebra0xa4 : public ObscureVantage0x58 {
11+
public:
12+
ObscureZebra0xa4();
13+
void VTable0x00() override; // vtable+0x00
14+
~ObscureZebra0xa4() override; // vtable+0x04
15+
void VTable0x14(undefined4) override; // vtable+0x14
16+
undefined4 VTable0x38(undefined4, undefined4) override; // vtable+0x38
17+
18+
// SYNTHETIC: LEGORACERS 0x004734f0
19+
// ObscureZebra0xa4::`scalar deleting destructor'
20+
21+
protected:
22+
undefined m_unk0x58[0xa4 - 0x58]; // 0x58
23+
};
24+
25+
#endif // OBSCUREZEBRA0XA4

LEGORacers/src/imaginarychisel0x658.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
DECOMP_SIZE_ASSERT(ImaginaryChisel0x658, 0x658)
1515
DECOMP_SIZE_ASSERT(ImaginaryChisel0x658::HelperAt0x368, 0x2d0)
1616

17-
// STUB: LEGORACERS 0x00466090
17+
// STUB: LEGORACERS 0x00466090 FOLDED
1818
undefined4 ImaginaryChisel0x658::HelperAt0x368::VTable0x2c(void*, undefined4, undefined4)
1919
{
2020
STUB(0x00466090);
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
#include "obscureanchor0x5c.h"
2+
3+
DECOMP_SIZE_ASSERT(ObscureAnchor0x5c, 0x5c)
4+
5+
// FUNCTION: LEGORACERS 0x0046f080
6+
ObscureAnchor0x5c::ObscureAnchor0x5c()
7+
{
8+
VTable0x00();
9+
}
10+
11+
// FUNCTION: LEGORACERS 0x0046f0f0
12+
ObscureAnchor0x5c::~ObscureAnchor0x5c()
13+
{
14+
ObscureVantage0x58::VTable0x08();
15+
}
16+
17+
// FUNCTION: LEGORACERS 0x0046f140
18+
void ObscureAnchor0x5c::VTable0x00()
19+
{
20+
m_unk0x58 = 0;
21+
ObscureVantage0x58::VTable0x00();
22+
}
23+
24+
// STUB: LEGORACERS 0x0046f1a0
25+
undefined4 ObscureAnchor0x5c::VTable0x38(undefined4, undefined4)
26+
{
27+
STUB(0x0046f1a0);
28+
return 0;
29+
}
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
#include "obscureanthem0x58.h"
2+
3+
DECOMP_SIZE_ASSERT(ObscureAnthem0x58, 0x58)
4+
5+
// FUNCTION: LEGORACERS 0x0046e9e0
6+
ObscureAnthem0x58::ObscureAnthem0x58()
7+
{
8+
VTable0x00();
9+
}
10+
11+
// FUNCTION: LEGORACERS 0x0046ea50
12+
ObscureAnthem0x58::~ObscureAnthem0x58()
13+
{
14+
VTable0x08();
15+
}
16+
17+
// STUB: LEGORACERS 0x0046eaa0
18+
undefined4 ObscureAnthem0x58::VTable0x2c(void*, undefined4, undefined4)
19+
{
20+
STUB(0x0046eaa0);
21+
return 0;
22+
}
23+
24+
// STUB: LEGORACERS 0x0046eaf0
25+
undefined4 ObscureAnthem0x58::VTable0x30(OnyxCircularBuffer0x1c::Item*, undefined4, undefined4)
26+
{
27+
STUB(0x0046eaf0);
28+
return 0;
29+
}
30+
31+
// STUB: LEGORACERS 0x0046eb50
32+
undefined4 ObscureAnthem0x58::VTable0x34(OnyxCircularBuffer0x1c::Item*, undefined4, undefined4)
33+
{
34+
STUB(0x0046eb50);
35+
return 0;
36+
}

0 commit comments

Comments
 (0)