Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Floof Station Release V9 #416

Merged
merged 127 commits into from
Dec 15, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
127 commits
Select commit Hold shift + click to select a range
12e5363
Update Credits (#1179)
github-actions[bot] Nov 7, 2024
ffdaa84
Updates Health Analyzer UI (#1183)
gluesniffler Nov 7, 2024
779583d
Automatic Changelog Update (#1183)
SimpleStation14 Nov 7, 2024
fa87a39
Nerf The Shit Out Of Familiars (#1184)
VMSolidus Nov 8, 2024
9e85b73
Automatic Changelog Update (#1184)
SimpleStation14 Nov 8, 2024
3209838
Show Language Names In Chat (#1165)
VMSolidus Nov 8, 2024
ff43313
Automatic Changelog Update (#1165)
SimpleStation14 Nov 8, 2024
8116581
Minor Fixes on Rad and Gax (#1178)
Ichaie Nov 8, 2024
ae204a8
Port Cool Punpun (#1157)
DEATHB4DEFEAT Nov 8, 2024
d521d46
Automatic Changelog Update (#1178)
SimpleStation14 Nov 8, 2024
e7d40d1
Traits V2 (#1182)
VMSolidus Nov 8, 2024
9b8ad31
Automatic Changelog Update (#1182)
SimpleStation14 Nov 8, 2024
09ffbd3
Disable Shadowkin (#1187)
VMSolidus Nov 8, 2024
b72d7c3
Automatic Changelog Update (#1187)
SimpleStation14 Nov 8, 2024
55e2170
Cherry Pick WizDen PR #28488 (#1194)
sleepyyapril Nov 8, 2024
8faeaa7
Port Bloodstains And Footprints (#1190)
VMSolidus Nov 9, 2024
8d5572b
Automatic Changelog Update (#1190)
SimpleStation14 Nov 9, 2024
a2b86bc
Beacons (#1196)
sleepyyapril Nov 9, 2024
4713261
Cherry-Pick Wizden PR 28375 (#1191)
VMSolidus Nov 9, 2024
94157bd
Fix Call Shuttle (#1199)
sleepyyapril Nov 10, 2024
4de7f50
Fix AddTrait And ReplaceTrait Functions (#1195)
VMSolidus Nov 10, 2024
e469816
Automatic Changelog Update (#1195)
SimpleStation14 Nov 10, 2024
6305e2d
Update Credits (#1202)
github-actions[bot] Nov 10, 2024
04cdc14
Add Missing `DOTNET_ROOT` Environment Variable For Nix Devs (#1203)
DocNITE Nov 11, 2024
20ac0b3
Swapped Hands HUD Fix (#1207)
Suraru Nov 13, 2024
c909724
Fix Butlertron's Hitbox (#1192)
VMSolidus Nov 13, 2024
66490ca
Automatic Changelog Update (#1192)
SimpleStation14 Nov 13, 2024
d1e4d11
The Hive: Update Engineering (#1201)
Ichaie Nov 13, 2024
4071d41
Automatic Changelog Update (#1201)
SimpleStation14 Nov 13, 2024
12c0a63
Return Old Lobby Music (#1204)
DocNITE Nov 13, 2024
74688cf
Automatic Changelog Update (#1204)
SimpleStation14 Nov 13, 2024
a77f581
Prevent Listening Posts From Spawning On Planets (#1188)
VMSolidus Nov 13, 2024
7063c79
Automatic Changelog Update (#1188)
SimpleStation14 Nov 13, 2024
ccb26b2
Fix Silver Crate Name (#1218)
sleepyyapril Nov 14, 2024
6b2ec00
Auto Voting System (#1213)
sleepyyapril Nov 14, 2024
8385fb1
Automatic Changelog Update (#1213)
SimpleStation14 Nov 14, 2024
3c31771
Fix Trait Component Removal (#1221)
DEATHB4DEFEAT Nov 14, 2024
387a362
Some Language Fixes (#1223)
Mnemotechnician Nov 14, 2024
8739096
Automatic Changelog Update (#1223)
SimpleStation14 Nov 14, 2024
3423e93
The Return of Spray Paint (#1222)
DEATHB4DEFEAT Nov 15, 2024
cfdc273
Bounties Localization Fix (#1219)
sleepyyapril Nov 15, 2024
45fdd0c
Automatic Changelog Update (#1222)
SimpleStation14 Nov 15, 2024
a505ed7
Change some Code Style Settings (#1226)
DEATHB4DEFEAT Nov 16, 2024
71185a7
Give Penguins Cold Resistance (#1229)
zelezniciar1 Nov 16, 2024
1c20299
Automatic Changelog Update (#1229)
SimpleStation14 Nov 16, 2024
7573650
Merge commit '1c202993ed0986f72205c31a14176f4fbb8e1420' into floof/fe…
Mnemotechnician Dec 4, 2024
2342a3b
Tonight's the night, we discover entity parenting
Mnemotechnician Dec 4, 2024
14d52ed
some fixes or something?
Mnemotechnician Dec 5, 2024
03a5bf4
fix .ftl
FoxxoTrystan Dec 9, 2024
80cbbc0
fix mice eating uranium
Fansana Dec 9, 2024
2c41d62
add firebreath
Fansana Dec 9, 2024
9c950b5
Merge pull request #401 from Fansana/fire-breath-oc
Fansana Dec 9, 2024
fcb294e
Merge pull request #400 from Fansana/uranium-fix
Fansana Dec 9, 2024
5184fc3
Automatic Changelog Update (#400)
Floof-Station-Bot Dec 9, 2024
3bde61d
yaml fixes
Mnemotechnician Dec 9, 2024
99f6118
Automatic Changelog Update (#921)
Fansana Dec 9, 2024
7feee73
Merge remote-tracking branch 'floofstation/master' into floof/feat/pa…
Mnemotechnician Dec 9, 2024
cada5ea
Exclude rodentia and resomi from lightweight
Mnemotechnician Dec 9, 2024
971fe73
Nevermind - trystan was right
Mnemotechnician Dec 9, 2024
9283d62
Fix disposal trunk ejection
Mnemotechnician Dec 12, 2024
a0e6fcb
Merge remote-tracking branch 'origin-floofstation-fork/floof/feat/par…
Mnemotechnician Dec 12, 2024
e13cd33
Update secret_weights.yml
fenndragon Dec 13, 2024
fe045d0
Update secret_weights.yml
fenndragon Dec 13, 2024
a80c269
Merge pull request #404 from fenndragon/Fixes
Fansana Dec 14, 2024
3466bb9
Automatic Changelog Update (#404)
Floof-Station-Bot Dec 14, 2024
626231a
Remove useless ccvar
Fansana Dec 14, 2024
56293da
Update BatteryRampPegSolver.cs
Fansana Dec 14, 2024
44b9192
Update PowerNetSystem.cs
Fansana Dec 14, 2024
e6d88cd
Update CCVars.cs
Fansana Dec 14, 2024
dfbbd99
update summary
Fansana Dec 14, 2024
a38504e
enable roundstart shadowkin
Fansana Dec 14, 2024
8c096b7
scales slider fixes (Thanks april)
Fansana Dec 14, 2024
4223ea9
Add wedding rings to loadouts
ProphetCrow Dec 15, 2024
089edb5
Merge pull request #405 from ProphetCrow/owouwu
Fansana Dec 15, 2024
5c1b53e
Automatic Changelog Update (#405)
Floof-Station-Bot Dec 15, 2024
48a09b2
Adding body mass to health analyzer ui
LucasTheDrgn Dec 15, 2024
19edc52
fix
Fansana Dec 15, 2024
4afc544
Merge pull request #407 from Fansana/fix-crass-knuckles
Fansana Dec 15, 2024
0d35854
Automatic Changelog Update (#407)
Floof-Station-Bot Dec 15, 2024
903e3e9
Revert "scales slider fixes (Thanks april)"
Fansana Dec 15, 2024
f7ff7dd
skibedi
Fansana Dec 15, 2024
51792a0
Nerf
Mnemotechnician Dec 15, 2024
33f8509
rizzler
Fansana Dec 15, 2024
b48a44e
Merge pull request #402 from Mnemotechnician/floof/feat/partial-merge…
Fansana Dec 15, 2024
d4b80d8
Automatic Changelog Update (#402)
Floof-Station-Bot Dec 15, 2024
089b09d
Merge pull request #408 from Mnemotechnician/floof/tweak/mood-traits-…
Fansana Dec 15, 2024
2b76cc1
Merge branch 'master' into health-analyser-mass
Fansana Dec 15, 2024
067ed7d
Automatic Changelog Update (#408)
Floof-Station-Bot Dec 15, 2024
72e7a87
Update HealthAnalyzerScannedUserMessage.cs
Fansana Dec 15, 2024
bb3f178
Merge pull request #406 from LucasTheDrgn/health-analyser-mass
Fansana Dec 15, 2024
96ed724
Automatic Changelog Update (#406)
Floof-Station-Bot Dec 15, 2024
e9bc4d8
Handheld teleporter portals now must start on the same grid. (#28423)
moonheart08 May 30, 2024
bf98176
buff smes
Fansana Dec 15, 2024
d72320c
Update prisoner.yml
VMSolidus Dec 12, 2024
4b56296
fix merge bla foo
Fansana Dec 15, 2024
121f8ef
Merge pull request #409 from Fansana/remove-cross-grid-portals
Fansana Dec 15, 2024
468d523
Automatic Changelog Update (#409)
Floof-Station-Bot Dec 15, 2024
b32235f
Configurable lengths, anchorable leashes, refactor
Mnemotechnician Dec 15, 2024
cd6b709
Salvage Magnet UI and Character Switching Height/Width Bug Fix (#1347)
sleepyyapril Dec 14, 2024
685c0c9
Re-Enable Language Color and Font (#1294)
angelofallars Nov 29, 2024
6ff91c6
Merge pull request #410 from Fansana/buff-smes
Fansana Dec 15, 2024
b632957
Automatic Changelog Update (#410)
Floof-Station-Bot Dec 15, 2024
227bc93
Merge pull request #412 from Fansana/re-enable-languages
FoxxoTrystan Dec 15, 2024
0294500
Automatic Changelog Update (#412)
Floof-Station-Bot Dec 15, 2024
0a121dc
fix language mark
FoxxoTrystan Dec 15, 2024
d59882f
forgot marish
FoxxoTrystan Dec 15, 2024
80971ed
Reduce the visual size of the leash
Mnemotechnician Dec 15, 2024
423f246
fix
FoxxoTrystan Dec 15, 2024
0906922
Configurable offsets & a custom visualizer
Mnemotechnician Dec 15, 2024
bec2267
Wrong indentation
Mnemotechnician Dec 15, 2024
a68312c
Eugh how did I make this mistake?
Mnemotechnician Dec 15, 2024
874d5a8
Fix the remove leash verb not appearing on clothing
Mnemotechnician Dec 15, 2024
91ae239
Update rodentia.yml
FoxxoTrystan Dec 15, 2024
fcd2e83
fix salvage magnet
Fansana Dec 15, 2024
f9070fb
Merge pull request #414 from Mnemotechnician/floof/tweak/leash-tweaks
Fansana Dec 15, 2024
f84f5cc
Merge pull request #413 from FoxxoTrystan/female-collision-fix
Fansana Dec 15, 2024
83752c8
Automatic Changelog Update (#414)
Floof-Station-Bot Dec 15, 2024
15006e9
Automatic Changelog Update (#413)
Floof-Station-Bot Dec 15, 2024
8686720
fix specieid
FoxxoTrystan Dec 15, 2024
8f950cd
Senior uniforms to more jobs
ProphetCrow Dec 15, 2024
cc8105b
actually fix sliders
Fansana Dec 15, 2024
ed0f525
undo change
Fansana Dec 15, 2024
01834f1
fix release verb
FoxxoTrystan Dec 15, 2024
0cb2514
Merge pull request #411 from Fansana/ui-fixes
FoxxoTrystan Dec 15, 2024
c569c39
Automatic Changelog Update (#411)
Floof-Station-Bot Dec 15, 2024
1c030db
Merge pull request #415 from ProphetCrow/owouwu
Fansana Dec 15, 2024
f32ca82
Automatic Changelog Update (#415)
Floof-Station-Bot Dec 15, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ csharp_style_expression_bodied_constructors = false:suggestion
#csharp_style_expression_bodied_indexers = true:silent
#csharp_style_expression_bodied_lambdas = true:silent
#csharp_style_expression_bodied_local_functions = false:silent
csharp_style_expression_bodied_methods = false:suggestion
csharp_style_expression_bodied_methods = true:suggestion
#csharp_style_expression_bodied_operators = false:silent
csharp_style_expression_bodied_properties = true:suggestion

Expand Down
3 changes: 2 additions & 1 deletion Content.Client/Clothing/ClientClothingSystem.cs
Original file line number Diff line number Diff line change
Expand Up @@ -321,7 +321,8 @@ private void RenderEquipment(EntityUid equipee, EntityUid equipment, string slot
if (layerData.State is not null && inventory.SpeciesId is not null && layerData.State.EndsWith(inventory.SpeciesId))
continue;

_displacement.TryAddDisplacement(displacementData, sprite, index, key, revealedLayers);
if (_displacement.TryAddDisplacement(displacementData, sprite, index, key, revealedLayers))
index++;
}
}

Expand Down
89 changes: 89 additions & 0 deletions Content.Client/Floofstation/Leash/LeashVisualsOverlay.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
using System.Numerics;
using Content.Shared.Floofstation.Leash.Components;
using Robust.Client.GameObjects;
using Robust.Client.Graphics;
using Robust.Shared.Enums;

namespace Content.Client.Floofstation.Leash;

public sealed class LeashVisualsOverlay : Overlay
{
public override OverlaySpace Space => OverlaySpace.WorldSpaceBelowFOV;

private readonly IEntityManager _entMan;
private readonly SpriteSystem _sprites;
private readonly SharedTransformSystem _xform;
private readonly EntityQuery<TransformComponent> _xformQuery;
private readonly EntityQuery<SpriteComponent> _spriteQuery;

public LeashVisualsOverlay(IEntityManager entMan)
{
_entMan = entMan;
_sprites = _entMan.System<SpriteSystem>();
_xform = _entMan.System<SharedTransformSystem>();
_xformQuery = _entMan.GetEntityQuery<TransformComponent>();
_spriteQuery = _entMan.GetEntityQuery<SpriteComponent>();
}

protected override void Draw(in OverlayDrawArgs args)
{
var worldHandle = args.WorldHandle;
worldHandle.SetTransform(Vector2.Zero, Angle.Zero);

var query = _entMan.EntityQueryEnumerator<LeashedVisualsComponent>();
while (query.MoveNext(out var visualsComp))
{
if (visualsComp.Source is not {Valid: true} source
|| visualsComp.Target is not {Valid: true} target
|| !_xformQuery.TryGetComponent(source, out var xformComp)
|| !_xformQuery.TryGetComponent(target, out var otherXformComp)
|| xformComp.MapID != args.MapId
|| otherXformComp.MapID != xformComp.MapID)
continue;

var texture = _sprites.Frame0(visualsComp.Sprite);
var width = texture.Width / (float) EyeManager.PixelsPerMeter;

var coordsA = xformComp.Coordinates;
var coordsB = otherXformComp.Coordinates;

// If both coordinates are in the same spot (e.g. the leash is being held by the leashed), don't render anything
if (coordsA.TryDistance(_entMan, _xform, coordsB, out var dist) && dist < 0.01f)
continue;

var rotA = xformComp.LocalRotation;
var rotB = otherXformComp.LocalRotation;
var offsetA = visualsComp.OffsetSource;
var offsetB = visualsComp.OffsetTarget;

// Sprite rotation is the rotation along the Z axis
// Which is different from transform rotation for all mobs that are seen from the side (instead of top-down)
if (_spriteQuery.TryGetComponent(source, out var spriteA))
{
offsetA *= spriteA.Scale;
rotA = spriteA.Rotation;
}
if (_spriteQuery.TryGetComponent(target, out var spriteB))
{
offsetB *= spriteB.Scale;
rotB = spriteB.Rotation;
}

coordsA = coordsA.Offset(rotA.RotateVec(offsetA));
coordsB = coordsB.Offset(rotB.RotateVec(offsetB));

var posA = _xform.ToMapCoordinates(coordsA).Position;
var posB = _xform.ToMapCoordinates(coordsB).Position;
var diff = (posB - posA);
var length = diff.Length();

// So basically, we find the midpoint, then create a box that describes the sprite boundaries, then rotate it
var midPoint = diff / 2f + posA;
var angle = (posB - posA).ToWorldAngle();
var box = new Box2(-width / 2f, -length / 2f, width / 2f, length / 2f);
var rotate = new Box2Rotated(box.Translated(midPoint), angle, midPoint);

worldHandle.DrawTextureRect(texture, rotate);
}
}
}
21 changes: 21 additions & 0 deletions Content.Client/Floofstation/Leash/LeashVisualsSystem.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
using Content.Client.Physics;
using Robust.Client.Graphics;

namespace Content.Client.Floofstation.Leash;

public sealed class LeashVisualsSystem : EntitySystem
{
[Dependency] private readonly IOverlayManager _overlay = default!;

public override void Initialize()
{
base.Initialize();
_overlay.AddOverlay(new LeashVisualsOverlay(EntityManager));
}

public override void Shutdown()
{
base.Shutdown();
_overlay.RemoveOverlay<LeashVisualsOverlay>();
}
}
65 changes: 65 additions & 0 deletions Content.Client/FootPrint/FootPrintsVisualizerSystem.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
using Content.Shared.FootPrint;
using Robust.Client.GameObjects;
using Robust.Client.Graphics;
using Robust.Shared.Random;

namespace Content.Client.FootPrint;

public sealed class FootPrintsVisualizerSystem : VisualizerSystem<FootPrintComponent>
{
[Dependency] private readonly SharedAppearanceSystem _appearance = default!;
[Dependency] private readonly IRobustRandom _random = default!;

public override void Initialize()
{
base.Initialize();

SubscribeLocalEvent<FootPrintComponent, ComponentInit>(OnInitialized);
SubscribeLocalEvent<FootPrintComponent, ComponentShutdown>(OnShutdown);
}

private void OnInitialized(EntityUid uid, FootPrintComponent comp, ComponentInit args)
{
if (!TryComp<SpriteComponent>(uid, out var sprite))
return;

sprite.LayerMapReserveBlank(FootPrintVisualLayers.Print);
UpdateAppearance(uid, comp, sprite);
}

private void OnShutdown(EntityUid uid, FootPrintComponent comp, ComponentShutdown args)
{
if (TryComp<SpriteComponent>(uid, out var sprite)
&& sprite.LayerMapTryGet(FootPrintVisualLayers.Print, out var layer))
sprite.RemoveLayer(layer);
}

private void UpdateAppearance(EntityUid uid, FootPrintComponent component, SpriteComponent sprite)
{
if (!sprite.LayerMapTryGet(FootPrintVisualLayers.Print, out var layer)
|| !TryComp<FootPrintsComponent>(component.PrintOwner, out var printsComponent)
|| !TryComp<AppearanceComponent>(uid, out var appearance)
|| !_appearance.TryGetData<FootPrintVisuals>(uid, FootPrintVisualState.State, out var printVisuals, appearance))
return;

sprite.LayerSetState(layer, new RSI.StateId(printVisuals switch
{
FootPrintVisuals.BareFootPrint => printsComponent.RightStep ? printsComponent.RightBarePrint : printsComponent.LeftBarePrint,
FootPrintVisuals.ShoesPrint => printsComponent.ShoesPrint,
FootPrintVisuals.SuitPrint => printsComponent.SuitPrint,
FootPrintVisuals.Dragging => _random.Pick(printsComponent.DraggingPrint),
_ => throw new ArgumentOutOfRangeException($"Unknown {printVisuals} parameter.")
}), printsComponent.RsiPath);

if (_appearance.TryGetData<Color>(uid, FootPrintVisualState.Color, out var printColor, appearance))
sprite.LayerSetColor(layer, printColor);
}

protected override void OnAppearanceChange (EntityUid uid, FootPrintComponent component, ref AppearanceChangeEvent args)
{
if (args.Sprite is not { } sprite)
return;

UpdateAppearance(uid, component, sprite);
}
}
6 changes: 4 additions & 2 deletions Content.Client/HealthAnalyzer/UI/HealthAnalyzerWindow.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
Orientation="Vertical">
<BoxContainer Orientation="Horizontal" Margin="0 0 0 5">
<SpriteView OverrideDirection="South" Scale="2 2" Name="SpriteView" Access="Public" SetSize="64 64" />
<TextureRect Name="NoDataTex" Access="Public" SetSize="64 64" Visible="false" Stretch="KeepAspectCentered" TexturePath="/Textures/Interface/Misc/health_analyzer_out_of_range.png"/>
<BoxContainer Margin="5 0 0 0" Orientation="Vertical" VerticalAlignment="Top">
<RichTextLabel Name="NameLabel" SetWidth="150" />
<Label Name="SpeciesLabel" VerticalAlignment="Top" StyleClasses="LabelSubText" />
Expand All @@ -35,6 +36,8 @@
<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-mass-text'}" />
<Label Name="MassLabel" /> <!-- Floof: Health scanners show body mass -->
<Label Text="{Loc 'health-analyzer-window-entity-temperature-text'}" />
<Label Name="TemperatureLabel" />
<Label Text="{Loc 'health-analyzer-window-entity-blood-level-text'}" />
Expand All @@ -46,8 +49,7 @@

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

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

</BoxContainer>

Expand Down
41 changes: 32 additions & 9 deletions Content.Client/HealthAnalyzer/UI/HealthAnalyzerWindow.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,8 @@ public void Populate(HealthAnalyzerScannedUserMessage msg)
// Patient Information

SpriteView.SetEntity(target.Value);
SpriteView.Visible = msg.ScanMode.HasValue && msg.ScanMode.Value;
NoDataTex.Visible = !SpriteView.Visible;

var name = new FormattedMessage();
name.PushColor(Color.White);
Expand All @@ -89,6 +91,10 @@ public void Populate(HealthAnalyzerScannedUserMessage msg)

// Basic Diagnostic

MassLabel.Text = !float.IsNaN(msg.Mass) // Floof: Health scanners show body mass
? $"{msg.Mass:F1} kg"
: Loc.GetString("health-analyzer-window-entity-unknown-value-text");

TemperatureLabel.Text = !float.IsNaN(msg.Temperature)
? $"{msg.Temperature - Atmospherics.T0C:F1} °C ({msg.Temperature:F1} K)"
: Loc.GetString("health-analyzer-window-entity-unknown-value-text");
Expand All @@ -108,17 +114,34 @@ public void Populate(HealthAnalyzerScannedUserMessage msg)

// Alerts

AlertsDivider.Visible = msg.Bleeding == true;
AlertsContainer.Visible = msg.Bleeding == true;
var showAlerts = msg.Unrevivable == true || msg.Bleeding == true;

AlertsDivider.Visible = showAlerts;
AlertsContainer.Visible = showAlerts;

if (showAlerts)
AlertsContainer.DisposeAllChildren();

if (msg.Unrevivable == true) // Right now this does nothing, but we have it just for parity :)
{
var unrevivableLabel = new RichTextLabel
{
Margin = new Thickness(0, 4),
MaxWidth = 300
};
unrevivableLabel.SetMessage(Loc.GetString("health-analyzer-window-entity-unrevivable-text"), defaultColor: Color.Red);
AlertsContainer.AddChild(unrevivableLabel);
}

if (msg.Bleeding == true)
{
AlertsContainer.DisposeAllChildren();
AlertsContainer.AddChild(new Label
var bleedingLabel = new RichTextLabel
{
Text = Loc.GetString("health-analyzer-window-entity-bleeding-text"),
FontColorOverride = Color.Red,
});
Margin = new Thickness(0, 4),
MaxWidth = 300
};
bleedingLabel.SetMessage(Loc.GetString("health-analyzer-window-entity-bleeding-text"), defaultColor: Color.Red);
AlertsContainer.AddChild(bleedingLabel);
}

// Damage Groups
Expand Down Expand Up @@ -180,11 +203,11 @@ private void DrawDiagnosticGroups(

var damageString = Loc.GetString(
"health-analyzer-window-damage-type-text",
("damageType", Loc.GetString("damage-type-" + type.ToLower())),
("damageType", Loc.GetString("health-analyzer-window-damage-type-" + type)),
("amount", typeAmount)
);

groupContainer.AddChild(CreateDiagnosticItemLabel(damageString.Insert(0, "- ")));
groupContainer.AddChild(CreateDiagnosticItemLabel(damageString.Insert(0, " · ")));
}
}
}
Expand Down
Loading
Loading