Skip to content

Commit

Permalink
Merge branch 'master' of github.com:space-wizards/space-station-14
Browse files Browse the repository at this point in the history
  • Loading branch information
moonheart08 committed Jun 4, 2023
2 parents ef7c366 + 1e6dbd0 commit 0ca7ba1
Show file tree
Hide file tree
Showing 320 changed files with 40,595 additions and 37,372 deletions.
45 changes: 45 additions & 0 deletions Content.Client/Bql/BqlResultsEui.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
using Content.Client.Eui;
using Content.Shared.Bql;
using Content.Shared.Eui;
using JetBrains.Annotations;
using Robust.Client.Console;

namespace Content.Client.Bql;

[UsedImplicitly]
public sealed class BqlResultsEui : BaseEui
{
private readonly BqlResultsWindow _window;

public BqlResultsEui()
{
_window = new BqlResultsWindow(
IoCManager.Resolve<IClientConsoleHost>(),
IoCManager.Resolve<ILocalizationManager>()
);

_window.OnClose += () => SendMessage(new CloseEuiMessage());
}

public override void HandleState(EuiStateBase state)
{
if (state is not BqlResultsEuiState castState)
return;

_window.Update(castState.Entities);
}

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

_window.Close();
}

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

_window.OpenCentered();
}
}
10 changes: 10 additions & 0 deletions Content.Client/Bql/BqlResultsWindow.xaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<DefaultWindow
xmlns="https://spacestation14.io"
Title="{Loc 'ui-bql-results-title'}">
<BoxContainer Orientation="Vertical">
<Label Name="StatusLabel" />
<ScrollContainer VerticalExpand="True">
<BoxContainer Orientation="Vertical" Name="ItemList" VerticalExpand="True" />
</ScrollContainer>
</BoxContainer>
</DefaultWindow>
48 changes: 48 additions & 0 deletions Content.Client/Bql/BqlResultsWindow.xaml.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
using Robust.Client.AutoGenerated;
using Robust.Client.Console;
using Robust.Client.UserInterface.Controls;
using Robust.Client.UserInterface.CustomControls;
using Robust.Client.UserInterface.XAML;

namespace Content.Client.Bql;

[GenerateTypedNameReferences]
internal sealed partial class BqlResultsWindow : DefaultWindow
{
private readonly IClientConsoleHost _console;
private readonly ILocalizationManager _loc;

public BqlResultsWindow(IClientConsoleHost console, ILocalizationManager loc)
{
_console = console;
_loc = loc;

RobustXamlLoader.Load(this);
}

protected override Vector2 ContentsMinimumSize => (500, 700);

public void Update((string name, EntityUid entity)[] entities)
{
StatusLabel.Text = _loc.GetString("ui-bql-results-status", ("count", entities.Length));
ItemList.RemoveAllChildren();

foreach (var (name, entity) in entities)
{
var nameLabel = new Label { Text = name, HorizontalExpand = true };
var tpButton = new Button { Text = _loc.GetString("ui-bql-results-tp") };
tpButton.OnPressed += _ => _console.ExecuteCommand($"tpto {entity}");
tpButton.ToolTip = _loc.GetString("ui-bql-results-tp-tooltip");

var vvButton = new Button { Text = _loc.GetString("ui-bql-results-vv") };
vvButton.ToolTip = _loc.GetString("ui-bql-results-vv-tooltip");
vvButton.OnPressed += _ => _console.ExecuteCommand($"vv {entity}");

ItemList.AddChild(new BoxContainer
{
Orientation = BoxContainer.LayoutOrientation.Horizontal,
Children = { nameLabel, tpButton, vvButton }
});
}
}
}
3 changes: 2 additions & 1 deletion Content.Client/Doors/AirlockSystem.cs
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,8 @@ private void OnAppearanceChange(EntityUid uid, AirlockComponent comp, ref Appear

if (_appearanceSystem.TryGetData<bool>(uid, DoorVisuals.Powered, out var powered, args.Component) && powered)
{
boltedVisible = _appearanceSystem.TryGetData<bool>(uid, DoorVisuals.BoltLights, out var lights, args.Component) && lights;
boltedVisible = _appearanceSystem.TryGetData<bool>(uid, DoorVisuals.BoltLights, out var lights, args.Component)
&& lights && state == DoorState.Closed;
emergencyLightsVisible = _appearanceSystem.TryGetData<bool>(uid, DoorVisuals.EmergencyLights, out var eaLights, args.Component) && eaLights;
unlitVisible =
state == DoorState.Closing
Expand Down
12 changes: 12 additions & 0 deletions Content.Client/Doors/DoorBoltSystem.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
using Content.Client.Wires.Visualizers;
using Content.Shared.Doors.Components;
using Content.Shared.Doors.Systems;
using Robust.Client.Animations;
using Robust.Client.GameObjects;

namespace Content.Client.Doors;

public sealed class DoorBoltSystem : SharedDoorBoltSystem
{
// Instantiate sub-class on client for prediction.
}
10 changes: 7 additions & 3 deletions Content.IntegrationTests/PoolManager.cs
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ private static readonly (string cvar, string value)[] ServerTestCvars =
(CCVars.NPCMaxUpdates.Name, "999999"),
(CVars.ThreadParallelCount.Name, "1"),
(CCVars.GameRoleTimers.Name, "false"),
(CCVars.CargoShuttles.Name, "false"),
(CCVars.GridFill.Name, "false"),
(CCVars.ArrivalsShuttles.Name, "false"),
(CCVars.EmergencyShuttleEnabled.Name, "false"),
(CCVars.ProcgenPreload.Name, "false"),
Expand Down Expand Up @@ -559,18 +559,22 @@ await pair.Client.WaitPost(() =>
public static async Task<TestMapData> CreateTestMap(PairTracker pairTracker)
{
var server = pairTracker.Pair.Server;

await server.WaitIdleAsync();

var settings = pairTracker.Pair.Settings;
var mapManager = server.ResolveDependency<IMapManager>();
var tileDefinitionManager = server.ResolveDependency<ITileDefinitionManager>();

if (settings.NoServer) throw new Exception("Cannot setup test map without server");
var mapData = new TestMapData();
await server.WaitPost(() =>
{
var mapManager = IoCManager.Resolve<IMapManager>();
mapData.MapId = mapManager.CreateMap();
mapData.MapUid = mapManager.GetMapEntityId(mapData.MapId);
mapData.MapGrid = mapManager.CreateGrid(mapData.MapId);
mapData.GridUid = mapData.MapGrid.Owner;
mapData.GridCoords = new EntityCoordinates(mapData.GridUid, 0, 0);
var tileDefinitionManager = IoCManager.Resolve<ITileDefinitionManager>();
var plating = tileDefinitionManager["Plating"];
var platingTile = new Tile(plating.TileId);
mapData.MapGrid.SetTile(mapData.GridCoords, platingTile);
Expand Down
3 changes: 0 additions & 3 deletions Content.IntegrationTests/Tests/CargoTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -63,8 +63,6 @@ public async Task NoStaticPriceAndStackPrice()
var entManager = server.ResolveDependency<IEntityManager>();
var mapManager = server.ResolveDependency<IMapManager>();
var protoManager = server.ResolveDependency<IPrototypeManager>();
var cfg = server.ResolveDependency<IConfigurationManager>();
await server.WaitPost(() => cfg.SetCVar(CCVars.DisableGridFill, true));

await server.WaitAssertion(() =>
{
Expand Down Expand Up @@ -106,7 +104,6 @@ await server.WaitAssertion(() =>
mapManager.DeleteMap(mapId);
});

await server.WaitPost(() => cfg.SetCVar(CCVars.DisableGridFill, false));
await pairTracker.CleanReturnAsync();
}

Expand Down
1 change: 1 addition & 0 deletions Content.IntegrationTests/Tests/Doors/AirlockTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ public sealed class AirlockTest
components:
- type: Door
- type: Airlock
- type: DoorBolt
- type: ApcPowerReceiver
needsPower: false
- type: Physics
Expand Down
20 changes: 5 additions & 15 deletions Content.IntegrationTests/Tests/EntityTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -27,15 +27,12 @@ public async Task SpawnAndDeleteAllEntitiesOnDifferentMaps()
await using var pairTracker = await PoolManager.GetServerClient(new PoolSettings{NoClient = true, Destructive = true});
var server = pairTracker.Pair.Server;

IEntityManager entityMan = null;
var cfg = server.ResolveDependency<IConfigurationManager>();
await server.WaitPost(() => cfg.SetCVar(CCVars.DisableGridFill, true));
var entityMan = server.ResolveDependency<IEntityManager>();
var mapManager = server.ResolveDependency<IMapManager>();
var prototypeMan = server.ResolveDependency<IPrototypeManager>();

await server.WaitPost(() =>
{
entityMan = IoCManager.Resolve<IEntityManager>();
var mapManager = IoCManager.Resolve<IMapManager>();
var prototypeMan = IoCManager.Resolve<IPrototypeManager>();
var protoIds = prototypeMan
.EnumeratePrototypes<EntityPrototype>()
.Where(p=>!p.Abstract)
Expand Down Expand Up @@ -65,7 +62,6 @@ await server.WaitPost(() =>
Assert.That(entityMan.EntityCount, Is.Zero);
});

await server.WaitPost(() => cfg.SetCVar(CCVars.DisableGridFill, false));
await pairTracker.CleanReturnAsync();
}

Expand All @@ -75,16 +71,13 @@ public async Task SpawnAndDeleteAllEntitiesInTheSameSpot()
await using var pairTracker = await PoolManager.GetServerClient(new PoolSettings{NoClient = true, Destructive = true});
var server = pairTracker.Pair.Server;
var map = await PoolManager.CreateTestMap(pairTracker);
IEntityManager entityMan = null;

var cfg = server.ResolveDependency<IConfigurationManager>();
await server.WaitPost(() => cfg.SetCVar(CCVars.DisableGridFill, true));
var entityMan = server.ResolveDependency<IEntityManager>();
var prototypeMan = server.ResolveDependency<IPrototypeManager>();

await server.WaitPost(() =>
{
entityMan = IoCManager.Resolve<IEntityManager>();

var prototypeMan = IoCManager.Resolve<IPrototypeManager>();
var protoIds = prototypeMan
.EnumeratePrototypes<EntityPrototype>()
.Where(p=>!p.Abstract)
Expand All @@ -109,7 +102,6 @@ await server.WaitPost(() =>
Assert.That(entityMan.EntityCount, Is.Zero);
});

await server.WaitPost(() => cfg.SetCVar(CCVars.DisableGridFill, false));
await pairTracker.CleanReturnAsync();
}

Expand All @@ -129,7 +121,6 @@ public async Task SpawnAndDirtyAllEntities()
var mapManager = server.ResolveDependency<IMapManager>();
var sEntMan = server.ResolveDependency<IEntityManager>();

await server.WaitPost(() => cfg.SetCVar(CCVars.DisableGridFill, true));
Assert.That(cfg.GetCVar(CVars.NetPVS), Is.False);

var protoIds = prototypeMan
Expand Down Expand Up @@ -178,7 +169,6 @@ await server.WaitPost(() =>
Assert.That(sEntMan.EntityCount, Is.Zero);
});

await server.WaitPost(() => cfg.SetCVar(CCVars.DisableGridFill, false));
await pairTracker.CleanReturnAsync();
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ public async Task TestAllConcurrent()
await server.WaitIdleAsync();
var gameTicker = server.ResolveDependency<IEntitySystemManager>().GetEntitySystem<GameTicker>();
var cfg = server.ResolveDependency<IConfigurationManager>();
Assert.That(cfg.GetCVar(CCVars.DisableGridFill), Is.False);
Assert.That(cfg.GetCVar(CCVars.GridFill), Is.False);

await server.WaitAssertion(() =>
{
Expand Down
6 changes: 3 additions & 3 deletions Content.IntegrationTests/Tests/PostMapInitTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ public async Task GridsLoadableTest(string mapFile)
var mapLoader = server.ResolveDependency<IEntitySystemManager>().GetEntitySystem<MapLoaderSystem>();
var mapManager = server.ResolveDependency<IMapManager>();
var cfg = server.ResolveDependency<IConfigurationManager>();
Assert.That(cfg.GetCVar(CCVars.DisableGridFill), Is.False);
Assert.That(cfg.GetCVar(CCVars.GridFill), Is.False);

await server.WaitPost(() =>
{
Expand Down Expand Up @@ -188,7 +188,7 @@ public async Task GameMapsLoadableTest(string mapProto)
var shuttleSystem = entManager.EntitySysManager.GetEntitySystem<ShuttleSystem>();
var xformQuery = entManager.GetEntityQuery<TransformComponent>();
var cfg = server.ResolveDependency<IConfigurationManager>();
Assert.That(cfg.GetCVar(CCVars.DisableGridFill), Is.False);
Assert.That(cfg.GetCVar(CCVars.GridFill), Is.False);

await server.WaitPost(() =>
{
Expand Down Expand Up @@ -352,7 +352,7 @@ public async Task MapsLoadableTest(string mapName)
var mapLoader = server.ResolveDependency<IEntitySystemManager>().GetEntitySystem<MapLoaderSystem>();
var mapManager = server.ResolveDependency<IMapManager>();
var cfg = server.ResolveDependency<IConfigurationManager>();
Assert.That(cfg.GetCVar(CCVars.DisableGridFill), Is.False);
Assert.That(cfg.GetCVar(CCVars.GridFill), Is.False);

await server.WaitPost(() =>
{
Expand Down
2 changes: 1 addition & 1 deletion Content.IntegrationTests/Tests/SaveLoadMapTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ public async Task SaveLoadMultiGridMap()
var xformSystem = sEntities.EntitySysManager.GetEntitySystem<SharedTransformSystem>();
var resManager = server.ResolveDependency<IResourceManager>();
var cfg = server.ResolveDependency<IConfigurationManager>();
Assert.That(cfg.GetCVar(CCVars.DisableGridFill), Is.False);
Assert.That(cfg.GetCVar(CCVars.GridFill), Is.False);

await server.WaitAssertion(() =>
{
Expand Down
6 changes: 3 additions & 3 deletions Content.IntegrationTests/Tests/SaveLoadSaveTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ public async Task SaveLoadSave()
var mapLoader = server.ResolveDependency<IEntitySystemManager>().GetEntitySystem<MapLoaderSystem>();
var mapManager = server.ResolveDependency<IMapManager>();
var cfg = server.ResolveDependency<IConfigurationManager>();
Assert.That(cfg.GetCVar(CCVars.DisableGridFill), Is.False);
Assert.That(cfg.GetCVar(CCVars.GridFill), Is.False);

await server.WaitPost(() =>
{
Expand Down Expand Up @@ -97,7 +97,7 @@ public async Task LoadSaveTicksSaveBagel()

MapId mapId = default;
var cfg = server.ResolveDependency<IConfigurationManager>();
Assert.That(cfg.GetCVar(CCVars.DisableGridFill), Is.False);
Assert.That(cfg.GetCVar(CCVars.GridFill), Is.False);

// Load bagel.yml as uninitialized map, and save it to ensure it's up to date.
server.Post(() =>
Expand Down Expand Up @@ -178,7 +178,7 @@ public async Task LoadTickLoadBagel()
var mapManager = server.ResolveDependency<IMapManager>();
var userData = server.ResolveDependency<IResourceManager>().UserData;
var cfg = server.ResolveDependency<IConfigurationManager>();
Assert.That(cfg.GetCVar(CCVars.DisableGridFill), Is.False);
Assert.That(cfg.GetCVar(CCVars.GridFill), Is.False);

MapId mapId = default;
const string fileA = "/load tick load a.yml";
Expand Down
Loading

0 comments on commit 0ca7ba1

Please sign in to comment.