Wrap gateway generator in cvar for dev (#21758)
This commit is contained in:
@@ -3,12 +3,14 @@ using System.Numerics;
|
|||||||
using Content.Server.Gateway.Components;
|
using Content.Server.Gateway.Components;
|
||||||
using Content.Server.Parallax;
|
using Content.Server.Parallax;
|
||||||
using Content.Server.Procedural;
|
using Content.Server.Procedural;
|
||||||
|
using Content.Shared.CCVar;
|
||||||
using Content.Shared.Dataset;
|
using Content.Shared.Dataset;
|
||||||
using Content.Shared.Movement.Components;
|
using Content.Shared.Movement.Components;
|
||||||
using Content.Shared.Parallax.Biomes;
|
using Content.Shared.Parallax.Biomes;
|
||||||
using Content.Shared.Physics;
|
using Content.Shared.Physics;
|
||||||
using Content.Shared.Procedural;
|
using Content.Shared.Procedural;
|
||||||
using Content.Shared.Salvage;
|
using Content.Shared.Salvage;
|
||||||
|
using Robust.Shared.Configuration;
|
||||||
using Robust.Shared.Map;
|
using Robust.Shared.Map;
|
||||||
using Robust.Shared.Map.Components;
|
using Robust.Shared.Map.Components;
|
||||||
using Robust.Shared.Physics.Collision.Shapes;
|
using Robust.Shared.Physics.Collision.Shapes;
|
||||||
@@ -26,6 +28,7 @@ namespace Content.Server.Gateway.Systems;
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public sealed class GatewayGeneratorSystem : EntitySystem
|
public sealed class GatewayGeneratorSystem : EntitySystem
|
||||||
{
|
{
|
||||||
|
[Dependency] private readonly IConfigurationManager _cfgManager = default!;
|
||||||
[Dependency] private readonly IGameTiming _timing = default!;
|
[Dependency] private readonly IGameTiming _timing = default!;
|
||||||
[Dependency] private readonly IMapManager _mapManager = default!;
|
[Dependency] private readonly IMapManager _mapManager = default!;
|
||||||
[Dependency] private readonly IPrototypeManager _protoManager = default!;
|
[Dependency] private readonly IPrototypeManager _protoManager = default!;
|
||||||
@@ -87,6 +90,9 @@ public sealed class GatewayGeneratorSystem : EntitySystem
|
|||||||
|
|
||||||
private void OnGeneratorMapInit(EntityUid uid, GatewayGeneratorComponent generator, MapInitEvent args)
|
private void OnGeneratorMapInit(EntityUid uid, GatewayGeneratorComponent generator, MapInitEvent args)
|
||||||
{
|
{
|
||||||
|
if (!_cfgManager.GetCVar(CCVars.GatewayGeneratorEnabled))
|
||||||
|
return;
|
||||||
|
|
||||||
generator.NextUnlock = TimeSpan.FromMinutes(5);
|
generator.NextUnlock = TimeSpan.FromMinutes(5);
|
||||||
|
|
||||||
for (var i = 0; i < 3; i++)
|
for (var i = 0; i < 3; i++)
|
||||||
@@ -109,6 +115,10 @@ public sealed class GatewayGeneratorSystem : EntitySystem
|
|||||||
var random = new Random(seed);
|
var random = new Random(seed);
|
||||||
var mapId = _mapManager.CreateMap();
|
var mapId = _mapManager.CreateMap();
|
||||||
var mapUid = _mapManager.GetMapEntityId(mapId);
|
var mapUid = _mapManager.GetMapEntityId(mapId);
|
||||||
|
|
||||||
|
var gatewayName = SharedSalvageSystem.GetFTLName(_protoManager.Index<DatasetPrototype>(PlanetNames), seed);
|
||||||
|
_metadata.SetEntityName(mapUid, gatewayName);
|
||||||
|
|
||||||
var origin = new Vector2i(random.Next(-MaxOffset, MaxOffset), random.Next(-MaxOffset, MaxOffset));
|
var origin = new Vector2i(random.Next(-MaxOffset, MaxOffset), random.Next(-MaxOffset, MaxOffset));
|
||||||
var restriction = AddComp<RestrictedRangeComponent>(mapUid);
|
var restriction = AddComp<RestrictedRangeComponent>(mapUid);
|
||||||
restriction.Origin = origin;
|
restriction.Origin = origin;
|
||||||
@@ -127,8 +137,6 @@ public sealed class GatewayGeneratorSystem : EntitySystem
|
|||||||
// Clear area nearby as a sort of landing pad.
|
// Clear area nearby as a sort of landing pad.
|
||||||
_maps.SetTiles(mapUid, grid, tiles);
|
_maps.SetTiles(mapUid, grid, tiles);
|
||||||
|
|
||||||
var gatewayName = SharedSalvageSystem.GetFTLName(_protoManager.Index<DatasetPrototype>(PlanetNames), seed);
|
|
||||||
|
|
||||||
_metadata.SetEntityName(mapUid, gatewayName);
|
_metadata.SetEntityName(mapUid, gatewayName);
|
||||||
var originCoords = new EntityCoordinates(mapUid, origin);
|
var originCoords = new EntityCoordinates(mapUid, origin);
|
||||||
|
|
||||||
|
|||||||
@@ -38,7 +38,6 @@ public sealed partial class BiomeSystem : SharedBiomeSystem
|
|||||||
[Dependency] private readonly IParallelManager _parallel = default!;
|
[Dependency] private readonly IParallelManager _parallel = default!;
|
||||||
[Dependency] private readonly IPlayerManager _playerManager = default!;
|
[Dependency] private readonly IPlayerManager _playerManager = default!;
|
||||||
[Dependency] private readonly IRobustRandom _random = default!;
|
[Dependency] private readonly IRobustRandom _random = default!;
|
||||||
[Dependency] private readonly ISerializationManager _serManager = default!;
|
|
||||||
[Dependency] private readonly AtmosphereSystem _atmos = default!;
|
[Dependency] private readonly AtmosphereSystem _atmos = default!;
|
||||||
[Dependency] private readonly DecalSystem _decals = default!;
|
[Dependency] private readonly DecalSystem _decals = default!;
|
||||||
[Dependency] private readonly SharedMapSystem _mapSystem = default!;
|
[Dependency] private readonly SharedMapSystem _mapSystem = default!;
|
||||||
|
|||||||
@@ -1812,5 +1812,12 @@ namespace Content.Shared.CCVar
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public static readonly CVarDef<string> ReplayAutoRecordTempDir =
|
public static readonly CVarDef<string> ReplayAutoRecordTempDir =
|
||||||
CVarDef.Create("replay.auto_record_temp_dir", "", CVar.SERVERONLY);
|
CVarDef.Create("replay.auto_record_temp_dir", "", CVar.SERVERONLY);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Miscellaneous
|
||||||
|
*/
|
||||||
|
|
||||||
|
public static readonly CVarDef<bool> GatewayGeneratorEnabled =
|
||||||
|
CVarDef.Create("gateway.generator_enabled", true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,6 +5,9 @@ lobbyenabled = false
|
|||||||
map = "Dev"
|
map = "Dev"
|
||||||
role_timers = false
|
role_timers = false
|
||||||
|
|
||||||
|
[gateway]
|
||||||
|
generator_enabled = false
|
||||||
|
|
||||||
[physics]
|
[physics]
|
||||||
# Makes mapping annoying
|
# Makes mapping annoying
|
||||||
grid_splitting = false
|
grid_splitting = false
|
||||||
|
|||||||
Reference in New Issue
Block a user