Submarine rendering to correct position almost ready, fixed camera position "twitching"

This commit is contained in:
Regalis
2015-12-04 17:21:59 +02:00
parent 242af12f14
commit 09588e548d
8 changed files with 36 additions and 22 deletions
@@ -536,17 +536,28 @@ namespace Barotrauma
}
}
public void FindHull()
public void FindHull(bool setSubmarine = true)
{
Hull newHull = Hull.FindHull(
ConvertUnits.ToDisplayUnits(refLimb.SimPosition),
currentHull);
if (newHull == currentHull) return;
CurrentHull = newHull;
if (setSubmarine)
{
if (newHull == null && currentHull.Submarine != null)
{
SetPosition(refLimb.SimPosition + ConvertUnits.ToSimUnits(currentHull.Submarine.Position));
}
else if (currentHull == null && newHull != null && newHull.Submarine != null)
{
SetPosition(refLimb.SimPosition - ConvertUnits.ToSimUnits(newHull.Submarine.Position));
}
}
CurrentHull = newHull;
UpdateCollisionCategories();
}