Try fix random explosion test failures (#23158)

This commit is contained in:
Leon Friedrich
2023-12-28 22:23:41 -05:00
committed by GitHub
parent 4bc97c9594
commit c2c76c2035
2 changed files with 15 additions and 8 deletions

View File

@@ -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,15 +67,20 @@ public sealed class ExplosionOverlaySystem : EntitySystem
return;
}
// spawn in a client-side light source at the epicenter
var lightEntity = Spawn("ExplosionLight", component.Epicenter);
var light = _lights.EnsureLight(lightEntity);
// 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);
_lights.SetRadius(lightEntity, component.Intensity.Count, light);
_lights.SetEnergy(lightEntity, component.Intensity.Count, light);
_lights.SetColor(lightEntity, type.LightColor, light);
textures.LightEntity = lightEntity;
}
_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;

View File

@@ -67,7 +67,7 @@ public sealed class ModularGrenadeTests : InteractionTest
}
// Grenade has exploded.
await RunTicks(5);
await RunTicks(30);
AssertDeleted();
}
}