Fix client-side replay error (#27332)
This commit is contained in:
@@ -198,6 +198,13 @@ public sealed partial class ReplaySpectatorSystem
|
||||
if (args.Transform.MapUid != null || args.OldMapId == MapId.Nullspace)
|
||||
return;
|
||||
|
||||
if (_spectatorData != null)
|
||||
{
|
||||
// Currently scrubbing/setting the replay tick
|
||||
// the observer will get respawned once the state was applied
|
||||
return;
|
||||
}
|
||||
|
||||
// The entity being spectated from was moved to null-space.
|
||||
// This was probably because they were spectating some entity in a client-side replay that left PVS range.
|
||||
// Simple respawn the ghost.
|
||||
|
||||
@@ -117,8 +117,7 @@ namespace Content.Client.UserInterface.Systems.Alerts.Controls
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
base.Dispose(disposing);
|
||||
|
||||
_entityManager.DeleteEntity(_spriteViewEntity);
|
||||
_entityManager.QueueDeleteEntity(_spriteViewEntity);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -97,7 +97,8 @@ public sealed partial class AlertsUI : UIWidget
|
||||
}
|
||||
else
|
||||
{
|
||||
if (existingAlertControl != null) AlertContainer.Children.Remove(existingAlertControl);
|
||||
if (existingAlertControl != null)
|
||||
AlertContainer.Children.Remove(existingAlertControl);
|
||||
|
||||
// this is a new alert + alert key or just a different alert with the same
|
||||
// key, create the control and add it in the appropriate order
|
||||
|
||||
Reference in New Issue
Block a user