More gib particles when characters get crushed by pressure

This commit is contained in:
Joonas Rikkonen
2018-01-25 13:56:39 +02:00
parent 09e4687cd0
commit e6e132aa1e
2 changed files with 16 additions and 4 deletions

View File

@@ -373,6 +373,19 @@ namespace Barotrauma
GameMain.ParticleManager.CreateParticle("bubbles",
ConvertUnits.ToDisplayUnits(centerOfMass) + Rand.Vector(5.0f),
new Vector2(Rand.Range(-50f, 50f), Rand.Range(-100f, 50f)));
GameMain.ParticleManager.CreateParticle("gib",
WorldPosition + Rand.Vector(Rand.Range(0.0f, 50.0f)),
Rand.Range(0.0f, MathHelper.TwoPi),
Rand.Range(200.0f, 700.0f), null);
}
for (int i = 0; i < 30; i++)
{
GameMain.ParticleManager.CreateParticle("heavygib",
WorldPosition + Rand.Vector(Rand.Range(0.0f, 50.0f)),
Rand.Range(0.0f, MathHelper.TwoPi),
Rand.Range(50.0f, 500.0f), null);
}
}
}

View File

@@ -1874,7 +1874,7 @@ namespace Barotrauma
Health = minHealth;
BreakJoints();
Kill(CauseOfDeath.Pressure, isNetworkMessage);
}
@@ -1888,8 +1888,7 @@ namespace Barotrauma
Vector2 diff = centerOfMass - limb.SimPosition;
if (diff == Vector2.Zero) continue;
limb.body.ApplyLinearImpulse(diff * 10.0f);
// limb.Damage = 100.0f;
limb.body.ApplyLinearImpulse(diff * 50.0f);
}
ImplodeFX();
@@ -1901,7 +1900,7 @@ namespace Barotrauma
}
partial void ImplodeFX();
public void Kill(CauseOfDeath causeOfDeath, bool isNetworkMessage = false)
{
if (isDead) return;