summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/CMakeLists.txt1
-rw-r--r--src/core/Frontend.cpp6
-rw-r--r--src/core/config.h3
-rw-r--r--src/core/main.cpp2
-rw-r--r--src/render/Particle.cpp19
5 files changed, 27 insertions, 4 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 6c8ab281..28090d7e 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -50,6 +50,7 @@ if(LIBRW_PLATFORM_D3D9)
endif()
target_compile_definitions(${EXECUTABLE} PRIVATE CMAKE_BUILD)
+target_compile_definitions(${EXECUTABLE} PRIVATE USE_OUR_VERSIONING)
if(${PROJECT}_AUDIO STREQUAL "OAL")
find_package(OpenAL REQUIRED)
diff --git a/src/core/Frontend.cpp b/src/core/Frontend.cpp
index 190cdf32..7491b7e2 100644
--- a/src/core/Frontend.cpp
+++ b/src/core/Frontend.cpp
@@ -2902,9 +2902,15 @@ CMenuManager::InitialiseChangedLanguageSettings()
{
if (m_bFrontEnd_ReloadObrTxtGxt) {
m_bFrontEnd_ReloadObrTxtGxt = false;
+#ifdef FIX_BUGS
+ if (gGameState > GS_INIT_ONCE)
+#endif
CTimer::Stop();
TheText.Unload();
TheText.Load();
+#ifdef FIX_BUGS
+ if (gGameState > GS_INIT_ONCE)
+#endif
CTimer::Update();
CGame::frenchGame = false;
CGame::germanGame = false;
diff --git a/src/core/config.h b/src/core/config.h
index f19da754..abc81834 100644
--- a/src/core/config.h
+++ b/src/core/config.h
@@ -195,7 +195,8 @@ enum Config {
#define DRAW_GAME_VERSION_TEXT
#ifdef DRAW_GAME_VERSION_TEXT
// unlike R* development builds, ours has runtime switch on debug menu & .ini, and disabled as default.
- #define USE_OUR_VERSIONING // If you disable this then game will fetch version from peds.col, as R* did while in development
+ // If you disable this then game will fetch version from peds.col, as R* did while in development.
+ //#define USE_OUR_VERSIONING // enabled from buildfiles by default
#endif
// Memory allocation and compression
diff --git a/src/core/main.cpp b/src/core/main.cpp
index 4902c156..74b896c6 100644
--- a/src/core/main.cpp
+++ b/src/core/main.cpp
@@ -379,7 +379,7 @@ DoRWStuffEndOfFrame(void)
}
#else
if (CPad::GetPad(1)->GetLeftShockJustDown() || CPad::GetPad(0)->GetFJustDown(11)) {
- sprintf(s, "screen_%11lld.png", time(nil));
+ sprintf(s, "screen_0%11lld.png", time(nil));
RwGrabScreen(Scene.camera, s);
}
#endif
diff --git a/src/render/Particle.cpp b/src/render/Particle.cpp
index 14b48243..334ceb57 100644
--- a/src/render/Particle.cpp
+++ b/src/render/Particle.cpp
@@ -1880,11 +1880,20 @@ void CParticle::Render()
if ( canDraw && psystem->Flags & DRAWTOP2D )
{
- float screenZ = (particle->m_vecPosition.z - CDraw::GetNearClipZ())
+ float screenZ;
+#ifdef FIX_BUGS
+ bool zIsZero = true;
+ if ( particle->m_vecPosition.z != 0.0f ) {
+#endif
+ screenZ = (particle->m_vecPosition.z - CDraw::GetNearClipZ())
* (CSprite::GetFarScreenZ() - CSprite::GetNearScreenZ())
* CDraw::GetFarClipZ()
/ ( (CDraw::GetFarClipZ() - CDraw::GetNearClipZ()) * particle->m_vecPosition.z )
+ CSprite::GetNearScreenZ();
+#ifdef FIX_BUGS
+ zIsZero = false;
+ }
+#endif
float stretchTexW;
float stretchTexH;
@@ -1900,6 +1909,9 @@ void CParticle::Render()
stretchTexH = CGeneral::GetRandomNumberInRange(0.1f, 1.0f) * psystem->m_vecTextureStretch.y + 63.0f;
}
+#ifdef FIX_BUGS
+ if (!zIsZero) {
+#endif
if ( i == PARTICLE_WATERDROP )
{
@@ -2001,7 +2013,10 @@ void CParticle::Render()
canDraw = false;
}
-
+#ifdef FIX_BUGS
+ }
+ if ( !(zIsZero && (i == PARTICLE_WATERDROP || i == PARTICLE_BLOODDROP || i == PARTICLE_HEATHAZE_IN_DIST || i == PARTICLE_HEATHAZE) ) )
+#endif
if ( canDraw )
{
if ( particle->m_nRotation != 0 )