From 3a0201ca281efc55805a5633fa3acdd01cb9d414 Mon Sep 17 00:00:00 2001 From: Sebastian Broberg Date: Thu, 3 Mar 2016 21:05:04 +0100 Subject: [PATCH] Items now take all gaps in account --- Subsurface/Source/Map/Hull.cs | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/Subsurface/Source/Map/Hull.cs b/Subsurface/Source/Map/Hull.cs index 0fc0148b0..d8cd83b2a 100644 --- a/Subsurface/Source/Map/Hull.cs +++ b/Subsurface/Source/Map/Hull.cs @@ -469,12 +469,13 @@ namespace Barotrauma var uplift = -GameMain.World.Gravity*(forceFactor - body.body.LinearVelocity.Y*5); body.body.FarseerBody.ApplyForce(uplift*deltaTime); - var gap = ConnectedGaps.Where(i => i.Open > 0).OrderBy(i => i.LerpedFlowForce.Length()).FirstOrDefault(); - if (gap == null || gap.LerpedFlowForce.Length() < 0) - return; - var pos = gap.Position - body.Position; - pos.Normalize(); - body.body.ApplyForce((pos*gap.LerpedFlowForce)*deltaTime); + foreach (var gap in ConnectedGaps.Where(gap => gap.Open > 0)) + { + var pos = gap.Position - body.Position; + pos.Normalize(); + body.body.ApplyForce((pos * gap.LerpedFlowForce) * deltaTime); + } + } public void Extinquish(float deltaTime, float amount, Vector2 position)