Try fix random explosion test failures (#23158)
This commit is contained in:
@@ -3,6 +3,7 @@ using Robust.Client.Graphics;
|
||||
using Robust.Client.ResourceManagement;
|
||||
using Robust.Shared.GameStates;
|
||||
using Robust.Shared.Graphics.RSI;
|
||||
using Robust.Shared.Map;
|
||||
using Robust.Shared.Prototypes;
|
||||
using Robust.Shared.Utility;
|
||||
|
||||
@@ -18,6 +19,7 @@ public sealed class ExplosionOverlaySystem : EntitySystem
|
||||
[Dependency] private readonly IResourceCache _resCache = default!;
|
||||
[Dependency] private readonly IOverlayManager _overlayMan = default!;
|
||||
[Dependency] private readonly SharedPointLightSystem _lights = default!;
|
||||
[Dependency] private readonly IMapManager _mapMan = default!;
|
||||
|
||||
public override void Initialize()
|
||||
{
|
||||
@@ -65,6 +67,9 @@ public sealed class ExplosionOverlaySystem : EntitySystem
|
||||
return;
|
||||
}
|
||||
|
||||
// Map may have been deleted.
|
||||
if (_mapMan.MapExists(component.Epicenter.MapId))
|
||||
{
|
||||
// spawn in a client-side light source at the epicenter
|
||||
var lightEntity = Spawn("ExplosionLight", component.Epicenter);
|
||||
var light = _lights.EnsureLight(lightEntity);
|
||||
@@ -72,8 +77,10 @@ public sealed class ExplosionOverlaySystem : EntitySystem
|
||||
_lights.SetRadius(lightEntity, component.Intensity.Count, light);
|
||||
_lights.SetEnergy(lightEntity, component.Intensity.Count, light);
|
||||
_lights.SetColor(lightEntity, type.LightColor, light);
|
||||
|
||||
textures.LightEntity = lightEntity;
|
||||
}
|
||||
|
||||
|
||||
textures.FireColor = type.FireColor;
|
||||
textures.IntensityPerState = type.IntensityPerState;
|
||||
|
||||
|
||||
@@ -67,7 +67,7 @@ public sealed class ModularGrenadeTests : InteractionTest
|
||||
}
|
||||
|
||||
// Grenade has exploded.
|
||||
await RunTicks(5);
|
||||
await RunTicks(30);
|
||||
AssertDeleted();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user