* Always display item status panel fully Initial feedback from the UI changes seems to be that a lot of people go "why is there empty space" so let's fix that. * Fix item status middle hand being on the wrong side I think I switched this around when fixing the left/right being inverted in the UI code. * Minor status panel UI tweaks Bottom-align contents now that the panel itself doesn't dynamically expand, prevent weird gaps. Clip contents for panel * Fix clipping on implanters and network configurators. Made them take less space. For implanters the name has to be cut off, which I did by adding a new ClipControl to achieve that in rich text. * Update visibility of item status panels based on whether you have hands at all. This avoids UI for borgs looking silly. Added a new "HandUILocation" enum that doesn't have middle hands to avoid confusion in UI code. * Use BulletRender for laser guns too. Provides all the benefits like fixing layout overflow and allowing multi-line stuff. Looks great now. This involved generalizing BulletRender a bit so it can be used for not-just-bullets. * Fix geiger word wrapping if you're really fucked
29 lines
779 B
C#
29 lines
779 B
C#
using Content.Client.UserInterface.Controls;
|
|
using Content.Shared.Hands.Components;
|
|
|
|
namespace Content.Client.UserInterface.Systems.Hands.Controls;
|
|
|
|
public sealed class HandButton : SlotControl
|
|
{
|
|
public HandLocation HandLocation { get; }
|
|
|
|
public HandButton(string handName, HandLocation handLocation)
|
|
{
|
|
HandLocation = handLocation;
|
|
Name = "hand_" + handName;
|
|
SlotName = handName;
|
|
SetBackground(handLocation);
|
|
}
|
|
|
|
private void SetBackground(HandLocation handLoc)
|
|
{
|
|
ButtonTexturePath = handLoc switch
|
|
{
|
|
HandLocation.Left => "Slots/hand_l",
|
|
HandLocation.Middle => "Slots/hand_m",
|
|
HandLocation.Right => "Slots/hand_r",
|
|
_ => ButtonTexturePath
|
|
};
|
|
}
|
|
}
|