Fix cross-map explosion overlay bug. (#13855)
This commit is contained in:
@@ -35,6 +35,9 @@ public sealed class ExplosionOverlay : Overlay
|
|||||||
|
|
||||||
foreach (var (comp, appearance) in _entMan.EntityQuery<ExplosionVisualsComponent, AppearanceComponent>(true))
|
foreach (var (comp, appearance) in _entMan.EntityQuery<ExplosionVisualsComponent, AppearanceComponent>(true))
|
||||||
{
|
{
|
||||||
|
if (comp.Epicenter.MapId != args.MapId)
|
||||||
|
continue;
|
||||||
|
|
||||||
if (!appearance.TryGetData(ExplosionAppearanceData.Progress, out int index))
|
if (!appearance.TryGetData(ExplosionAppearanceData.Progress, out int index))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
|||||||
@@ -7,12 +7,14 @@ namespace Content.Client.Explosion;
|
|||||||
[ComponentReference(typeof(SharedExplosionVisualsComponent))]
|
[ComponentReference(typeof(SharedExplosionVisualsComponent))]
|
||||||
public sealed class ExplosionVisualsComponent : SharedExplosionVisualsComponent
|
public sealed class ExplosionVisualsComponent : SharedExplosionVisualsComponent
|
||||||
{
|
{
|
||||||
public EntityUid LightEntity;
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// How long have we been drawing this explosion, starting from the time the explosion was fully drawn.
|
/// Uid of the client-side point light entity for this explosion.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public float Lifetime;
|
public EntityUid LightEntity;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// How intense an explosion needs to be at a given tile in order to progress to the next fire-intensity RSI state. See also <see cref="FireFrames"/>
|
||||||
|
/// </summary>
|
||||||
public float IntensityPerState;
|
public float IntensityPerState;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
Reference in New Issue
Block a user