From 9f3160b1d2adf5078a357679a3abedd57438ce02 Mon Sep 17 00:00:00 2001 From: fallenoak Date: Mon, 9 Feb 2026 15:38:48 -0600 Subject: [PATCH] feat(world): add CWorld::GetM2Scene --- src/world/CWorld.cpp | 11 +++++++++-- src/world/CWorld.hpp | 3 +++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/world/CWorld.cpp b/src/world/CWorld.cpp index 6163b42..1027380 100644 --- a/src/world/CWorld.cpp +++ b/src/world/CWorld.cpp @@ -12,6 +12,7 @@ uint32_t CWorld::s_enables; uint32_t CWorld::s_enables2; uint32_t CWorld::s_gameTimeFixed; float CWorld::s_gameTimeSec; +CM2Scene* CWorld::s_m2Scene; uint32_t CWorld::s_tickTimeFixed; uint32_t CWorld::s_tickTimeMs; float CWorld::s_tickTimeSec; @@ -66,6 +67,10 @@ float CWorld::GetGameTimeSec() { return CWorld::s_gameTimeSec; } +CM2Scene* CWorld::GetM2Scene() { + return CWorld::s_m2Scene; +} + uint32_t CWorld::GetTickTimeFixed() { return CWorld::s_tickTimeFixed; } @@ -97,8 +102,6 @@ void CWorld::Initialize() { CWorld::s_gameTimeFixed = 0; CWorld::s_gameTimeSec = 0.0f; - // TODO - if (GxCaps().m_shaderTargets[GxSh_Pixel] > GxShPS_none) { CWorld::s_enables |= Enables::Enable_PixelShader; } @@ -109,6 +112,10 @@ void CWorld::Initialize() { // TODO + CWorld::s_m2Scene = M2CreateScene(); + + // TODO + uint32_t m2Flags = M2GetCacheFlags(); CShaderEffect::InitShaderSystem( (m2Flags & 0x8) != 0, diff --git a/src/world/CWorld.hpp b/src/world/CWorld.hpp index 93cf9fc..0ea3682 100644 --- a/src/world/CWorld.hpp +++ b/src/world/CWorld.hpp @@ -7,6 +7,7 @@ #include class CM2Model; +class CM2Scene; class Weather; class CWorld { @@ -58,6 +59,7 @@ class CWorld { static float GetCurTimeSec(); static uint32_t GetGameTimeFixed(); static float GetGameTimeSec(); + static CM2Scene* GetM2Scene(); static uint32_t GetTickTimeFixed(); static uint32_t GetTickTimeMs(); static float GetTickTimeSec(); @@ -72,6 +74,7 @@ class CWorld { static float s_curTimeSec; static uint32_t s_gameTimeFixed; static float s_gameTimeSec; + static CM2Scene* s_m2Scene; static uint32_t s_tickTimeFixed; static uint32_t s_tickTimeMs; static float s_tickTimeSec;