Remove the ability for command or any antag-safe role from being initial infected in zombie mode #25529 (#25785)
* fix(antags): respects canBeAntag = true * updated more * includeAllJobs = False?????????? * fixed comma placement * removed unused dependencies
This commit is contained in:
@@ -244,10 +244,23 @@ public sealed class ZombieRuleSystem : GameRuleSystem<ZombieRuleComponent>
|
|||||||
/// </remarks>
|
/// </remarks>
|
||||||
private void InfectInitialPlayers(ZombieRuleComponent component)
|
private void InfectInitialPlayers(ZombieRuleComponent component)
|
||||||
{
|
{
|
||||||
//Get all players with initial infected enabled, and exclude those with the ZombieImmuneComponent
|
//Get all players with initial infected enabled, and exclude those with the ZombieImmuneComponent and roles with CanBeAntag = False
|
||||||
var eligiblePlayers = _antagSelection.GetEligiblePlayers(_playerManager.Sessions, component.PatientZeroPrototypeId, includeAllJobs: true, customExcludeCondition: x => HasComp<ZombieImmuneComponent>(x) || HasComp<InitialInfectedExemptComponent>(x));
|
var eligiblePlayers = _antagSelection.GetEligiblePlayers(
|
||||||
//And get all players, excluding ZombieImmune - to fill any leftover initial infected slots
|
_playerManager.Sessions,
|
||||||
var allPlayers = _antagSelection.GetEligiblePlayers(_playerManager.Sessions, component.PatientZeroPrototypeId, acceptableAntags: Shared.Antag.AntagAcceptability.All, includeAllJobs: true, ignorePreferences: true, customExcludeCondition: HasComp<ZombieImmuneComponent>);
|
component.PatientZeroPrototypeId,
|
||||||
|
includeAllJobs: false,
|
||||||
|
customExcludeCondition: player => HasComp<ZombieImmuneComponent>(player) || HasComp<InitialInfectedExemptComponent>(player)
|
||||||
|
);
|
||||||
|
|
||||||
|
//And get all players, excluding ZombieImmune and roles with CanBeAntag = False - to fill any leftover initial infected slots
|
||||||
|
var allPlayers = _antagSelection.GetEligiblePlayers(
|
||||||
|
_playerManager.Sessions,
|
||||||
|
component.PatientZeroPrototypeId,
|
||||||
|
acceptableAntags: Shared.Antag.AntagAcceptability.All,
|
||||||
|
includeAllJobs: false ,
|
||||||
|
ignorePreferences: true,
|
||||||
|
customExcludeCondition: HasComp<ZombieImmuneComponent>
|
||||||
|
);
|
||||||
|
|
||||||
//If there are no players to choose, abort
|
//If there are no players to choose, abort
|
||||||
if (allPlayers.Count == 0)
|
if (allPlayers.Count == 0)
|
||||||
|
|||||||
Reference in New Issue
Block a user