Characters that are outside are rendered under particles -> creatures can be hidden by smoke from hydrothermal vents.

This commit is contained in:
Joonas Rikkonen
2017-08-22 19:06:29 +03:00
parent 15a31c5291
commit 65211ecbb6
3 changed files with 50 additions and 12 deletions
@@ -151,12 +151,14 @@ namespace Barotrauma
public Rectangle Borders
{
get
{
return subBody.Borders;
}
get { return subBody.Borders; }
}
public Rectangle WorldBorders
{
get { return SubBody.WorldBorders; }
}
public override Vector2 Position
{
get { return subBody==null ? Vector2.Zero : subBody.Position - HiddenSubPosition; }
@@ -39,6 +39,12 @@ namespace Barotrauma
get;
private set;
}
public Rectangle WorldBorders
{
get;
private set;
}
public Vector2 Velocity
{
@@ -181,6 +187,10 @@ namespace Barotrauma
public void Update(float deltaTime)
{
var worldBorders = Borders;
worldBorders.Location += MathUtils.ToPoint(Position);
WorldBorders = worldBorders;
if (GameMain.Client != null)
{
if (memPos.Count == 0) return;
@@ -232,9 +242,6 @@ namespace Barotrauma
//if outside left or right edge of the level
if (Position.X < 0 || Position.X > Level.Loaded.Size.X)
{
Rectangle worldBorders = Borders;
worldBorders.Location += MathUtils.ToPoint(Position);
//push the sub back below the upper "barrier" of the level
if (worldBorders.Y > Level.Loaded.Size.Y)
{