Files
OldThink/Content.Server/GameTicking/Rules/SubGamemodesSystem.cs

18 lines
619 B
C#
Raw Normal View History

using Content.Server.GameTicking.Rules.Components;
using Content.Shared.Storage;
namespace Content.Server.GameTicking.Rules;
public sealed class SubGamemodesSystem : GameRuleSystem<SubGamemodesComponent>
{
protected override void Added(EntityUid uid, SubGamemodesComponent comp, GameRuleComponent rule, GameRuleAddedEvent args)
{
var picked = EntitySpawnCollection.GetSpawns(comp.Rules, RobustRandom);
foreach (var id in picked)
{
Log.Info($"Starting gamerule {id} as a subgamemode of {ToPrettyString(uid):rule}");
GameTicker.AddGameRule(id);
}
}
}