Grenade Penguin 2: The Reckoning (#13278)

This commit is contained in:
Nemanja
2023-01-01 20:18:47 -05:00
committed by GitHub
parent 19568e6103
commit 0b5000dc76
3 changed files with 21 additions and 4 deletions

View File

@@ -6,6 +6,7 @@ using Content.Server.Roles;
using Content.Server.Traitor;
using Content.Server.Traitor.Uplink;
using Content.Server.MobState;
using Content.Server.NPC.Systems;
using Content.Shared.CCVar;
using Content.Shared.Dataset;
using Content.Shared.Roles;
@@ -26,7 +27,7 @@ public sealed class TraitorRuleSystem : GameRuleSystem
[Dependency] private readonly IConfigurationManager _cfg = default!;
[Dependency] private readonly IObjectivesManager _objectivesManager = default!;
[Dependency] private readonly IChatManager _chatManager = default!;
[Dependency] private readonly GameTicker _gameTicker = default!;
[Dependency] private readonly FactionSystem _faction = default!;
[Dependency] private readonly MobStateSystem _mobStateSystem = default!;
[Dependency] private readonly UplinkSystem _uplink = default!;
@@ -168,6 +169,12 @@ public sealed class TraitorRuleSystem : GameRuleSystem
return false;
}
if (mind.OwnedEntity is not { } entity)
{
Logger.ErrorS("preset", "Mind picked for traitor did not have an attached entity.");
return false;
}
// creadth: we need to create uplink for the antag.
// PDA should be in place already
DebugTools.AssertNotNull(mind.OwnedEntity);
@@ -186,6 +193,9 @@ public sealed class TraitorRuleSystem : GameRuleSystem
Traitors.Add(traitorRole);
traitorRole.GreetTraitor(Codewords);
_faction.RemoveFaction(entity, "NanoTrasen", false);
_faction.AddFaction(entity, "Syndicate");
var maxDifficulty = _cfg.GetCVar(CCVars.TraitorMaxDifficulty);
var maxPicks = _cfg.GetCVar(CCVars.TraitorMaxPicks);