Skip to content

Commit c5221cd

Browse files
committed
Proper WindowsResize
Particles & CSM & Reflection & Hint Text & Combo Text TODO : Proper Main Menu MST Text during Resize
1 parent 36e9aee commit c5221cd

30 files changed

+511
-487
lines changed

MarathonRecomp/api/Sonicteam/DocMarathonImp.h

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@
99
#include <Sonicteam/RaderMapManager.h>
1010
#include <Sonicteam/RenderTargetContainer.h>
1111
#include <Sonicteam/Particles/ParticleManager.h>
12+
#include <Sonicteam/SoX/LinkNode.h>
13+
#include <Sonicteam/SoX/Thread.h>
1214
#include <stdx/vector.h>
1315

1416
namespace Sonicteam
@@ -25,16 +27,22 @@ namespace Sonicteam
2527
MARATHON_INSERT_PADDING(4);
2628
xpointer<RenderTargetContainer> m_pRenderTargetContainer;
2729
xpointer<SFXAgent> m_pSFXAgent;
28-
MARATHON_INSERT_PADDING(0x2A4);
30+
MARATHON_INSERT_PADDING(0xC);
31+
be<uint32_t> m_PauseFlags;
32+
MARATHON_INSERT_PADDING(0x8);
33+
xpointer<SoX::LinkedList<SoX::Thread>> m_lnThread;
34+
MARATHON_INSERT_PADDING(0x288);
2935
xpointer<Particles::ParticleManager> m_pParticleManager;
3036
MARATHON_INSERT_PADDING(0x15D0);
3137
xpointer<RaderMapManager> m_pRaderMapManager;
3238
MARATHON_INSERT_PADDING(0x542D0);
3339
be<uint32_t> m_aPadIDs[4];
3440
};
3541

42+
MARATHON_ASSERT_OFFSETOF(DocMarathonImp, m_PauseFlags, 0xEC);
3643
MARATHON_ASSERT_OFFSETOF(DocMarathonImp, m_vspInputManager, 0x9C);
3744
MARATHON_ASSERT_OFFSETOF(DocMarathonImp, m_VFrame, 0xD0);
3845
MARATHON_ASSERT_OFFSETOF(DocMarathonImp, m_aPadIDs, 0x55C2C);
39-
MARATHON_ASSERT_SIZEOF(DocMarathonImp, 0x55C68);
46+
MARATHON_ASSERT_SIZEOF(DocMarathonImp, 0x55C3C);
47+
4048
}

MarathonRecomp/api/Sonicteam/DocMarathonState.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,5 @@ namespace Sonicteam
77
{
88
class DocMarathonState : public DocMarathonImp {};
99

10-
MARATHON_ASSERT_SIZEOF(DocMarathonState, 0x55C68);
10+
MARATHON_ASSERT_SIZEOF(DocMarathonState, 0x55C3C);
1111
}

MarathonRecomp/api/Sonicteam/GE1PE/EffectBank.h

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,11 @@ namespace Sonicteam::GE1PE
2323
xpointer<void> m_Data3;
2424
stdx::map<stdx::string, be<uint32_t>> m_EffectDataIndices; //barrier_g = 0x23
2525
};
26+
MARATHON_ASSERT_OFFSETOF(EffectBankData, m_Field0, 0);
27+
MARATHON_ASSERT_OFFSETOF(EffectBankData, m_DataName, 4);
28+
MARATHON_ASSERT_OFFSETOF(EffectBankData, m_Data1, 0x20);
29+
MARATHON_ASSERT_OFFSETOF(EffectBankData, m_Data2, 0x24);
30+
MARATHON_ASSERT_OFFSETOF(EffectBankData, m_Data3, 0x28);
2631
MARATHON_ASSERT_OFFSETOF(EffectBankData, m_EffectDataIndices, 0x2C);
2732
MARATHON_ASSERT_SIZEOF(EffectBankData, 0x38);
2833

@@ -33,5 +38,8 @@ namespace Sonicteam::GE1PE
3338
be<uint32_t> m_FieldC; //index ?
3439
xpointer<EffectBankData> m_pEffectBankA;
3540
};
41+
MARATHON_ASSERT_OFFSETOF(EffectBank,m_pParticleEngine, 8);
42+
MARATHON_ASSERT_OFFSETOF(EffectBank,m_FieldC, 0xC);
43+
MARATHON_ASSERT_OFFSETOF(EffectBank, m_pEffectBankA, 0x10);
3644
MARATHON_ASSERT_SIZEOF(EffectBank, 0x14);
3745
}

MarathonRecomp/api/Sonicteam/GE1PE/Manager.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,5 +39,5 @@ namespace Sonicteam::GE1PE
3939
MARATHON_ASSERT_OFFSETOF(Manager, m_lnEmitter, 0x44);
4040
MARATHON_ASSERT_OFFSETOF(Manager, m_lnEffect, 0x50);
4141
MARATHON_ASSERT_OFFSETOF(Manager, m_lnField5C, 0x5C);
42-
//size == 0x34 (but PE::MyPlugin no idea about this)
42+
4343
}

MarathonRecomp/api/Sonicteam/GE1PE/ParticleEngine.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,10 @@ namespace Sonicteam::GE1PE
3131
SoX::LinkNode<Manager> m_lnManager;
3232
stdx::vector<void> m_vField6C;
3333
};
34+
MARATHON_ASSERT_OFFSETOF(ParticleEngine, m_spPlugin, 4);
35+
MARATHON_ASSERT_OFFSETOF(ParticleEngine, m_mEffectIndicies, 0xC);
36+
MARATHON_ASSERT_OFFSETOF(ParticleEngine, m_mTextureIndicies, 0x18);
37+
MARATHON_ASSERT_OFFSETOF(ParticleEngine, m_MaterialIndicies, 0x24);
3438
MARATHON_ASSERT_OFFSETOF(ParticleEngine, m_vpEffectBank, 0x30);
3539
MARATHON_ASSERT_OFFSETOF(ParticleEngine, m_vpTextureBank, 0x40);
3640
MARATHON_ASSERT_OFFSETOF(ParticleEngine, m_vpMaterialBank, 0x50);

MarathonRecomp/api/Sonicteam/GE1PE/Plugin.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,5 @@ namespace Sonicteam::GE1PE
1717
xpointer<Vftable> m_pVftable;
1818
xpointer<SoX::Engine::Doc> m_pDoc;
1919
};
20-
//size == 0x34 (but PE::MyPlugin no idea about this)
20+
2121
}

MarathonRecomp/api/Sonicteam/HUDPopupScreen.h

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -36,16 +36,16 @@ namespace Sonicteam
3636
MARATHON_INSERT_PADDING(8);
3737
};
3838

39-
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_pCsdObject, 0x4C);
40-
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_pMainTexture, 0x50);
41-
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_pMaskTexture, 0x54);
42-
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_pTechnique, 0x58);
43-
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_SceneName, 0x5C);
44-
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_SpriteName, 0x78);
45-
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_State, 0x94);
46-
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_IsClosing, 0x99);
47-
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_ClosingTime, 0x9C);
48-
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_X, 0xA0);
49-
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_Y, 0xA4);
50-
MARATHON_ASSERT_SIZEOF(HUDPopupScreen, 0xB0);
39+
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_pCsdObject, 0x54);
40+
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_pMainTexture, 0x58);
41+
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_pMaskTexture, 0x5C);
42+
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_pTechnique, 0x60);
43+
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_SceneName, 0x64);
44+
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_SpriteName, 0x80);
45+
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_State, 0x9C);
46+
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_IsClosing, 0xA1);
47+
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_ClosingTime, 0xA4);
48+
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_X, 0xA8);
49+
MARATHON_ASSERT_OFFSETOF(HUDPopupScreen, m_Y, 0xAC);
50+
MARATHON_ASSERT_SIZEOF(HUDPopupScreen, 0xB8);
5151
}

MarathonRecomp/api/Sonicteam/HUDRaderMap.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,4 @@ namespace Sonicteam
77
{
88
class HUDRaderMap : public HUDPopupScreen {};
99

10-
MARATHON_ASSERT_SIZEOF(HUDRaderMap, 0xB0);
1110
}

MarathonRecomp/api/Sonicteam/LuaNode.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,4 +16,6 @@ namespace Sonicteam
1616
xpointer<Vftable> m_pVftable;
1717
lua50::lua_State m_pLuaState;
1818
};
19+
20+
MARATHON_ASSERT_SIZEOF(LuaNode, 8);
1921
}

MarathonRecomp/api/Sonicteam/LuaNodeImp.h

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,4 +63,28 @@ namespace Sonicteam
6363

6464
stdx::string m_LuaTable;
6565
};
66+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpGetTableString, 4);
67+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpGetTableConstString, 8);
68+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpGetTableConstStringFast, 0xC);
69+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpGetRoot, 0x10);
70+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpGetEmptyNode, 0x14);
71+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpIsTableExist, 0x18);
72+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpIsRoot, 0x1C);
73+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpSetTablePath, 0x20);
74+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpCallFunction, 0x24);
75+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpCallFunction2, 0x28);
76+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpCallFunction3, 0x2C);
77+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpIsNumber, 0x30);
78+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpGetNumber, 0x34);
79+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpSetNumber, 0x38);
80+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpGetNumberFloat, 0x3C);
81+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpSetNumberFloat, 0x40);
82+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpGetString, 0x44);
83+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpSetString, 0x48);
84+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpIsBoolean, 0x4C);
85+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpGetBoolean, 0x50);
86+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpSetBoolean, 0x54);
87+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpSetNil, 0x58);
88+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpRegisterFunctions, 0x5C);
89+
MARATHON_ASSERT_OFFSETOF(LuaNodeImp::Vftable, fpFunc60, 0x60);
6690
}

0 commit comments

Comments
 (0)