Load Maps on Round Start, not Round Restart (#6930)

* Load Maps on Round Start, not Round Restart

* Fix admin log test.
It assumed maps/grids existed during pre-round, wihch is not a valid assumption anymore after this PR.
This commit is contained in:
Vera Aguilera Puerto
2022-03-01 03:20:21 +01:00
committed by GitHub
parent 01490d5989
commit 650b8b6600
2 changed files with 10 additions and 15 deletions

View File

@@ -234,8 +234,6 @@ public sealed class AddTests : ContentIntegrationTest
await server.WaitIdleAsync(); await server.WaitIdleAsync();
var sDatabase = server.ResolveDependency<IServerDbManager>(); var sDatabase = server.ResolveDependency<IServerDbManager>();
var sEntities = server.ResolveDependency<IEntityManager>();
var sMaps = server.ResolveDependency<IMapManager>();
var sSystems = server.ResolveDependency<IEntitySystemManager>(); var sSystems = server.ResolveDependency<IEntitySystemManager>();
var sAdminLogSystem = sSystems.GetEntitySystem<AdminLogSystem>(); var sAdminLogSystem = sSystems.GetEntitySystem<AdminLogSystem>();
@@ -245,10 +243,7 @@ public sealed class AddTests : ContentIntegrationTest
await server.WaitPost(() => await server.WaitPost(() =>
{ {
var coordinates = GetMainEntityCoordinates(sMaps); sAdminLogSystem.Add(LogType.Unknown, $"test log: {guid}");
var entity = sEntities.SpawnEntity(null, coordinates);
sAdminLogSystem.Add(LogType.Unknown, $"{entity} test log: {guid}");
}); });
await server.WaitPost(() => await server.WaitPost(() =>
@@ -285,7 +280,6 @@ public sealed class AddTests : ContentIntegrationTest
{ {
var root = json.RootElement; var root = json.RootElement;
Assert.That(root.TryGetProperty("entity", out _), Is.True);
Assert.That(root.TryGetProperty("guid", out _), Is.True); Assert.That(root.TryGetProperty("guid", out _), Is.True);
json.Dispose(); json.Dispose();

View File

@@ -190,6 +190,8 @@ namespace Content.Server.GameTicking
SendServerMessage(Loc.GetString("game-ticker-start-round")); SendServerMessage(Loc.GetString("game-ticker-start-round"));
LoadMaps();
StartGamePresetRules(); StartGamePresetRules();
RoundLengthMetric.Set(0); RoundLengthMetric.Set(0);
@@ -373,7 +375,6 @@ namespace Content.Server.GameTicking
RunLevel = GameRunLevel.PreRoundLobby; RunLevel = GameRunLevel.PreRoundLobby;
LobbySong = _robustRandom.Pick(_lobbyMusicCollection.PickFiles).ToString(); LobbySong = _robustRandom.Pick(_lobbyMusicCollection.PickFiles).ToString();
ResettingCleanup(); ResettingCleanup();
LoadMaps();
if (!LobbyEnabled) if (!LobbyEnabled)
{ {
@@ -411,18 +412,18 @@ namespace Content.Server.GameTicking
unCastData.ContentData()?.WipeMind(); unCastData.ContentData()?.WipeMind();
} }
// Delete all entities. _startingRound = false;
foreach (var entity in EntityManager.GetEntities().ToList())
_mapManager.Restart();
// Delete all remaining entities.
foreach (var entity in EntityManager.GetEntities().ToArray())
{ {
// TODO: Maybe something less naive here? // TODO: Maybe something less naive here?
// FIXME: Actually, definitely. // FIXME: Actually, definitely.
EntityManager.DeleteEntity(entity); EntityManager.DeleteEntity(entity);
} }
_startingRound = false;
_mapManager.Restart();
_roleBanManager.Restart(); _roleBanManager.Restart();
// Clear up any game rules. // Clear up any game rules.