various xenoarch adjustments (#12677)

* magboots can now activate magnet artifacts

* more shit

* Update artifact_analyzer.yml

* Update item_artifacts.yml
This commit is contained in:
Nemanja
2022-11-20 01:52:32 -05:00
committed by GitHub
parent e21fc05a06
commit 619fdc7241
9 changed files with 95 additions and 142 deletions

View File

@@ -1,12 +1,10 @@
using Content.Client.Stylesheets;
using Content.Client.UserInterface.Controls;
using Content.Shared.Xenoarchaeology.Equipment;
using Content.Shared.Xenoarchaeology.XenoArtifacts;
using Robust.Client.AutoGenerated;
using Robust.Client.GameObjects;
using Robust.Client.UserInterface.Controls;
using Robust.Client.UserInterface.XAML;
using Robust.Shared.Prototypes;
using Robust.Shared.Utility;
namespace Content.Client.Xenoarchaeology.Ui;
@@ -15,7 +13,6 @@ namespace Content.Client.Xenoarchaeology.Ui;
public sealed partial class AnalysisConsoleMenu : FancyWindow
{
[Dependency] private readonly IEntityManager _ent = default!;
[Dependency] private readonly IPrototypeManager _proto = default!;
public AnalysisDestroyWindow? AnalysisDestroyWindow;
@@ -73,7 +70,7 @@ public sealed partial class AnalysisConsoleMenu : FancyWindow
}
}
public void UpdateArtifactIcon(EntityUid? uid)
private void UpdateArtifactIcon(EntityUid? uid)
{
if (uid == null)
{
@@ -100,75 +97,18 @@ public sealed partial class AnalysisConsoleMenu : FancyWindow
return;
}
//do this here
if (!state.AnalyzerConnected) //no analyzer connected
message.AddMarkup(Loc.GetString("analysis-console-info-no-scanner"));
else if (!state.CanScan) //no artifact
message.AddMarkup(Loc.GetString("analysis-console-info-no-artifact"));
else if (state.Artifact == null) //ready to go
message.AddMarkup(Loc.GetString("analysis-console-info-ready"));
UpdateArtifactIcon(state.Artifact);
if (state.Artifact == null)//no scan present
{
if (!state.AnalyzerConnected) //no analyzer connected
message.AddMarkup(Loc.GetString("analysis-console-info-no-scanner"));
else if (!state.CanScan) //no artifact
message.AddMarkup(Loc.GetString("analysis-console-info-no-artifact"));
else if (state.Artifact == null) //ready to go
message.AddMarkup(Loc.GetString("analysis-console-info-ready"));
}
if (state.ScanReport != null)
message.AddMessage(state.ScanReport);
if (state.Id != null) //node id
{
message.AddMarkup(Loc.GetString("analysis-console-info-id", ("id", state.Id)));
message.PushNewline();
}
if (state.Depth != null) //node depth
{
message.AddMarkup(Loc.GetString("analysis-console-info-depth", ("depth", state.Depth)));
message.PushNewline();
}
if (state.Triggered != null) //whether it has been triggered
{
var activated = state.Triggered.Value
? "analysis-console-info-triggered-true"
: "analysis-console-info-triggered-false";
message.AddMarkup(Loc.GetString(activated));
message.PushNewline();
}
message.PushNewline();
var needSecondNewline = false;
if (state.TriggerProto != null && //possible triggers
_proto.TryIndex<ArtifactTriggerPrototype>(state.TriggerProto, out var trigger) &&
trigger.TriggerHint != null)
{
message.AddMarkup(Loc.GetString("analysis-console-info-trigger",
("trigger", Loc.GetString(trigger.TriggerHint))));
message.PushNewline();
needSecondNewline = true;
}
if (state.EffectProto != null && //possible effects
_proto.TryIndex<ArtifactEffectPrototype>(state.EffectProto, out var effect) &&
effect.EffectHint != null)
{
message.AddMarkup(Loc.GetString("analysis-console-info-effect",
("effect", Loc.GetString(effect.EffectHint))));
message.PushNewline();
needSecondNewline = true;
}
if (needSecondNewline)
message.PushNewline();
if (state.Edges != null) //number of edges
{
message.AddMarkup(Loc.GetString("analysis-console-info-edges", ("edges", state.Edges)));
message.PushNewline();
}
if (state.PointValue != null) //completion percentage
{
message.AddMarkup(Loc.GetString("analysis-console-info-value", ("value", state.PointValue)));
message.PushNewline();
}
Information.SetMessage(message);
}