Fix explosion grid alignment for static grids (#40193)
This commit is contained in:
@@ -275,7 +275,7 @@ public sealed partial class ExplosionSystem
|
||||
radius = Math.Min(radius, MaxIterations / 4);
|
||||
|
||||
EntityUid? referenceGrid = null;
|
||||
float mass = 0;
|
||||
var mass = float.MinValue;
|
||||
|
||||
// First attempt to find a grid that is relatively close to the explosion's center. Instead of looking in a
|
||||
// diameter x diameter sized box, use a smaller box with radius sized sides:
|
||||
@@ -285,7 +285,7 @@ public sealed partial class ExplosionSystem
|
||||
_mapManager.FindGridsIntersecting(epicenter.MapId, box, ref _grids);
|
||||
foreach (var grid in _grids)
|
||||
{
|
||||
if (TryComp(grid.Owner, out PhysicsComponent? physics) && physics.Mass > mass)
|
||||
if (TryComp(grid.Owner, out PhysicsComponent? physics) && physics.FixturesMass > mass)
|
||||
{
|
||||
mass = physics.Mass;
|
||||
referenceGrid = grid.Owner;
|
||||
@@ -315,7 +315,7 @@ public sealed partial class ExplosionSystem
|
||||
{
|
||||
if (TryComp(grid.Owner, out PhysicsComponent? physics) && physics.Mass > mass)
|
||||
{
|
||||
mass = physics.Mass;
|
||||
mass = physics.FixturesMass;
|
||||
referenceGrid = grid.Owner;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user