* SS14-26480 Roll Traversal Distorter into regular Artifact Analyzers Bit of a grab-bag of cleanup of Xenoarchaeology prompted by #26480. 1. Traversal distortion biases are now "up" and "down" instead of "in" and "out". 2. Node generation has been tidied up to make it a little clearer how it works. 3. Traversal Distorters have been removed from the game along with their board. 4. Traversal distortion is now done by the artifact analyzers by default. 5. Some loc strings have been made clearer. 6. The Abnormal Artifact Manipulation tech has been made slightly cheaper. 7. The aformentioned tech is now localized as Artifact Recycling, given all it does is unlock the crusher. 8. The Xenoarchaeology guidebook entry has been given a bit of a rewrite, putting all information into one page and making sure to cover the basics that otherwise would require someone typing "Liltenhead artifact tutorial" into Youtube. * Fix references to deleted guidebook entry * Add fancy button to console because @EmoGarbage404 asked me to * migration comprete * Fixed a goober comment * maint fails to resolve conflicts: more at 11 * Resolve PR comments * Make UI nice --------- Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
77 lines
2.0 KiB
C#
77 lines
2.0 KiB
C#
using Content.Shared.Xenoarchaeology.Equipment;
|
|
using JetBrains.Annotations;
|
|
using Robust.Client.GameObjects;
|
|
|
|
namespace Content.Client.Xenoarchaeology.Ui;
|
|
|
|
[UsedImplicitly]
|
|
public sealed class AnalysisConsoleBoundUserInterface : BoundUserInterface
|
|
{
|
|
[ViewVariables]
|
|
private AnalysisConsoleMenu? _consoleMenu;
|
|
|
|
public AnalysisConsoleBoundUserInterface(EntityUid owner, Enum uiKey) : base(owner, uiKey)
|
|
{
|
|
}
|
|
|
|
protected override void Open()
|
|
{
|
|
base.Open();
|
|
|
|
_consoleMenu = new AnalysisConsoleMenu();
|
|
|
|
_consoleMenu.OnClose += Close;
|
|
_consoleMenu.OpenCentered();
|
|
|
|
_consoleMenu.OnServerSelectionButtonPressed += () =>
|
|
{
|
|
SendMessage(new AnalysisConsoleServerSelectionMessage());
|
|
};
|
|
_consoleMenu.OnScanButtonPressed += () =>
|
|
{
|
|
SendMessage(new AnalysisConsoleScanButtonPressedMessage());
|
|
};
|
|
_consoleMenu.OnPrintButtonPressed += () =>
|
|
{
|
|
SendMessage(new AnalysisConsolePrintButtonPressedMessage());
|
|
};
|
|
_consoleMenu.OnExtractButtonPressed += () =>
|
|
{
|
|
SendMessage(new AnalysisConsoleExtractButtonPressedMessage());
|
|
};
|
|
_consoleMenu.OnUpBiasButtonPressed += () =>
|
|
{
|
|
SendMessage(new AnalysisConsoleBiasButtonPressedMessage(false));
|
|
};
|
|
_consoleMenu.OnDownBiasButtonPressed += () =>
|
|
{
|
|
SendMessage(new AnalysisConsoleBiasButtonPressedMessage(true));
|
|
};
|
|
}
|
|
|
|
protected override void UpdateState(BoundUserInterfaceState state)
|
|
{
|
|
base.UpdateState(state);
|
|
|
|
switch (state)
|
|
{
|
|
case AnalysisConsoleUpdateState msg:
|
|
_consoleMenu?.SetButtonsDisabled(msg);
|
|
_consoleMenu?.UpdateInformationDisplay(msg);
|
|
_consoleMenu?.UpdateProgressBar(msg);
|
|
break;
|
|
}
|
|
}
|
|
|
|
protected override void Dispose(bool disposing)
|
|
{
|
|
base.Dispose(disposing);
|
|
|
|
if (!disposing)
|
|
return;
|
|
|
|
_consoleMenu?.Dispose();
|
|
}
|
|
}
|
|
|