v1.4.4.1 (Blood in the Water Update)

This commit is contained in:
Regalis11
2024-04-24 18:09:05 +03:00
parent 89b91d1c3e
commit ff1b8951a7
397 changed files with 15250 additions and 6479 deletions
@@ -148,11 +148,29 @@ namespace Barotrauma.Items.Components
Vector2 particlePos = item.WorldPosition;
float rotation = -item.body.Rotation;
if (item.body.Dir < 0.0f) { rotation += MathHelper.Pi; }
//if the position is in a sub's local coordinates, convert to world coordinates
particlePos = ConvertToWorldCoordinates(particlePos);
//if the start location is in a sub's local coordinates, convert to world coordinates
startLocation = ConvertToWorldCoordinates(startLocation);
//same for end location
endLocation = ConvertToWorldCoordinates(endLocation);
Tuple<Vector2, Vector2> tracerPoints = new Tuple<Vector2, Vector2>(startLocation, endLocation);
foreach (ParticleEmitter emitter in particleEmitters)
{
emitter.Emit(1.0f, particlePos, hullGuess: null, angle: rotation, particleRotation: rotation, colorMultiplier: emitter.Prefab.Properties.ColorMultiplier, tracerPoints: tracerPoints);
}
static Vector2 ConvertToWorldCoordinates(Vector2 position)
{
Submarine containing = Submarine.FindContainingInLocalCoordinates(position);
if (containing != null)
{
position += containing.Position;
}
return position;
}
}
partial void InitProjSpecific(ContentXElement element)