Add CVar for random grid offset, disable it by default.

This commit is contained in:
Vera Aguilera Puerto
2021-08-04 09:25:30 +02:00
parent 28a7d5041a
commit b7d049a52c
5 changed files with 28 additions and 12 deletions

View File

@@ -63,10 +63,13 @@ namespace Content.Server.GameTicking
throw new InvalidOperationException($"No grid found for map {map}");
}
var maxStationOffset = _configurationManager.GetCVar(CCVars.MaxStationOffset);
var x = _robustRandom.NextFloat() * maxStationOffset * 2 - maxStationOffset;
var y = _robustRandom.NextFloat() * maxStationOffset * 2 - maxStationOffset;
_entityManager.GetEntity(grid.GridEntityId).Transform.LocalPosition = new Vector2(x, y);
if (StationOffset)
{
// Apply a random offset to the station grid entity.
var x = _robustRandom.NextFloat() * MaxStationOffset * 2 - MaxStationOffset;
var y = _robustRandom.NextFloat() * MaxStationOffset * 2 - MaxStationOffset;
EntityManager.GetEntity(grid.GridEntityId).Transform.LocalPosition = new Vector2(x, y);
}
DefaultGridId = grid.Index;
_spawnPoint = grid.ToCoordinates();
@@ -286,7 +289,7 @@ namespace Content.Server.GameTicking
}
// Delete all entities.
foreach (var entity in _entityManager.GetEntities().ToList())
foreach (var entity in EntityManager.GetEntities().ToList())
{
// TODO: Maybe something less naive here?
// FIXME: Actually, definitely.