improve spawnpoint error logging (#40021)

This commit is contained in:
slarticodefast
2025-08-31 20:50:37 +02:00
committed by GitHub
parent 8f5d05c8bb
commit 0ba5d036a2
4 changed files with 48 additions and 11 deletions

View File

@@ -27,7 +27,7 @@ public sealed class SpawnPointSystem : EntitySystem
var points = EntityQueryEnumerator<SpawnPointComponent, TransformComponent>();
var possiblePositions = new List<EntityCoordinates>();
while ( points.MoveNext(out var uid, out var spawnPoint, out var xform))
while (points.MoveNext(out var uid, out var spawnPoint, out var xform))
{
if (args.Station != null && _stationSystem.GetOwningStation(uid, xform) != args.Station)
continue;
@@ -39,7 +39,7 @@ public sealed class SpawnPointSystem : EntitySystem
if (_gameTicker.RunLevel != GameRunLevel.InRound &&
spawnPoint.SpawnType == SpawnPointType.Job &&
(args.Job == null || spawnPoint.Job == args.Job))
(args.Job == null || spawnPoint.Job == null || spawnPoint.Job == args.Job))
{
possiblePositions.Add(xform.Coordinates);
}
@@ -51,13 +51,14 @@ public sealed class SpawnPointSystem : EntitySystem
// TODO: Refactor gameticker spawning code so we don't have to do this!
var points2 = EntityQueryEnumerator<SpawnPointComponent, TransformComponent>();
if (points2.MoveNext(out var spawnPoint, out var xform))
if (points2.MoveNext(out _, out var xform))
{
Log.Error($"Unable to pick a valid spawn point, picking random spawner as a backup.\nRunLevel: {_gameTicker.RunLevel} Station: {ToPrettyString(args.Station)} Job: {args.Job}");
possiblePositions.Add(xform.Coordinates);
}
else
{
Log.Error("No spawn points were available!");
Log.Error($"No spawn points were available!\nRunLevel: {_gameTicker.RunLevel} Station: {ToPrettyString(args.Station)} Job: {args.Job}");
return;
}
}