diff --git a/Source/Core/Map/MapSet.cs b/Source/Core/Map/MapSet.cs index 502d17229d072b539dd2e51f75b008ab75f3ff40..2324dea69a820d421016b45dba071ce330d4a2a8 100755 --- a/Source/Core/Map/MapSet.cs +++ b/Source/Core/Map/MapSet.cs @@ -3761,8 +3761,12 @@ namespace CodeImp.DoomBuilder.Map /// <summary>This snaps all vertices to the map format accuracy. Call this to ensure the vertices are at valid coordinates.</summary> public void SnapAllToAccuracy(bool usepreciseposition) { - foreach(Vertex v in vertices) v.SnapToAccuracy(usepreciseposition); - foreach(Thing t in things) t.SnapToAccuracy(usepreciseposition); + // SRB2 doesn't support decimals for X/Y position, but does still require VertexDecimals for other float fields/values... + if (General.Map.Config.EngineName == "srb2") + usepreciseposition = false; + + foreach (Vertex v in vertices) v.SnapToAccuracy(usepreciseposition); + foreach (Thing t in things) t.SnapToAccuracy(usepreciseposition); } /// <summary>This returns the next unused tag number.</summary> diff --git a/Source/Core/Map/Thing.cs b/Source/Core/Map/Thing.cs index f78f6f8a9a259537ca356ba99362b1bc1e3047b0..c29922c56c621c1ab9f3536d1c354efc41946f5d 100755 --- a/Source/Core/Map/Thing.cs +++ b/Source/Core/Map/Thing.cs @@ -726,7 +726,7 @@ namespace CodeImp.DoomBuilder.Map // This snaps the vertex to the map format accuracy public void SnapToAccuracy() { - SnapToAccuracy(true); + SnapToAccuracy(!(General.Map.Config.EngineName == "srb2")); } // This snaps the vertex to the map format accuracy diff --git a/Source/Core/Map/Vertex.cs b/Source/Core/Map/Vertex.cs index 145b0f2d0be0f784531ddd4456c495a17c485b0a..3e3042d704a36ae7d1750a495fe72ef29e58443d 100755 --- a/Source/Core/Map/Vertex.cs +++ b/Source/Core/Map/Vertex.cs @@ -283,7 +283,7 @@ namespace CodeImp.DoomBuilder.Map // This snaps the vertex to the map format accuracy public void SnapToAccuracy() { - SnapToAccuracy(true); + SnapToAccuracy(!(General.Map.Config.EngineName == "srb2")); } // This snaps the vertex to the map format accuracy