Fix ghost warps (#20008)
This commit is contained in:
@@ -11,16 +11,16 @@ namespace Content.Client.UserInterface.Systems.Ghost.Controls
|
||||
[GenerateTypedNameReferences]
|
||||
public sealed partial class GhostTargetWindow : DefaultWindow
|
||||
{
|
||||
private List<(string, EntityUid)> _warps = new();
|
||||
private List<(string, NetEntity)> _warps = new();
|
||||
|
||||
public event Action<EntityUid>? WarpClicked;
|
||||
public event Action<NetEntity>? WarpClicked;
|
||||
|
||||
public GhostTargetWindow()
|
||||
{
|
||||
RobustXamlLoader.Load(this);
|
||||
}
|
||||
|
||||
public void UpdateWarps(IEnumerable<GhostWarp> warps, IEntityManager entManager)
|
||||
public void UpdateWarps(IEnumerable<GhostWarp> warps)
|
||||
{
|
||||
// Server COULD send these sorted but how about we just use the client to do it instead
|
||||
_warps = warps
|
||||
@@ -33,7 +33,7 @@ namespace Content.Client.UserInterface.Systems.Ghost.Controls
|
||||
? Loc.GetString("ghost-target-window-current-button", ("name", w.DisplayName))
|
||||
: w.DisplayName;
|
||||
|
||||
return (name, entManager.GetEntity(w.Entity));
|
||||
return (name, w.Entity);
|
||||
})
|
||||
.ToList();
|
||||
}
|
||||
|
||||
@@ -96,7 +96,7 @@ public sealed class GhostUIController : UIController, IOnSystemChanged<GhostSyst
|
||||
if (Gui?.TargetWindow is not { } window)
|
||||
return;
|
||||
|
||||
window.UpdateWarps(msg.Warps, EntityManager);
|
||||
window.UpdateWarps(msg.Warps);
|
||||
window.Populate();
|
||||
}
|
||||
|
||||
@@ -105,9 +105,9 @@ public sealed class GhostUIController : UIController, IOnSystemChanged<GhostSyst
|
||||
UpdateGui();
|
||||
}
|
||||
|
||||
private void OnWarpClicked(EntityUid player)
|
||||
private void OnWarpClicked(NetEntity player)
|
||||
{
|
||||
var msg = new GhostWarpToTargetRequestEvent(EntityManager.GetNetEntity(player));
|
||||
var msg = new GhostWarpToTargetRequestEvent(player);
|
||||
_net.SendSystemNetworkMessage(msg);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user