* multi-node xeno artifacts * refactor existing artifact effects * more tweaks to generation * more shit plus fix tests * more generation stuff plus threat levels * doink * now make it build * defer the artifact activation to not cause errors also pricing * some changes * all of the yaml + ui stuff for artifact analyzer * machine linking and starting to make the ui functional * artifact analyzer display * a shit ton of artifact analyzer stuff * more changes; making destroy work properly; progress bar tweaks * getting shit going! ALL RIGHT * small tweaks that didn't help much * Komm susser todd: the end of analysis * recipes and hints and ui, oh my! * add some in-game sources gotta prepare for day 1 launch * node data + ditch random seed in place of id * bunch of triggers * finish off the last few triggers * implement machine examine verb * knock, flicker, blink, throw * shatter, foam, shuffle, heat * fix all the shit i broke * *some* of these have to be good, no? 25 effects * callin' it there for effects * comments + reword some trigger hints * don't mind this little commit here * byref event * fix brokey node entry * fix low pressure trigger * mirror review plus fixing 0x40's bug also the throw artifact threw incorrectly * randomize the event message a teeny bit
65 lines
1.7 KiB
C#
65 lines
1.7 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
|
|
{
|
|
private AnalysisConsoleMenu? _consoleMenu;
|
|
|
|
public AnalysisConsoleBoundUserInterface(ClientUserInterfaceComponent 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.OnDestroyButtonPressed += _ =>
|
|
{
|
|
SendMessage(new AnalysisConsoleDestroyButtonPressedMessage());
|
|
};
|
|
}
|
|
|
|
protected override void UpdateState(BoundUserInterfaceState state)
|
|
{
|
|
base.UpdateState(state);
|
|
|
|
switch (state)
|
|
{
|
|
case AnalysisConsoleScanUpdateState msg:
|
|
_consoleMenu?.SetDestroyButtonDisabled(msg);
|
|
_consoleMenu?.SetScanButtonDisabled(msg);
|
|
_consoleMenu?.UpdateInformationDisplay(msg);
|
|
_consoleMenu?.UpdateProgressBar(msg);
|
|
break;
|
|
}
|
|
}
|
|
|
|
protected override void Dispose(bool disposing)
|
|
{
|
|
base.Dispose(disposing);
|
|
|
|
if (!disposing)
|
|
return;
|
|
_consoleMenu?.Dispose();
|
|
}
|
|
}
|
|
|