Fix solution editor UI (#24004)

Fixes #23645

The problem is that the solution editor UI is an EUI, so the UI updates before the game states are applied.

A correct fix would be to move it to a BUI in some way, but that's a little involved as we don't really have pre-existing code that uses BUIs in a manner good for this. I decided against this because I realized we'd want to have more tools similar to this and tbh I kinda figured integrating it with VV would be a better fix instead, so...

This is a bad workaround to manually synchronize the UI updates against game timing. It's not pretty but it works.
This commit is contained in:
Pieter-Jan Briers
2024-01-13 05:52:42 +01:00
committed by GitHub
parent 2375a6cd1d
commit 3a2cd95d7f
4 changed files with 35 additions and 5 deletions

View File

@@ -1,5 +1,6 @@
using Content.Shared.Eui;
using Robust.Shared.Serialization;
using Robust.Shared.Timing;
namespace Content.Shared.Administration
{
@@ -8,11 +9,13 @@ namespace Content.Shared.Administration
{
public readonly NetEntity Target;
public readonly List<(string, NetEntity)>? Solutions;
public readonly GameTick Tick;
public EditSolutionsEuiState(NetEntity target, List<(string, NetEntity)>? solutions)
public EditSolutionsEuiState(NetEntity target, List<(string, NetEntity)>? solutions, GameTick tick)
{
Target = target;
Solutions = solutions;
Tick = tick;
}
}
}