diff --git a/Content.Client/Silicons/StationAi/StationAiOverlay.cs b/Content.Client/Silicons/StationAi/StationAiOverlay.cs index 62d5c13d482..ee5105d84a1 100644 --- a/Content.Client/Silicons/StationAi/StationAiOverlay.cs +++ b/Content.Client/Silicons/StationAi/StationAiOverlay.cs @@ -56,16 +56,7 @@ protected override void Draw(in OverlayDrawArgs args) var worldBounds = args.WorldBounds; var playerEnt = _player.LocalEntity; - - // Forge-change: reveal vision on the grid the AI's eye (view target) is on, not the player - // entity's grid. This lets the vision follow the eye when it's projected onto another grid - // (e.g. a remote shuttle via a Soulkiller server). For a normal AI the eye shares the - // player's grid, so this is a no-op. - var viewEnt = playerEnt; - if (_entManager.TryGetComponent(playerEnt, out EyeComponent? eyeComp) && eyeComp.Target is { } eyeTarget) - viewEnt = eyeTarget; - - _entManager.TryGetComponent(viewEnt, out TransformComponent? playerXform); + _entManager.TryGetComponent(playerEnt, out TransformComponent? playerXform); var gridUid = playerXform?.GridUid ?? EntityUid.Invalid; _entManager.TryGetComponent(gridUid, out MapGridComponent? grid); _entManager.TryGetComponent(gridUid, out BroadphaseComponent? broadphase); diff --git a/Content.Client/_Forge/Clothing/ModsuitGauntletToolsRadialMenu.xaml.cs b/Content.Client/_Forge/Clothing/ModsuitGauntletToolsRadialMenu.xaml.cs index 970933fdb11..cf9acd5b985 100644 --- a/Content.Client/_Forge/Clothing/ModsuitGauntletToolsRadialMenu.xaml.cs +++ b/Content.Client/_Forge/Clothing/ModsuitGauntletToolsRadialMenu.xaml.cs @@ -59,8 +59,6 @@ public void SetGauntlets(Entity gauntlets) if (comp.EnabledSlots.HasFlag(ModsuitGauntletEnabledSlots.Auxiliary) && !comp.AuxiliaryInHand) AddToolButton(main, ModsuitGauntletToolSlot.Auxiliary, comp.AuxiliaryProto, comp.UsePrototypeMenuIcons); - if (comp.EnabledSlots.HasFlag(ModsuitGauntletEnabledSlots.Rcd) && !comp.RcdInHand) - AddToolButton(main, ModsuitGauntletToolSlot.Rcd, comp.RcdProto, comp.UsePrototypeMenuIcons); if (comp.EnabledSlots.HasFlag(ModsuitGauntletEnabledSlots.Piping) && !comp.PipingInHand) AddToolButton(main, ModsuitGauntletToolSlot.Piping, comp.PipingProto, comp.UsePrototypeMenuIcons); @@ -133,11 +131,6 @@ private static bool TryGetActiveSlot(ModsuitGauntletToolsComponent comp, out Mod return true; } - if (comp.RcdInHand && SharedModsuitGauntletToolsSystem.IsSlotEnabled(comp, ModsuitGauntletToolSlot.Rcd)) - { - slot = ModsuitGauntletToolSlot.Rcd; - return true; - } if (comp.PipingInHand && SharedModsuitGauntletToolsSystem.IsSlotEnabled(comp, ModsuitGauntletToolSlot.Piping)) { slot = ModsuitGauntletToolSlot.Piping; diff --git a/Content.Client/_Forge/Silicons/StationAi/StationAiCustomizationBoundUserInterface.cs b/Content.Client/_Forge/Silicons/StationAi/StationAiCustomizationBoundUserInterface.cs new file mode 100644 index 00000000000..a7d05a52fa3 --- /dev/null +++ b/Content.Client/_Forge/Silicons/StationAi/StationAiCustomizationBoundUserInterface.cs @@ -0,0 +1,23 @@ +using Content.Shared._Forge.Silicons.StationAi; +using Robust.Client.UserInterface; + +namespace Content.Client._Forge.Silicons.StationAi; + +public sealed class StationAiCustomizationBoundUserInterface(EntityUid owner, Enum uiKey) : BoundUserInterface(owner, uiKey) +{ + private StationAiCustomizationWindow? _window; + + protected override void Open() + { + base.Open(); + _window = this.CreateWindow(); + _window.OnApply += (name, screen, color) => SendMessage(new StationAiCustomizationApplyMessage(name, screen, color)); + } + + protected override void UpdateState(BoundUserInterfaceState state) + { + base.UpdateState(state); + if (state is StationAiCustomizationState customization) + _window?.UpdateState(customization); + } +} diff --git a/Content.Client/_Forge/Silicons/StationAi/StationAiCustomizationWindow.xaml b/Content.Client/_Forge/Silicons/StationAi/StationAiCustomizationWindow.xaml new file mode 100644 index 00000000000..d4a68d4efac --- /dev/null +++ b/Content.Client/_Forge/Silicons/StationAi/StationAiCustomizationWindow.xaml @@ -0,0 +1,23 @@ + + +