summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorerorcun <erorcunerorcun@hotmail.com.tr>2021-01-16 14:44:59 +0100
committershfil <filip.gawin@zoho.com>2021-01-17 21:32:54 +0100
commit5a47379bf5f011a65c1d0f88a0cb5f2130feb9db (patch)
treed3b13533c6058d2b26035d180e4a7e8b735c283c
parentvehicle fixes (diff)
downloadre3-5a47379bf5f011a65c1d0f88a0cb5f2130feb9db.tar
re3-5a47379bf5f011a65c1d0f88a0cb5f2130feb9db.tar.gz
re3-5a47379bf5f011a65c1d0f88a0cb5f2130feb9db.tar.bz2
re3-5a47379bf5f011a65c1d0f88a0cb5f2130feb9db.tar.lz
re3-5a47379bf5f011a65c1d0f88a0cb5f2130feb9db.tar.xz
re3-5a47379bf5f011a65c1d0f88a0cb5f2130feb9db.tar.zst
re3-5a47379bf5f011a65c1d0f88a0cb5f2130feb9db.zip
-rw-r--r--src/audio/PoliceRadio.cpp1
-rw-r--r--src/audio/PoliceRadio.h2
-rw-r--r--src/audio/sampman.h1
-rw-r--r--src/audio/sampman_miles.cpp6
-rw-r--r--src/audio/sampman_oal.cpp33
-rw-r--r--src/collision/TempColModels.cpp1
-rw-r--r--src/collision/TempColModels.h2
-rw-r--r--src/control/Darkel.cpp2
-rw-r--r--src/control/Garages.h3
-rw-r--r--src/control/Script.h4
-rw-r--r--src/control/Script3.cpp1
-rw-r--r--src/control/Script4.cpp1
-rw-r--r--src/core/ControllerConfig.cpp8
-rw-r--r--src/core/Frontend.cpp14
-rw-r--r--src/core/Game.cpp5
-rw-r--r--src/core/Lists.h2
-rw-r--r--src/core/Pad.cpp9
-rw-r--r--src/core/PlayerInfo.h2
-rw-r--r--src/core/World.cpp5
-rw-r--r--src/core/World.h6
-rw-r--r--src/core/Zones.h4
-rw-r--r--src/core/common.h39
-rw-r--r--src/core/re3.cpp5
-rw-r--r--src/extras/custompipes.cpp2
-rw-r--r--src/extras/custompipes_d3d9.cpp2
-rw-r--r--src/extras/postfx.cpp3
-rw-r--r--src/extras/screendroplets.cpp2
-rw-r--r--src/fakerw/fake.cpp2
-rw-r--r--src/modelinfo/BaseModelInfo.cpp2
-rw-r--r--src/modelinfo/BaseModelInfo.h2
-rw-r--r--src/modelinfo/ModelInfo.h1
-rw-r--r--src/modelinfo/PedModelInfo.h1
-rw-r--r--src/peds/Ped.cpp1
-rw-r--r--src/peds/Ped.h1
-rw-r--r--src/render/MBlur.cpp1
-rw-r--r--src/render/Renderer.cpp2
-rw-r--r--src/rw/RwHelper.cpp2
-rw-r--r--src/save/MemoryCard.cpp1
-rw-r--r--src/skel/glfw/glfw.cpp45
-rw-r--r--src/skel/win/win.cpp19
-rw-r--r--src/vehicles/Automobile.cpp1
-rw-r--r--src/vehicles/Vehicle.h5
42 files changed, 105 insertions, 146 deletions
diff --git a/src/audio/PoliceRadio.cpp b/src/audio/PoliceRadio.cpp
index 37421904..94143746 100644
--- a/src/audio/PoliceRadio.cpp
+++ b/src/audio/PoliceRadio.cpp
@@ -13,6 +13,7 @@
#include "World.h"
#include "Zones.h"
#include "sampman.h"
+#include "Wanted.h"
const int channels = ARRAY_SIZE(cAudioManager::m_asActiveSamples);
const int policeChannel = channels + 1;
diff --git a/src/audio/PoliceRadio.h b/src/audio/PoliceRadio.h
index c01f21ce..368708b6 100644
--- a/src/audio/PoliceRadio.h
+++ b/src/audio/PoliceRadio.h
@@ -1,6 +1,6 @@
#pragma once
-#include "Wanted.h"
+#include "Crime.h"
struct cAMCrime {
int32 type;
diff --git a/src/audio/sampman.h b/src/audio/sampman.h
index 72c3eb7f..a5f6c7e2 100644
--- a/src/audio/sampman.h
+++ b/src/audio/sampman.h
@@ -1,5 +1,4 @@
#pragma once
-#include "common.h"
#include "AudioSamples.h"
#define MAX_VOLUME 127
diff --git a/src/audio/sampman_miles.cpp b/src/audio/sampman_miles.cpp
index db38da64..82886c66 100644
--- a/src/audio/sampman_miles.cpp
+++ b/src/audio/sampman_miles.cpp
@@ -1,8 +1,5 @@
-#include "common.h"
-
#ifdef AUDIO_MSS
-#include <windows.h>
-#include <shobjidl.h>
+#include <shlobj.h>
#include <shlguid.h>
#include <time.h>
@@ -11,6 +8,7 @@
#include "eax-util.h"
#include "mss.h"
+#include "common.h"
#include "sampman.h"
#include "AudioManager.h"
#include "MusicManager.h"
diff --git a/src/audio/sampman_oal.cpp b/src/audio/sampman_oal.cpp
index bb7f0aac..798ea287 100644
--- a/src/audio/sampman_oal.cpp
+++ b/src/audio/sampman_oal.cpp
@@ -1,17 +1,11 @@
//#define JUICY_OAL
#ifdef AUDIO_OAL
-#include "sampman.h"
-
#include <time.h>
#include "eax.h"
#include "eax-util.h"
-#define WITHWINDOWS
-#include "common.h"
-#include "crossplatform.h"
-
#ifdef _WIN32
#include <io.h>
#include <AL/al.h>
@@ -19,8 +13,22 @@
#include <AL/alext.h>
#include <AL/efx.h>
#include <AL/efx-presets.h>
+
+#pragma comment(lib, "OpenAL32.lib")
+
+// for user MP3s
+#include <direct.h>
+#include <shlobj.h>
+#include <shlguid.h>
+#else
+#define _getcwd getcwd
#endif
+#include "common.h"
+#include "crossplatform.h"
+
+#include "sampman.h"
+
#include "oal/oal_utils.h"
#include "oal/aldlist.h"
#include "oal/channel.h"
@@ -38,19 +46,6 @@
//TODO: max channels
//TODO: loop count
-#ifdef _WIN32
-#pragma comment( lib, "OpenAL32.lib" )
-#endif
-
-// for user MP3s
-#ifdef _WIN32
-#include <direct.h>
-#include <shobjidl.h>
-#include <shlguid.h>
-#else
-#define _getcwd getcwd
-#endif
-
cSampleManager SampleManager;
bool _bSampmanInitialised = false;
diff --git a/src/collision/TempColModels.cpp b/src/collision/TempColModels.cpp
index dabb6ebb..494c148d 100644
--- a/src/collision/TempColModels.cpp
+++ b/src/collision/TempColModels.cpp
@@ -1,6 +1,7 @@
#include "common.h"
#include "TempColModels.h"
+#include "Game.h"
CColModel CTempColModels::ms_colModelPed1;
CColModel CTempColModels::ms_colModelPed2;
diff --git a/src/collision/TempColModels.h b/src/collision/TempColModels.h
index 3e1dd5e1..057728af 100644
--- a/src/collision/TempColModels.h
+++ b/src/collision/TempColModels.h
@@ -1,6 +1,6 @@
#pragma once
-#include "Collision.h"
+#include "ColModel.h"
class CTempColModels
{
diff --git a/src/control/Darkel.cpp b/src/control/Darkel.cpp
index 91d2163d..9f6809df 100644
--- a/src/control/Darkel.cpp
+++ b/src/control/Darkel.cpp
@@ -126,7 +126,7 @@ CDarkel::DrawMessages()
#if defined(PS2_HUD) || defined(FIX_BUGS)
#ifdef FIX_BUGS
CFont::PrintString(SCREEN_SCALE_FROM_RIGHT(34.0f - 1.0f), SCREEN_SCALE_Y(108.0f + 1.0f), gUString);
- #else -
+ #else
CFont::PrintString(SCREEN_WIDTH-(34.0f - 1.0f), 108.0f + 1.0f, gUString);
#endif
#else
diff --git a/src/control/Garages.h b/src/control/Garages.h
index ee5ac4d3..3a8bc08d 100644
--- a/src/control/Garages.h
+++ b/src/control/Garages.h
@@ -1,11 +1,10 @@
#pragma once
-#include "Automobile.h"
#include "audio_enums.h"
#include "Camera.h"
#include "config.h"
+#include "Lists.h"
class CVehicle;
-class CCamera;
enum eGarageState
{
diff --git a/src/control/Script.h b/src/control/Script.h
index c0b69e0f..ff1a9706 100644
--- a/src/control/Script.h
+++ b/src/control/Script.h
@@ -1,7 +1,5 @@
#pragma once
-#include "common.h"
#include "Font.h"
-#include "Ped.h"
#include "PedType.h"
#include "Text.h"
#include "Sprite2d.h"
@@ -36,9 +34,11 @@ void FlushLog();
#define SPHERE_MARKER_PULSE_FRACTION (0.1f)
#ifdef USE_PRECISE_MEASUREMENT_CONVERTION
+#define MILES_IN_METER (0.000621371192f)
#define METERS_IN_FOOT (0.3048f)
#define FEET_IN_METER (3.28084f)
#else
+#define MILES_IN_METER (1 / 1670.f)
#define METERS_IN_FOOT (0.3f)
#define FEET_IN_METER (3.33f)
#endif
diff --git a/src/control/Script3.cpp b/src/control/Script3.cpp
index 27277f0e..6e6e15bf 100644
--- a/src/control/Script3.cpp
+++ b/src/control/Script3.cpp
@@ -32,6 +32,7 @@
#include "WaterLevel.h"
#include "Weather.h"
#include "Zones.h"
+#include "Wanted.h"
int8 CRunningScript::ProcessCommands500To599(int32 command)
{
diff --git a/src/control/Script4.cpp b/src/control/Script4.cpp
index d17334a9..6fea8807 100644
--- a/src/control/Script4.cpp
+++ b/src/control/Script4.cpp
@@ -38,6 +38,7 @@
#include "WaterLevel.h"
#include "World.h"
#include "Zones.h"
+#include "Wanted.h"
int8 CRunningScript::ProcessCommands800To899(int32 command)
{
diff --git a/src/core/ControllerConfig.cpp b/src/core/ControllerConfig.cpp
index bf4893ea..600738ee 100644
--- a/src/core/ControllerConfig.cpp
+++ b/src/core/ControllerConfig.cpp
@@ -1,11 +1,7 @@
-#if defined RW_D3D9 || defined RWLIBS
-#define DIRECTINPUT_VERSION 0x0800
-#include <dinput.h>
-#endif
-
+#define WITHDINPUT
#include "common.h"
#include "platform.h"
-#include "crossplatform.h" // for Windows version
+#include "crossplatform.h"
#include "ControllerConfig.h"
#include "Pad.h"
#include "FileMgr.h"
diff --git a/src/core/Frontend.cpp b/src/core/Frontend.cpp
index 7bf4be84..b1d6c43d 100644
--- a/src/core/Frontend.cpp
+++ b/src/core/Frontend.cpp
@@ -1,10 +1,6 @@
-#if defined RW_D3D9 || defined RWLIBS
-#define DIRECTINPUT_VERSION 0x0800
-#include <dinput.h>
-#endif
-
#define FORCE_PC_SCALING
#define WITHWINDOWS
+#define WITHDINPUT
#include "common.h"
#ifndef PS2_MENU
#include "crossplatform.h"
@@ -145,14 +141,6 @@ int8 CMenuManager::m_nDisplayMSAALevel = 0;
int8 CMenuManager::m_PrefsIslandLoading = ISLAND_LOADING_LOW;
#endif
-#ifdef USE_PRECISE_MEASUREMENT_CONVERTION
-#define MILES_IN_METER 0.000621371192f
-#define FEET_IN_METER 3.28084f
-#else
-#define MILES_IN_METER (1 / 1670.f)
-#define FEET_IN_METER 3.33f
-#endif
-
int32 CMenuManager::OS_Language = LANG_ENGLISH;
int8 CMenuManager::m_PrefsUseVibration;
int8 CMenuManager::m_DisplayControllerOnFoot;
diff --git a/src/core/Game.cpp b/src/core/Game.cpp
index 7961b981..4fd30b53 100644
--- a/src/core/Game.cpp
+++ b/src/core/Game.cpp
@@ -1,6 +1,3 @@
-#pragma warning( push )
-#pragma warning( disable : 4005)
-#pragma warning( pop )
#include "common.h"
#include "platform.h"
@@ -10,7 +7,6 @@
#include "Accident.h"
#include "Antennas.h"
#include "Bridge.h"
-#include "Camera.h"
#include "CarCtrl.h"
#include "CarGen.h"
#include "CdStream.h"
@@ -67,7 +63,6 @@
#include "Shadows.h"
#include "Skidmarks.h"
#include "SpecialFX.h"
-#include "Sprite2d.h"
#include "Stats.h"
#include "Streaming.h"
#include "SurfaceTable.h"
diff --git a/src/core/Lists.h b/src/core/Lists.h
index ecf24740..7572e882 100644
--- a/src/core/Lists.h
+++ b/src/core/Lists.h
@@ -1,7 +1,5 @@
#pragma once
-#include "common.h"
-
class CPtrNode
{
public:
diff --git a/src/core/Pad.cpp b/src/core/Pad.cpp
index 7187efac..5e5f1326 100644
--- a/src/core/Pad.cpp
+++ b/src/core/Pad.cpp
@@ -1,11 +1,4 @@
-#pragma warning( push )
-#pragma warning( disable : 4005)
-#if defined RW_D3D9 || defined RWLIBS
-#define DIRECTINPUT_VERSION 0x0800
-#include <dinput.h>
-#endif
-#pragma warning( pop )
-
+#define WITHDINPUT
#include "common.h"
#include "crossplatform.h"
#include "platform.h"
diff --git a/src/core/PlayerInfo.h b/src/core/PlayerInfo.h
index 49424b8b..956756e4 100644
--- a/src/core/PlayerInfo.h
+++ b/src/core/PlayerInfo.h
@@ -1,6 +1,6 @@
#pragma once
-#include "Collision.h"
+#include "ColModel.h"
enum eWastedBustedState
{
diff --git a/src/core/World.cpp b/src/core/World.cpp
index 67992035..6ecc294a 100644
--- a/src/core/World.cpp
+++ b/src/core/World.cpp
@@ -4,7 +4,6 @@
#include "CopPed.h"
#include "CutsceneMgr.h"
#include "DMAudio.h"
-#include "Entity.h"
#include "EventList.h"
#include "Explosion.h"
#include "Fire.h"
@@ -12,10 +11,7 @@
#include "Glass.h"
#include "Messages.h"
#include "ModelIndices.h"
-#include "Object.h"
#include "ParticleObject.h"
-#include "Ped.h"
-#include "PlayerPed.h"
#include "Population.h"
#include "ProjectileInfo.h"
#include "Record.h"
@@ -24,7 +20,6 @@
#include "RpAnimBlend.h"
#include "Shadows.h"
#include "TempColModels.h"
-#include "Vehicle.h"
#include "WaterLevel.h"
#include "World.h"
diff --git a/src/core/World.h b/src/core/World.h
index 9d62e79b..3d553752 100644
--- a/src/core/World.h
+++ b/src/core/World.h
@@ -3,6 +3,7 @@
#include "Game.h"
#include "Lists.h"
#include "PlayerInfo.h"
+#include "Collision.h"
/* Sectors span from -2000 to 2000 in x and y.
* With 100x100 sectors, each is 40x40 units. */
@@ -48,11 +49,6 @@ public:
VALIDATE_SIZE(CSector, 0x28);
-class CEntity;
-struct CColPoint;
-struct CColLine;
-struct CStoredCollPoly;
-
class CWorld
{
static CPtrList ms_bigBuildingsList[NUM_LEVELS];
diff --git a/src/core/Zones.h b/src/core/Zones.h
index 6549dad5..aa0466e8 100644
--- a/src/core/Zones.h
+++ b/src/core/Zones.h
@@ -105,8 +105,8 @@ public:
static void SetPedGroup(uint16 zoneid, uint8 day, uint16 pedgroup);
static int16 FindAudioZone(CVector *pos);
static eLevelName FindZoneForPoint(const CVector &pos);
- static CZone *GetPointerForZoneIndex(int32 i) { return i == -1 ? nil : &ZoneArray[i]; }
- static int32 GetIndexForZonePointer(CZone *zone) { return zone == nil ? -1 : zone - ZoneArray; }
+ static CZone *GetPointerForZoneIndex(ssize_t i) { return i == -1 ? nil : &ZoneArray[i]; }
+ static ssize_t GetIndexForZonePointer(CZone *zone) { return zone == nil ? -1 : zone - ZoneArray; }
static void AddZoneToAudioZoneArray(CZone *zone);
static void InitialiseAudioZoneArray(void);
static void SaveAllZones(uint8 *buffer, uint32 *length);
diff --git a/src/core/common.h b/src/core/common.h
index 7213b140..8b5f6b3c 100644
--- a/src/core/common.h
+++ b/src/core/common.h
@@ -11,17 +11,34 @@
#include <string.h>
#include <math.h>
-#if defined _WIN32 && defined WITHWINDOWS
-#include <windows.h>
+#if !defined RW_D3D9 && defined LIBRW
+#undef WITHD3D
+#undef WITHDINPUT
+#endif
+
+#if (defined WITHD3D && !defined LIBRW)
+#define WITHWINDOWS
#endif
-#if defined _WIN32 && defined WITHD3D
+#if defined _WIN32 && defined WITHWINDOWS && !defined _INC_WINDOWS
#include <windows.h>
-#ifndef USE_D3D9
-#include <d3d8types.h>
-#else
-#include <d3d9types.h>
#endif
+
+#ifdef WITHD3D
+ #ifdef LIBRW
+ #define WITH_D3D // librw includes d3d9 itself via this right now
+ #else
+ #ifndef USE_D3D9
+ #include <d3d8types.h>
+ #else
+ #include <d3d9types.h>
+ #endif
+ #endif
+#endif
+
+#ifdef WITHDINPUT
+#define DIRECTINPUT_VERSION 0x0800
+#include <dinput.h>
#endif
#include <rwcore.h>
@@ -52,14 +69,6 @@
#define rwVENDORID_ROCKSTAR 0x0253F2
-// Get rid of bullshit windows definitions, we're not running on an 8086
-#ifdef far
-#undef far
-#endif
-#ifdef near
-#undef near
-#endif
-
#define Max(a,b) ((a) > (b) ? (a) : (b))
#define Min(a,b) ((a) < (b) ? (a) : (b))
diff --git a/src/core/re3.cpp b/src/core/re3.cpp
index 6117462a..a4b76269 100644
--- a/src/core/re3.cpp
+++ b/src/core/re3.cpp
@@ -1,7 +1,6 @@
#include <csignal>
#define WITHWINDOWS
#include "common.h"
-#include "crossplatform.h"
#include "Renderer.h"
#include "Credits.h"
#include "Camera.h"
@@ -36,6 +35,10 @@
#include "ControllerConfig.h"
#endif
+#ifdef DONT_TRUST_RECOGNIZED_JOYSTICKS
+#include "crossplatform.h"
+#endif
+
#ifndef _WIN32
#include "assert.h"
#include <stdarg.h>
diff --git a/src/extras/custompipes.cpp b/src/extras/custompipes.cpp
index e6dff12a..092b3e23 100644
--- a/src/extras/custompipes.cpp
+++ b/src/extras/custompipes.cpp
@@ -1,4 +1,4 @@
-#define WITH_D3D
+#define WITHD3D
#include "common.h"
#ifdef EXTENDED_PIPELINES
diff --git a/src/extras/custompipes_d3d9.cpp b/src/extras/custompipes_d3d9.cpp
index 1f4ee07d..4242c630 100644
--- a/src/extras/custompipes_d3d9.cpp
+++ b/src/extras/custompipes_d3d9.cpp
@@ -1,4 +1,4 @@
-#define WITH_D3D
+#define WITHD3D
#include "common.h"
#ifdef RW_D3D9
diff --git a/src/extras/postfx.cpp b/src/extras/postfx.cpp
index d3b8b8ac..51b91060 100644
--- a/src/extras/postfx.cpp
+++ b/src/extras/postfx.cpp
@@ -1,5 +1,4 @@
-#define WITHWINDOWS
-#define WITH_D3D
+#define WITHD3D
#include "common.h"
#ifdef EXTENDED_COLOURFILTER
diff --git a/src/extras/screendroplets.cpp b/src/extras/screendroplets.cpp
index ac3a17b2..74c44da0 100644
--- a/src/extras/screendroplets.cpp
+++ b/src/extras/screendroplets.cpp
@@ -1,4 +1,4 @@
-#define WITH_D3D
+#define WITHD3D
#include "common.h"
#ifdef SCREEN_DROPLETS
diff --git a/src/fakerw/fake.cpp b/src/fakerw/fake.cpp
index 6585032b..c1150931 100644
--- a/src/fakerw/fake.cpp
+++ b/src/fakerw/fake.cpp
@@ -1,5 +1,5 @@
#define _CRT_SECURE_NO_WARNINGS
-#define WITH_D3D
+#define WITH_D3D // not WITHD3D, so it's librw define
#include <rwcore.h>
#include <rpworld.h>
#include <rpmatfx.h>
diff --git a/src/modelinfo/BaseModelInfo.cpp b/src/modelinfo/BaseModelInfo.cpp
index a2779107..f1c7d050 100644
--- a/src/modelinfo/BaseModelInfo.cpp
+++ b/src/modelinfo/BaseModelInfo.cpp
@@ -4,7 +4,7 @@
#include "TxdStore.h"
#include "2dEffect.h"
#include "BaseModelInfo.h"
-
+#include "ColModel.h"
CBaseModelInfo::CBaseModelInfo(ModelInfoType type)
{
diff --git a/src/modelinfo/BaseModelInfo.h b/src/modelinfo/BaseModelInfo.h
index 31c7f566..f46cea84 100644
--- a/src/modelinfo/BaseModelInfo.h
+++ b/src/modelinfo/BaseModelInfo.h
@@ -1,6 +1,6 @@
#pragma once
-#include "Collision.h"
+struct CColModel;
#define MAX_MODEL_NAME (24)
diff --git a/src/modelinfo/ModelInfo.h b/src/modelinfo/ModelInfo.h
index 65cfa4e7..4fe1ebb0 100644
--- a/src/modelinfo/ModelInfo.h
+++ b/src/modelinfo/ModelInfo.h
@@ -10,6 +10,7 @@
#include "VehicleModelInfo.h"
#include "XtraCompsModelInfo.h"
#include "Instance.h"
+#include "Game.h"
class CModelInfo
{
diff --git a/src/modelinfo/PedModelInfo.h b/src/modelinfo/PedModelInfo.h
index f467fe8a..26ab3c3f 100644
--- a/src/modelinfo/PedModelInfo.h
+++ b/src/modelinfo/PedModelInfo.h
@@ -1,6 +1,7 @@
#pragma once
#include "ClumpModelInfo.h"
+#include "ColModel.h"
#include "PedType.h"
enum PedNode {
diff --git a/src/peds/Ped.cpp b/src/peds/Ped.cpp
index 269aa084..a9529d2d 100644
--- a/src/peds/Ped.cpp
+++ b/src/peds/Ped.cpp
@@ -31,6 +31,7 @@
#include "ParticleObject.h"
#include "Floater.h"
#include "Range2D.h"
+#include "Wanted.h"
CPed *gapTempPedList[50];
uint16 gnNumTempPedList;
diff --git a/src/peds/Ped.h b/src/peds/Ped.h
index c2641a0f..0617a7bb 100644
--- a/src/peds/Ped.h
+++ b/src/peds/Ped.h
@@ -9,6 +9,7 @@
#include "Physical.h"
#include "Weapon.h"
#include "WeaponInfo.h"
+#include "Collision.h"
#define FEET_OFFSET 1.04f
#define CHECK_NEARBY_THINGS_MAX_DIST 15.0f
diff --git a/src/render/MBlur.cpp b/src/render/MBlur.cpp
index de15358e..a7d07ad9 100644
--- a/src/render/MBlur.cpp
+++ b/src/render/MBlur.cpp
@@ -1,4 +1,3 @@
-#define WITHWINDOWS
#ifndef LIBRW
#define WITHD3D
#endif
diff --git a/src/render/Renderer.cpp b/src/render/Renderer.cpp
index 131e77fe..d41f27e3 100644
--- a/src/render/Renderer.cpp
+++ b/src/render/Renderer.cpp
@@ -1,4 +1,4 @@
-#define WITH_D3D
+#define WITHD3D
#include "common.h"
#include "main.h"
diff --git a/src/rw/RwHelper.cpp b/src/rw/RwHelper.cpp
index d004656c..65e342ed 100644
--- a/src/rw/RwHelper.cpp
+++ b/src/rw/RwHelper.cpp
@@ -1,6 +1,4 @@
-#if defined RW_D3D9 || defined RWLIBS
#define WITHD3D
-#endif
#include "common.h"
#include <rpskin.h>
diff --git a/src/save/MemoryCard.cpp b/src/save/MemoryCard.cpp
index c8ebcd86..d6e95d33 100644
--- a/src/save/MemoryCard.cpp
+++ b/src/save/MemoryCard.cpp
@@ -1,6 +1,7 @@
#define WITHWINDOWS
#include "common.h"
#ifdef PS2_MENU
+#include "crossplatform.h"
#include "MemoryCard.h"
#include "main.h"
#include "DMAudio.h"
diff --git a/src/skel/glfw/glfw.cpp b/src/skel/glfw/glfw.cpp
index 93bfde5a..683407aa 100644
--- a/src/skel/glfw/glfw.cpp
+++ b/src/skel/glfw/glfw.cpp
@@ -1,22 +1,30 @@
#if defined RW_GL3 && !defined LIBRW_SDL2
#ifdef _WIN32
-#include <windows.h>
+#include <shlobj.h>
+#include <basetsd.h>
#include <mmsystem.h>
+#include <regstr.h>
#include <shellapi.h>
#include <windowsx.h>
-#include <basetsd.h>
-#include <regstr.h>
-#include <shlobj.h>
+
+DWORD _dwOperatingSystemVersion;
+#include "resource.h"
+#else
+long _dwOperatingSystemVersion;
+#ifndef __APPLE__
+#include <sys/sysinfo.h>
+#else
+#include <mach/mach_host.h>
+#include <sys/sysctl.h>
+#endif
+#include <errno.h>
+#include <locale.h>
+#include <signal.h>
+#include <stddef.h>
#endif
-#define WITHWINDOWS
#include "common.h"
-
-#pragma warning( push )
-#pragma warning( disable : 4005)
-#pragma warning( pop )
-
#if (defined(_MSC_VER))
#include <tchar.h>
#endif /* (defined(_MSC_VER)) */
@@ -73,23 +81,6 @@ static psGlobalType PsGlobal;
size_t _dwMemAvailPhys;
RwUInt32 gGameState;
-#ifdef _WIN32
-DWORD _dwOperatingSystemVersion;
-#include "resource.h"
-#else
-long _dwOperatingSystemVersion;
-#ifndef __APPLE__
-#include <sys/sysinfo.h>
-#else
-#include <mach/mach_host.h>
-#include <sys/sysctl.h>
-#endif
-#include <stddef.h>
-#include <locale.h>
-#include <signal.h>
-#include <errno.h>
-#endif
-
#ifdef DONT_TRUST_RECOGNIZED_JOYSTICKS
char gSelectedJoystickName[128] = "";
#endif
diff --git a/src/skel/win/win.cpp b/src/skel/win/win.cpp
index 53844319..d373a8b5 100644
--- a/src/skel/win/win.cpp
+++ b/src/skel/win/win.cpp
@@ -2,7 +2,6 @@
#define _WIN32_WINDOWS 0x0500
#define WINVER 0x0500
-#define DIRECTINPUT_VERSION 0x0800
#include <winerror.h>
#include <windows.h>
@@ -20,13 +19,7 @@
#pragma warning( push )
#pragma warning( disable : 4005)
-#ifdef USE_D3D9
-#include <d3d9.h>
-#else
-#include <d3d8.h>
-#endif
#include <ddraw.h>
-#include <dinput.h>
#include <DShow.h>
#pragma warning( pop )
@@ -41,6 +34,9 @@
#pragma comment( lib, "strmiids.lib" )
#pragma comment( lib, "dinput8.lib" )
+#define WITHD3D
+#define WITHDINPUT
+#include "common.h"
#if (defined(_MSC_VER))
#include <tchar.h>
#endif /* (defined(_MSC_VER)) */
@@ -82,7 +78,6 @@ static psGlobalType PsGlobal;
#define JIF(x) if (FAILED(hr=(x))) \
{debug(TEXT("FAILED(hr=0x%x) in ") TEXT(#x) TEXT("\n"), hr); return;}
-#include "common.h"
#include "main.h"
#include "FileMgr.h"
#include "Text.h"
@@ -93,12 +88,14 @@ static psGlobalType PsGlobal;
#include "Frontend.h"
#include "Game.h"
#include "PCSave.h"
-#include "MemoryCard.h"
-#include "Sprite2d.h"
#include "AnimViewer.h"
-#include "Font.h"
#include "MemoryMgr.h"
+#ifdef PS2_MENU
+#include "MemoryCard.h"
+#include "Font.h"
+#endif
+
VALIDATE_SIZE(psGlobalType, 0x28);
// DirectShow interfaces
diff --git a/src/vehicles/Automobile.cpp b/src/vehicles/Automobile.cpp
index d5a0fefa..966042e2 100644
--- a/src/vehicles/Automobile.cpp
+++ b/src/vehicles/Automobile.cpp
@@ -44,6 +44,7 @@
#include "PlayerPed.h"
#include "Object.h"
#include "Automobile.h"
+#include "Wanted.h"
bool bAllCarCheat; // unused
diff --git a/src/vehicles/Vehicle.h b/src/vehicles/Vehicle.h
index 7066a0ea..a6a4f815 100644
--- a/src/vehicles/Vehicle.h
+++ b/src/vehicles/Vehicle.h
@@ -3,8 +3,9 @@
#include "Physical.h"
#include "AutoPilot.h"
#include "ModelIndices.h"
-#include "AnimManager.h"
-#include "Weapon.h"
+#include "AnimationId.h"
+#include "WeaponType.h"
+#include "Collision.h"
class CPed;
class CFire;