Fix ERT becoming sleeper agents and add sleeper agent preferences (#27817)

* b

* Update antags.ftl

* m

* ok

* Update events.yml

* antag

* a

* Create InitialInfectedExemptComponent.cs

* Delete InitialInfectedExemptComponent.cs

* yes

* Delete InitialInfectedExemptComponent.cs

* Create AntagImmuneComponent.cs
This commit is contained in:
Mr. 27 2024-06-20 13:12:58 +02:00 committed by null
parent 92c895022c
commit b7f4740a95
No known key found for this signature in database
GPG Key ID: 212F05528FD678BE
7 changed files with 31 additions and 19 deletions

View File

@ -0,0 +1,7 @@
namespace Content.Server.Antag.Components;
[RegisterComponent]
public partial class AntagImmuneComponent : Component
{
}

View File

@ -1,7 +0,0 @@
namespace Content.Server.Zombies;
[RegisterComponent]
public sealed partial class InitialInfectedExemptComponent : Component
{
}

View File

@ -1,6 +1,9 @@
roles-antag-syndicate-agent-name = Syndicate agent
roles-antag-syndicate-agent-objective = Complete your objectives without being caught.
roles-antag-syndicate-agent-sleeper-name = Syndicate sleeper agent
roles-antag-syndicate-agent-sleeper-objective = A form of syndicate agent that can activate at any point in the middle of the shift.
roles-antag-initial-infected-name = Initial Infected
roles-antag-initial-infected-objective = Once you turn, infect as many other crew members as possible.

View File

@ -12,7 +12,7 @@
parent: EventHumanoid
components:
- type: MindShield
- type: InitialInfectedExempt
- type: AntagImmune
## Death Squad
@ -30,7 +30,6 @@
- NamesLastMilitary
- type: RandomHumanoidSpawner
settings: DeathSquad
- type: InitialInfectedExempt
- type: randomHumanoidSettings
id: DeathSquad
@ -66,7 +65,6 @@
- NamesLastMilitary
- type: RandomHumanoidSpawner
settings: ERTLeader
- type: InitialInfectedExempt
- type: randomHumanoidSettings
id: ERTLeader
@ -96,7 +94,6 @@
state: ertleadereva
- type: RandomHumanoidSpawner
settings: ERTLeaderEVA
- type: InitialInfectedExempt
- type: randomHumanoidSettings
id: ERTLeaderEVA
@ -117,7 +114,6 @@
components:
- type: RandomHumanoidSpawner
settings: ERTLeaderEVALecter
- type: InitialInfectedExempt
- type: randomHumanoidSettings
id: ERTLeaderEVALecter
@ -453,7 +449,6 @@
state: cburn
- type: RandomHumanoidSpawner
settings: CBURNAgent
- type: InitialInfectedExempt
- type: randomHumanoidSettings
id: CBURNAgent
@ -470,6 +465,7 @@
nameSegments:
- NamesFirstMilitary
- NamesLastMilitary
## Central Command
- type: entity
@ -481,7 +477,6 @@
state: centcom
- type: RandomHumanoidSpawner
settings: CentcomOfficial
- type: InitialInfectedExempt
- type: randomHumanoidSettings
id: CentcomOfficial

View File

@ -431,7 +431,7 @@
blacklist:
components:
- ZombieImmune
- InitialInfectedExempt
- AntagImmune
briefing:
text: zombie-patientzero-role-greeting
color: Plum
@ -485,7 +485,7 @@
- type: entity
noSpawn: true
parent: BaseTraitorRule
id: SleeperAgentsRule
id: SleeperAgents
components:
- type: StationEvent
earliestStart: 30
@ -498,13 +498,17 @@
- type: AlertLevelInterceptionRule
- type: AntagSelection
definitions:
- prefRoles: [ Traitor ]
- prefRoles: [ TraitorSleeper ]
fallbackRoles: [ Traitor ]
min: 1
max: 4 # DeltaV - Was 2 now 4
playerRatio: 10
blacklist:
components:
- AntagImmune
mindComponents:
- type: TraitorRole
prototype: Traitor
prototype: TraitorSleeper
- type: entity
id: MassHallucinations

View File

@ -181,6 +181,9 @@
- prefRoles: [ Traitor ]
max: 8
playerRatio: 10
blacklist:
components:
- AntagImmune
lateJoinAdditional: true
mindComponents:
- type: TraitorRole
@ -244,7 +247,7 @@
blacklist:
components:
- ZombieImmune
- InitialInfectedExempt
- AntagImmune
briefing:
text: zombie-patientzero-role-greeting
color: Plum

View File

@ -7,3 +7,10 @@
requirements:
- !type:OverallPlaytimeRequirement # DeltaV - Playtime requirement
time: 86400 # DeltaV - 24 hours
- type: antag
id: TraitorSleeper
name: roles-antag-syndicate-agent-sleeper-name
antagonist: true
setPreference: true
objective: roles-antag-syndicate-agent-sleeper-objective