diff --git a/src/xrGame/StdAfx.h b/src/xrGame/StdAfx.h
index 90aff25248d..67a51ccbf5e 100644
--- a/src/xrGame/StdAfx.h
+++ b/src/xrGame/StdAfx.h
@@ -47,8 +47,100 @@
#define THROW3 VERIFY3
#endif
+#pragma region
#include "xrEngine/gamefont.h"
#include "xrEngine/xr_object.h"
#include "xrEngine/IGame_Level.h"
-#include "xrPhysics/xrphysics.h"
+#include "xrPhysics/xrPhysics.h"
+#include "xrPhysics/PhysicsShell.h"
#include "xrServerEntities/smart_cast.h"
+#include "Common/LevelStructure.hpp"
+#include "Common/object_broker.h"
+#include "Actor.h"
+#include "alife_smart_terrain_task.h"
+#include "alife_abstract_registry.h"
+#include "alife_graph_registry.h"
+#include "alife_storage_manager.h"
+#include "attachable_item.h"
+#include "abstract_location_selector.h"
+#include "action_planner.h"
+#include "Explosive.h"
+#include "HudItem.h"
+#include "Inventory.h"
+#include "Level.h"
+#include "memory_manager.h"
+#include "object_handler.h"
+#include "object_handler_planner.h"
+#include "object_manager.h"
+#include "obsolete_queue.h"
+#include "obstacles_query.h"
+#include "patrol_path_manager.h"
+#include "PdaMsg.h"
+#include "PhysicsShellHolder.h"
+#include "PHCollisionDamageReceiver.h"
+#include "PHCommander.h"
+#include "PHDebug.h"
+#include "PHDestroyable.h"
+#include "PHDestroyableNotificate.h"
+#include "PHSkeleton.h"
+#include "space_restrictor.h"
+#include "stalker_animation_manager.h"
+#include "stalker_movement_params.h"
+#include "state_arguments_functions.h"
+#include "static_obstacles_avoider.h"
+#include "steering_behaviour.h"
+#include "string_table.h"
+#include "smart_cover_detail.h"
+#include "sound_player.h"
+#include "team_hierarchy_holder.h"
+#include "Tracer.h"
+#include "visual_memory_manager.h"
+#include "Weapon.h"
+#include "WeaponCustomPistol.h"
+//#include "WeaponMagazined.h"
+#include "xr_time.h"
+#include "ai/monsters/basemonster/base_monster.h"
+#include "UICursor.h"
+#include "UIGameCTA.h"
+#include "ui_defs.h"
+#include "UIGameCustom.h"
+#include "UIStaticItem.h"
+#include "ui/Restrictions.h"
+#include "ui/UI_IB_Static.h"
+#include "ui/UI3tButton.h"
+#include "ui/UIButton.h"
+#include "ui/UIBuyWndBase.h"
+#include "ui/UIBuyWndShared.h"
+#include "ui/UICellItem.h"
+#include "ui/UICustomEdit.h"
+#include "ui/UIDialogWnd.h"
+#include "ui/UIEditBox.h"
+#include "ui/UIFrameLineWnd.h"
+#include "ui/UIFrameWindow.h"
+#include "ui/UIGameLog.h"
+#include "ui/UIHelper.h"
+#include "ui/UIHint.h"
+#include "ui/UIInteractiveBackground.h"
+#include "ui/UIInventoryUtilities.h"
+#include "ui/UIListBox.h"
+#include "ui/UIMainIngameWnd.h"
+#include "ui/UIProgressBar.h"
+#include "ui/UIOptionsItem.h"
+#include "ui/UIScrollView.h"
+//#include "ui/UIStatic.h"
+#include "ui/UISubLine.h"
+#include "ui/UIXmlInit.h"
+#include "Include/xrRender/Kinematics.h"
+#include "xrAICore/Navigation/graph_abstract.h"
+#include "xrAICore/Navigation/ai_object_location.h"
+#include "xrCore/_vector3d_ext.h"
+#include "xrEngine/CameraBase.h"
+#include "xrEngine/CustomHUD.h"
+#include "xrEngine/Effector.h"
+#include "xrEngine/EffectorPP.h"
+#include "xrEngine/GameMtlLib.h"
+#include "xrEngine/LightAnimLibrary.h"
+#include "xrPhysics/PHObject.h"
+#include "xrPhysics/PHUpdateObject.h"
+#include "xrServerEntities/alife_monster_brain.h"
+#pragma endregion Bloat galore!
diff --git a/src/xrGame/object_handler_planner.h b/src/xrGame/object_handler_planner.h
index 1a8ea9185a8..147c112a1d9 100644
--- a/src/xrGame/object_handler_planner.h
+++ b/src/xrGame/object_handler_planner.h
@@ -9,6 +9,7 @@
#pragma once
#include "action_planner.h"
+#include "ai/stalker/ai_stalker.h"
class CAI_Stalker;
class CInventoryItem;
diff --git a/src/xrGame/xrGame.vcxproj.filters b/src/xrGame/xrGame.vcxproj.filters
index dcfb71675cd..029aafa83a5 100644
--- a/src/xrGame/xrGame.vcxproj.filters
+++ b/src/xrGame/xrGame.vcxproj.filters
@@ -2287,6 +2287,9 @@
{0e29aa42-d79c-425a-994b-c18169f076de}
+
+ {c2cce2fe-498b-4192-baf4-c5a1bf9717f0}
+
@@ -4653,12 +4656,6 @@
AI\ASpace
-
- Core
-
-
- Core
-
Core\Client\Cameras
@@ -6651,6 +6648,12 @@
Core\Client\Level\ClientDigestComputer
+
+ PCH
+
+
+ PCH
+
@@ -8015,12 +8018,6 @@
AI\ASpace
-
- Core
-
-
- Core
-
Core\Client\Cameras
@@ -10160,6 +10157,12 @@
Core\Client\Level\ClientDigestComputer
+
+ PCH
+
+
+ PCH
+
diff --git a/src/xrPhysics/DamageSource.h b/src/xrPhysics/DamageSource.h
index 1e9565e815a..4b45b0483de 100644
--- a/src/xrPhysics/DamageSource.h
+++ b/src/xrPhysics/DamageSource.h
@@ -1,10 +1,12 @@
#pragma once
+#include "xrCore/xrDebug_macros.h" // ONLY for pragma todo!
+#pragma todo("__declspec(novtable) for IDamageSource ?")
class IDamageSource
{
public:
virtual ~IDamageSource(){};
virtual void SetInitiator(u16 id) = 0;
virtual u16 Initiator() = 0;
- virtual IDamageSource* cast_IDamageSource() = 0; //{return this ;}
+ virtual IDamageSource* cast_IDamageSource() = 0; //{ return this; }
};
diff --git a/src/xrPhysics/iphysics_scripted.h b/src/xrPhysics/iphysics_scripted.h
index 3b1024a89d5..2665cb28c38 100644
--- a/src/xrPhysics/iphysics_scripted.h
+++ b/src/xrPhysics/iphysics_scripted.h
@@ -3,6 +3,7 @@
#pragma once
+#include "xrServerEntities/smart_cast.h" // get_script_wrapper() needs it
class iphysics_scripted;
class iphysics_game_scripted
{