Load Maps on Round Start, not Round Restart v3 (#6989)

* 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.

* Shutdown server if round fails to start 5 times.

* Fix bugs with round starting flag.

* Make StartRound not async, synchronously get new round ID from DB.

* Handle StationId.Invalid in PickBestAvailableJob
Instead of crashing, return null.
SpawnPlayer will handle this by making the player an observer or returning them to the lobby.
This commit is contained in:
Vera Aguilera Puerto
2022-03-04 18:32:33 +01:00
committed by GitHub
parent 1ff687f482
commit 9ab3bb5811
6 changed files with 113 additions and 90 deletions

View File

@@ -108,6 +108,9 @@ namespace Content.Server.GameTicking
private string? PickBestAvailableJob(IPlayerSession playerSession, HumanoidCharacterProfile profile,
StationId station)
{
if (station == StationId.Invalid)
return null;
var available = _stationSystem.StationInfo[station].JobList;
bool TryPick(JobPriority priority, [NotNullWhen(true)] out string? jobId)