Skip to content

Commit

Permalink
Merge Upstream (Goob-Station#538)
Browse files Browse the repository at this point in the history
* Update Credits (#31409)

Co-authored-by: PJBot <[email protected]>

* Replace obsolete code in GasPortableSystem (#31407)

* Change `Resave` Permission Requirement to Host (#31397)

ChangePermissionFlagToHost

* Automatic changelog update

* Remove client state from server AirAlarmComponent (#31236)

* Remove client state from server AirAlarmComponent

Send information for all connected devices, not just the ones for the
current tab, as attempting to limit this breaks multiple users viewing
the same UI.

Fixes #12842

* Send device data as a list, rather than a dictionary

---------

Co-authored-by: Eoin Mcloughlin <[email protected]>

* Fix ChemVend jugs again (#31398)

This re-introduces the dummy entity naming code, originally introduced in #29178 and randomly removed by #30064 with no technical justification given.

Fixes #31373

* Automatic changelog update

* Fix dungeon spawn + ftl overlap (#31413)

* Fix dungeon spawn + ftl overlap

* Better fixes

* Automatic changelog update

* Fix firelockedge rotation (#31371)

save

* Automatic changelog update

* Update Oasis (#31415)

* Cameras and junk

* I forgot to clear my multitool

* Automatic changelog update

* marathon update (#31421)

* Give sec cadets jackboots instead of combat boots (#31419)

give cadets jackboots

* Automatic changelog update

* meta update (#31423)

* Adds the Head of Greytide stamp (#30189)

suggested changes from discord discussion, sprite change, add to refactored loot table

* Automatic changelog update

* Verb tweaks (#31309)

* Verb tweaks

Remove the LOS check because this is already done above in CanExamine.

* Fix outlines

* import

* Add ContainerComp (#31311)

Applies EntProtoId changes upon insertion / removal from container. Can also be useful for borgs / mechs / vehicles in future but atm I just used it for AI.

* Blueprints (#31138)

* Blueprints

* Update tables_loot.yml

* doink

* mark as required

* Automatic changelog update

* decouple ItemToggle from PowerCellDraw (#31392)

* remove ItemToggle from PowerCellDraw query

* add EntityQuery for resolves, make them all optional

* move integration to ToggleCellDraw

* add ToggleCellDraw to almost every PowerCellDraw prototype

* :trollface:

* :trollface:

* :trollface:

* let it disable on mapinit

* set update time on mapinit, make borg power logic consistent now

* :trollface:

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>

* Automatic changelog update

* Power stuff (#31314)

* Power stuff

- Add shared IsPowered
- Add shared ResolveApc
- Move PowerChangedEvent to shared for now
- Add SlimPoweredLight that actually functions how you'd expect a PoweredLight to function it id didn't have a bunch of bloat on it.

* big update

* boing

* ItemToggle + slots stuff (#31312)

* ItemToggle + slots stuff

- Add component for itemslot locks to match LockComponent (surprised this didn't exist).
- Add thing for pointlight to match itemtoggle. In future should be used for PDAs and stuff but need to fix some other stuff first.

* Also this

* grill

* Run actions on press (#31191)

I know UI generallys want to do stuff on key-up not key-down. With that being said the delay on release for these is noticeable.
e.g.
ActivateInWorld / UseInHand / any in-world interactions are on-press. This is especially noticeable if you have the same event on action + verb.

* Automatic changelog update

* Action stuff (#31305)

* Action stuff

- Cleanup some event stuff
- Avoid dirtying entity unnecessarily
- Add ActionGrant as an easy way to apply / remove actions via compregistry.

* Fix merge

* Update submodule to 231.0.0 (#31430)

* Weather fix (#30857)

* weather fix

* localize errors

* ContainerComp fix (#31434)

Forgot to push these ones on the branch.

* togglelight updates (#31435)

Missed in the green checkmark sea

* Increase (SUPER)PACMAN ramp rate/tolerance (#31403)

All PACMANs used to use the same ramping parameters, this meant a SUPERPACMAN (50 kW) took literally a 100 seconds to get up to its full output level. Ouch.

PACMAN has been raised to 5000 W/s with 1500 W tolerance, SUPERPACMAN to 7500 W/s with 2500 W tolerance

* Automatic changelog update

* Make space scanning T1 technology (#31321)

make space scanning and mass scanner t1 tech

* Automatic changelog update

* Add a bool to disable buckling on InteractHand (#30001)

* Automatic changelog update

* fix(FieldGenerators): Don't show nonsense popup (#30469)

* .

* bagel update (#31440)

* bagel update

* fixgridatmos

* qm office

* sci cam fix

* jesus christ so many routers

* remove invalids

* Fix-Resprite emote icons (#31447)

* Fix-Resprite emote icons

* change scream

* Moff cooking. Part one. (#30668)

* yml part

* guidebook

* commit

* some fixes

* a little

* change

* Automatic changelog update

* Cog update (#31458)

made disposals less bad

* Add BUI ctor tests (#31463)

5 lines of eaten iocmanager.injectdependencies led to this.

* Predict EmitSoundOnUIOpen (#31464)

* Predict EmitSoundOnUIOpen

BUI prediction led to this moment.

* unforky

* Bots now make sound when they speak (#31471)

fixes 31454

* Automatic changelog update

* Change the science radio channel color (#31319)

* Change the science radio channel color

* This one looks better

* Automatic changelog update

* Move OnGhostAttempt to GhostSystem (#31445)

* Move OnGhostAttempt to GhostSystem

* Remove unused dependencies and sort them

* Fix energy sword visuals (#31478)

* Automatic changelog update

* Replace obsolete code in shuttle systems. (#31408)

* Format DockingSystem.Shuttle

* arrivals system

* docking system

* shuttle console system

* emergency shuttle system

* shuttle system

* thruster system

* Fix compile error

---------

Co-authored-by: Pieter-Jan Briers <[email protected]>

* Replaces small fans on most shuttles with directional fans. (#31495)

* Automatic changelog update

* Replace obsolete functions in NPC systems (#31448)

* Make guidebook remember where you left off (#31375)

* Guidebook tracks last read entry

* Persistent guidebook fixes

* Persistent guidebook requested changes

* Update Content.Client/UserInterface/Systems/Guidebook/GuidebookUIController.cs

---------

Co-authored-by: Pieter-Jan Briers <[email protected]>

* Automatic changelog update

* Remove double-iteration from the mime wall code (#31420)

* Remove double-iteration from the mime wall code

* Update

* Update

* fix method OnEntityEnter in DamageContactsSystem (#31494)

fix

Co-authored-by: Dimastra <[email protected]>

* Automatic changelog update

* Make Gas Miners indestructable, anchorable, and pullable. (#31370)

* Make miner indestructable, and pullable.

* Miners can't be unanchored. Only anchored.

---------

Co-authored-by: JIPDawg <[email protected]>

* Automatic changelog update

* bagel update (#31502)

* Minor fixes to character profile editor save/reset buttons (#31505)

Merge SetDirty() with preview reload

People were forgetting to SetDirty() when changing a property; move SetDirty()
into preview reloading, since if the preview is being reloaded, some property
has definitely changed anyway.

Co-authored-by: Eoin Mcloughlin <[email protected]>

* Centcom & FTLDestination cleanup (#30226)

* centcomm name and ftlcomp

* networking microopstimization

* go sleep.

* map names and arrivals

* Fix swapped around Safety Moth poster graphics (#31507)

* Automatic changelog update

* Mark explosives as a contraband (#31508)

* Automatic changelog update

* Mark the syndicate raid helmet as a Syndicate contraband (#31512)

* Automatic changelog update

* Add title to multitool door-access-configuration window (#31504)

Fixes #29923.

Co-authored-by: Eoin Mcloughlin <[email protected]>

* Restrict the explorer gas mask to cargo (#31514)

* Automatic changelog update

* Fix stray pixel in officer beersky barsign (#31517)

* Scale text in admin player overlay (#31503)

* Scale text in admin player overlay

Fixes #30040

* Feedback from PR - get UI scale through root window

---------

Co-authored-by: Eoin Mcloughlin <[email protected]>

* New Health Analyzer UI (#30834)

* WIP: first prototype

* Change text slightly

* Allow names to wrap

* Add label for the scan mode

* Remove ugly text

* Readd bleeding message

* Update code

* Allow for the Health Analyzer UI to grow vertically

* Automatic changelog update

* Disable Arrivals message for Cryosleep (#30888)

* Disable arrivals message for cryosleep late arrivals

* Provide silent to PlayerSpawnCompleteEvent

* Fix typo

* Move message to event and into arrivals system

* Automatic changelog update

* Remove glibc from devshell (#28842)

* Automated whitelists (#23985)

* Beginnings of making the breadmemes jobs easier

* stuff

* stuff pt. 2

* Stuff pt.3

* Stuff I forgot last time

* Basic whitelist

Only people that are added to the whitelist with the addwhitelist command will be able to join. I call this the "legacy" whitelist

* Remove always deny condition in favor of just breaking if playtime check fails

* Change default whitelist

Default whitelist is now the "legacy" whitelist.

* localization

* Admin check

* minor spelling change

* Fix build

* Whitelist message

* Fix vars not being datafield and spelling mistakes

* Minor spelling mistake

* Change config for salamander

* Reviews and stuff

* Add summaries

* Fix whitelists

* Forgot to add a datafield

* Fixing stuff I guess

* Reuse admin remarks to reduce load when connecting.

* Update log messages to be verbose instead of debug

* Reviews

* whoops

* Explain a bit more how whitelist checking works

* Apply CE's review

* Append Membership to Blacklist and Whitelist conditions

* Fix review comments

* Uncapitalize playerConnectionWhitelist, add to ignored client prototypes

* Make note count field work

* Fix cvar for thingy

---------

Co-authored-by: Pieter-Jan Briers <[email protected]>

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: PJBot <[email protected]>
Co-authored-by: Mervill <[email protected]>
Co-authored-by: PursuitInAshes <[email protected]>
Co-authored-by: eoineoineoin <[email protected]>
Co-authored-by: Eoin Mcloughlin <[email protected]>
Co-authored-by: Pieter-Jan Briers <[email protected]>
Co-authored-by: metalgearsloth <[email protected]>
Co-authored-by: themias <[email protected]>
Co-authored-by: IProduceWidgets <[email protected]>
Co-authored-by: Emisse <[email protected]>
Co-authored-by: PopGamer46 <[email protected]>
Co-authored-by: ArtisticRoomba <[email protected]>
Co-authored-by: Nemanja <[email protected]>
Co-authored-by: deltanedas <[email protected]>
Co-authored-by: Ed <[email protected]>
Co-authored-by: Alzore <[email protected]>
Co-authored-by: ShadowCommander <[email protected]>
Co-authored-by: Brandon Hu <[email protected]>
Co-authored-by: lzk <[email protected]>
Co-authored-by: Spessmann <[email protected]>
Co-authored-by: Moomoobeef <[email protected]>
Co-authored-by: Winkarst <[email protected]>
Co-authored-by: slarticodefast <[email protected]>
Co-authored-by: QueerNB <[email protected]>
Co-authored-by: 12rabbits <[email protected]>
Co-authored-by: Pieter-Jan Briers <[email protected]>
Co-authored-by: Dimastra <[email protected]>
Co-authored-by: Dimastra <[email protected]>
Co-authored-by: JIPDawg <[email protected]>
Co-authored-by: JIPDawg <[email protected]>
Co-authored-by: Saphire Lattice <[email protected]>
Co-authored-by: Thomas <[email protected]>
Co-authored-by: stellar-novas <[email protected]>
Co-authored-by: Simon <[email protected]>
  • Loading branch information
1 parent 1ca088f commit dea85a3
Show file tree
Hide file tree
Showing 320 changed files with 17,073 additions and 6,495 deletions.
6 changes: 0 additions & 6 deletions Content.Client/Actions/ActionsSystem.cs
Original file line number Diff line number Diff line change
Expand Up @@ -259,12 +259,6 @@ public void TriggerAction(EntityUid actionId, BaseActionComponent action)

if (action.ClientExclusive)
{
if (instantAction.Event != null)
{
instantAction.Event.Performer = user;
instantAction.Event.Action = actionId;
}

PerformAction(user, actions, actionId, instantAction, instantAction.Event, GameTiming.CurTime);
}
else
Expand Down
20 changes: 12 additions & 8 deletions Content.Client/Administration/AdminNameOverlay.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@
using Content.Client.Administration.Systems;
using Robust.Client.Graphics;
using Robust.Client.ResourceManagement;
using Robust.Client.UserInterface;
using Robust.Shared;
using Robust.Shared.Enums;
using Robust.Shared.GameObjects;
using Robust.Shared.IoC;
using Robust.Shared.Maths;
using Robust.Shared.Configuration;

namespace Content.Client.Administration;

Expand All @@ -15,14 +15,16 @@ internal sealed class AdminNameOverlay : Overlay
private readonly IEntityManager _entityManager;
private readonly IEyeManager _eyeManager;
private readonly EntityLookupSystem _entityLookup;
private readonly IUserInterfaceManager _userInterfaceManager;
private readonly Font _font;

public AdminNameOverlay(AdminSystem system, IEntityManager entityManager, IEyeManager eyeManager, IResourceCache resourceCache, EntityLookupSystem entityLookup)
public AdminNameOverlay(AdminSystem system, IEntityManager entityManager, IEyeManager eyeManager, IResourceCache resourceCache, EntityLookupSystem entityLookup, IUserInterfaceManager userInterfaceManager)
{
_system = system;
_entityManager = entityManager;
_eyeManager = eyeManager;
_entityLookup = entityLookup;
_userInterfaceManager = userInterfaceManager;
ZIndex = 200;
_font = new VectorFont(resourceCache.GetResource<FontResource>("/Fonts/NotoSans/NotoSans-Regular.ttf"), 10);
}
Expand Down Expand Up @@ -57,16 +59,18 @@ protected override void Draw(in OverlayDrawArgs args)
continue;
}

var lineoffset = new Vector2(0f, 11f);
var uiScale = _userInterfaceManager.RootControl.UIScale;
var lineoffset = new Vector2(0f, 11f) * uiScale;
var screenCoordinates = _eyeManager.WorldToScreen(aabb.Center +
new Angle(-_eyeManager.CurrentEye.Rotation).RotateVec(
aabb.TopRight - aabb.Center)) + new Vector2(1f, 7f);
if (playerInfo.Antag)
{
args.ScreenHandle.DrawString(_font, screenCoordinates + (lineoffset * 2), "ANTAG", Color.OrangeRed);
args.ScreenHandle.DrawString(_font, screenCoordinates + (lineoffset * 2), "ANTAG", uiScale, Color.OrangeRed);
;
}
args.ScreenHandle.DrawString(_font, screenCoordinates+lineoffset, playerInfo.Username, playerInfo.Connected ? Color.Yellow : Color.White);
args.ScreenHandle.DrawString(_font, screenCoordinates, playerInfo.CharacterName, playerInfo.Connected ? Color.Aquamarine : Color.White);
args.ScreenHandle.DrawString(_font, screenCoordinates+lineoffset, playerInfo.Username, uiScale, playerInfo.Connected ? Color.Yellow : Color.White);
args.ScreenHandle.DrawString(_font, screenCoordinates, playerInfo.CharacterName, uiScale, playerInfo.Connected ? Color.Aquamarine : Color.White);
}
}
}
5 changes: 4 additions & 1 deletion Content.Client/Administration/Systems/AdminSystem.Overlay.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
using Content.Client.Administration.Managers;
using Robust.Client.Graphics;
using Robust.Client.ResourceManagement;
using Robust.Client.UserInterface;
using Robust.Shared.Configuration;

namespace Content.Client.Administration.Systems
{
Expand All @@ -11,6 +13,7 @@ public sealed partial class AdminSystem
[Dependency] private readonly IClientAdminManager _adminManager = default!;
[Dependency] private readonly IEyeManager _eyeManager = default!;
[Dependency] private readonly EntityLookupSystem _entityLookup = default!;
[Dependency] private readonly IUserInterfaceManager _userInterfaceManager = default!;

private AdminNameOverlay _adminNameOverlay = default!;

Expand All @@ -19,7 +22,7 @@ public sealed partial class AdminSystem

private void InitializeOverlay()
{
_adminNameOverlay = new AdminNameOverlay(this, EntityManager, _eyeManager, _resourceCache, _entityLookup);
_adminNameOverlay = new AdminNameOverlay(this, EntityManager, _eyeManager, _resourceCache, _entityLookup, _userInterfaceManager);
_adminManager.AdminStatusUpdated += OnAdminStatusUpdated;
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using Robust.Client.AutoGenerated;
using Robust.Client.UserInterface.Controls;
using Robust.Client.UserInterface.CustomControls;
using Robust.Client.UserInterface.XAML;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,8 @@
using Robust.Client.UserInterface.Controls;
using Robust.Client.UserInterface.XAML;
using Robust.Shared.Network;
using Robust.Shared.Utility;
using Robust.Shared.Timing;
using Robust.Shared.Configuration;
using Robust.Shared.Utility;

namespace Content.Client.Administration.UI.Bwoink
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using System.Numerics;
using Content.Client.UserInterface.Controls;
using Content.Shared.Roles;
using Robust.Client.AutoGenerated;
using Robust.Client.Console;
Expand Down
6 changes: 0 additions & 6 deletions Content.Client/Atmos/Monitor/UI/AirAlarmBoundUserInterface.cs
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@ protected override void Open()
_window.AirAlarmModeChanged += OnAirAlarmModeChanged;
_window.AutoModeChanged += OnAutoModeChanged;
_window.ResyncAllRequested += ResyncAllDevices;
_window.AirAlarmTabChange += OnTabChanged;
}

private void ResyncAllDevices()
Expand Down Expand Up @@ -63,11 +62,6 @@ private void OnThresholdChanged(string address, AtmosMonitorThresholdType type,
SendMessage(new AirAlarmUpdateAlarmThresholdMessage(address, type, threshold, gas));
}

private void OnTabChanged(AirAlarmTab tab)
{
SendMessage(new AirAlarmTabSetMessage(tab));
}

protected override void UpdateState(BoundUserInterfaceState state)
{
base.UpdateState(state);
Expand Down
8 changes: 0 additions & 8 deletions Content.Client/Atmos/Monitor/UI/AirAlarmWindow.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ public sealed partial class AirAlarmWindow : FancyWindow
public event Action<AirAlarmMode>? AirAlarmModeChanged;
public event Action<bool>? AutoModeChanged;
public event Action? ResyncAllRequested;
public event Action<AirAlarmTab>? AirAlarmTabChange;

private RichTextLabel _address => CDeviceAddress;
private RichTextLabel _deviceTotal => CDeviceTotal;
Expand Down Expand Up @@ -80,11 +79,6 @@ public AirAlarmWindow()
_tabContainer.SetTabTitle(1, Loc.GetString("air-alarm-ui-window-tab-scrubbers"));
_tabContainer.SetTabTitle(2, Loc.GetString("air-alarm-ui-window-tab-sensors"));

_tabContainer.OnTabChanged += idx =>
{
AirAlarmTabChange!((AirAlarmTab) idx);
};

_resyncDevices.OnPressed += _ =>
{
_ventDevices.RemoveAllChildren();
Expand Down Expand Up @@ -117,8 +111,6 @@ public void UpdateState(AirAlarmUIState state)
{
UpdateDeviceData(addr, dev);
}

_tabContainer.CurrentTab = (int) state.Tab;
}

public void UpdateModeSelector(AirAlarmMode mode)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using Content.Shared.CrewManifest;
using Content.Client.CrewManifest.UI;
using Content.Shared.CrewManifest;
using Robust.Client.AutoGenerated;
using Robust.Client.UserInterface.Controls;
using Robust.Client.UserInterface.XAML;
Expand Down
1 change: 1 addition & 0 deletions Content.Client/Commands/SetMenuVisibilityCommand.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using Content.Client.Verbs;
using Content.Shared.Verbs;
using JetBrains.Annotations;
using Robust.Shared.Console;

Expand Down
1 change: 1 addition & 0 deletions Content.Client/Construction/UI/FlatpackCreatorMenu.xaml.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
using System.Linq;
using Content.Client.Materials;
using Content.Client.Materials.UI;
using Content.Client.Message;
using Content.Client.UserInterface.Controls;
using Content.Shared.Construction.Components;
Expand Down
19 changes: 16 additions & 3 deletions Content.Client/ContextMenu/UI/EntityMenuUIController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
using Content.Shared.Examine;
using Content.Shared.IdentityManagement;
using Content.Shared.Input;
using Content.Shared.Verbs;
using Robust.Client.GameObjects;
using Robust.Client.Graphics;
using Robust.Client.Input;
Expand Down Expand Up @@ -194,8 +195,20 @@ public override void FrameUpdate(FrameEventArgs args)
return;

// Do we need to do in-range unOccluded checks?
var ignoreFov = !_eyeManager.CurrentEye.DrawFov ||
(_verbSystem.Visibility & MenuVisibility.NoFov) == MenuVisibility.NoFov;
var visibility = _verbSystem.Visibility;

if (!_eyeManager.CurrentEye.DrawFov)
{
visibility &= ~MenuVisibility.NoFov;
}

var ev = new MenuVisibilityEvent()
{
Visibility = visibility,
};

_entityManager.EventBus.RaiseLocalEvent(player, ref ev);
visibility = ev.Visibility;

_entityManager.TryGetComponent(player, out ExaminerComponent? examiner);
var xformQuery = _entityManager.GetEntityQuery<TransformComponent>();
Expand All @@ -209,7 +222,7 @@ public override void FrameUpdate(FrameEventArgs args)
continue;
}

if (ignoreFov)
if ((visibility & MenuVisibility.NoFov) == MenuVisibility.NoFov)
continue;

var pos = new MapCoordinates(_xform.GetWorldPosition(xform, xformQuery), xform.MapID);
Expand Down
1 change: 1 addition & 0 deletions Content.Client/CrewManifest/CrewManifestUi.xaml.cs
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
using Content.Client.CrewManifest.UI;
using Content.Shared.CrewManifest;
using Robust.Client.AutoGenerated;
using Robust.Client.UserInterface.CustomControls;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
<controls:FancyWindow xmlns="https://spacestation14.io"
xmlns:ui="clr-namespace:Content.Client.UserInterface"
xmlns:controls="clr-namespace:Content.Client.UserInterface.Controls">
xmlns:controls="clr-namespace:Content.Client.UserInterface.Controls"
Title="{Loc door-electronics-configuration-title}">
<Control Name="AccessLevelControlContainer" />

</controls:FancyWindow>
1 change: 1 addition & 0 deletions Content.Client/Entry/EntryPoint.cs
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,7 @@ public override void Init()
_prototypeManager.RegisterIgnore("lobbyBackground");
_prototypeManager.RegisterIgnore("gamePreset");
_prototypeManager.RegisterIgnore("noiseChannel");
_prototypeManager.RegisterIgnore("playerConnectionWhitelist");
_prototypeManager.RegisterIgnore("spaceBiome");
_prototypeManager.RegisterIgnore("worldgenConfig");
_prototypeManager.RegisterIgnore("gameRule");
Expand Down
4 changes: 4 additions & 0 deletions Content.Client/Guidebook/Controls/GuidebookWindow.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@ public sealed partial class GuidebookWindow : FancyWindow, ILinkClickHandler

private readonly ISawmill _sawmill;

public ProtoId<GuideEntryPrototype> LastEntry;

public GuidebookWindow()
{
RobustXamlLoader.Load(this);
Expand Down Expand Up @@ -90,6 +92,8 @@ private void ShowGuide(GuideEntry entry)

_sawmill.Error($"Failed to parse contents of guide document {entry.Id}.");
}

LastEntry = entry.Id;
}

public void UpdateGuides(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ public HealthAnalyzerBoundUserInterface(EntityUid owner, Enum uiKey) : base(owne
protected override void Open()
{
base.Open();

_window = this.CreateWindow<HealthAnalyzerWindow>();

_window.Title = EntMan.GetComponent<MetaDataComponent>(Owner).EntityName;
Expand Down
70 changes: 43 additions & 27 deletions Content.Client/HealthAnalyzer/UI/HealthAnalyzerWindow.xaml
Original file line number Diff line number Diff line change
@@ -1,48 +1,64 @@
<controls:FancyWindow
<controls:FancyWindow
xmlns="https://spacestation14.io"
xmlns:controls="clr-namespace:Content.Client.UserInterface.Controls"
SetSize="250 100">
MaxHeight="525"
MinWidth="300">
<ScrollContainer
Margin="5 5 5 5"
ReturnMeasure="True"
VerticalExpand="True">
<BoxContainer
Name="RootContainer"
VerticalExpand="True"
Orientation="Vertical">
<Label
Name="NoPatientDataText"
Text="{Loc health-analyzer-window-no-patient-data-text}" />

<BoxContainer
Name="PatientDataContainer"
Orientation="Vertical"
Margin="0 0 5 10">
<BoxContainer Name="ScanModePanel" HorizontalExpand="True" Visible="False" Margin="0 5 0 0">
<Label
Name="ScanMode"
Align="Left"
Text="{Loc health-analyzer-window-scan-mode-text}"/>
<Label
Name="ScanModeText"
Align="Right"
HorizontalExpand="True"/>
Margin="0 0 0 5"
Orientation="Vertical">
<BoxContainer Orientation="Horizontal" Margin="0 0 0 5">
<SpriteView OverrideDirection="South" Scale="2 2" Name="SpriteView" Access="Public" SetSize="64 64" />
<BoxContainer Margin="5 0 0 0" Orientation="Vertical" VerticalAlignment="Top">
<RichTextLabel Name="NameLabel" SetWidth="150" />
<Label Name="SpeciesLabel" VerticalAlignment="Top" StyleClasses="LabelSubText" />
</BoxContainer>
<Label Margin="0 0 5 0" HorizontalExpand="True" HorizontalAlignment="Right" VerticalExpand="True"
VerticalAlignment="Top" Name="ScanModeLabel"
Text="{Loc 'health-analyzer-window-entity-unknown-text'}" />
</BoxContainer>
<Label
Name="PatientName"/>
<Label
Name="Temperature"
Margin="0 5 0 0"/>
<Label
Name="BloodLevel"
Margin="0 5 0 0"/>
<Label
Name="Bleeding"
Margin="0 5 0 0"/>
<Label
Name="patientDamageAmount"
Margin="0 15 0 0"/>

<PanelContainer StyleClasses="LowDivider" />

<GridContainer Margin="0 5 0 0" Columns="2">
<Label Text="{Loc 'health-analyzer-window-entity-status-text'}" />
<Label Name="StatusLabel" />
<Label Text="{Loc 'health-analyzer-window-entity-temperature-text'}" />
<Label Name="TemperatureLabel" />
<Label Text="{Loc 'health-analyzer-window-entity-blood-level-text'}" />
<Label Name="BloodLabel" />
<Label Text="{Loc 'health-analyzer-window-entity-damage-total-text'}" />
<Label Name="DamageLabel" />
</GridContainer>
</BoxContainer>

<PanelContainer Name="AlertsDivider" Visible="False" StyleClasses="LowDivider" />

<BoxContainer Name="AlertsContainer" Visible="False" Margin="0 5" Orientation="Horizontal"
HorizontalExpand="True" HorizontalAlignment="Center">

</BoxContainer>

<PanelContainer StyleClasses="LowDivider" />

<BoxContainer
Name="GroupsContainer"
Margin="0 5 0 5"
Orientation="Vertical">
</BoxContainer>

</BoxContainer>
</ScrollContainer>
</controls:FancyWindow>
Loading

0 comments on commit dea85a3

Please sign in to comment.