Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ghostrole rule updates #29249

Merged
merged 11 commits into from
Jun 21, 2024
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@ public sealed partial class ToggleableGhostRoleComponent : Component
[DataField("roleDescription")]
public string RoleDescription = string.Empty;

[DataField("roleRules")]
public string RoleRules = string.Empty;

[DataField("wipeVerbText")]
public string WipeVerbText = string.Empty;

Expand Down
3 changes: 2 additions & 1 deletion Content.Server/Ghost/Roles/ToggleableGhostRoleSystem.cs
Original file line number Diff line number Diff line change
Expand Up @@ -53,13 +53,14 @@ private void OnUseInHand(EntityUid uid, ToggleableGhostRoleComponent component,
EnsureComp<GhostTakeoverAvailableComponent>(uid);
ghostRole.RoleName = Loc.GetString(component.RoleName);
ghostRole.RoleDescription = Loc.GetString(component.RoleDescription);
ghostRole.RoleRules = Loc.GetString(component.RoleRules);
}

private void OnExamined(EntityUid uid, ToggleableGhostRoleComponent component, ExaminedEvent args)
{
if (!args.IsInDetailsRange)
return;

if (TryComp<MindContainerComponent>(uid, out var mind) && mind.HasMind)
{
args.PushMarkup(Loc.GetString(component.ExamineTextMindPresent));
Expand Down
113 changes: 43 additions & 70 deletions Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl

Large diffs are not rendered by default.

10 changes: 5 additions & 5 deletions Resources/Prototypes/Entities/Markers/Spawners/ghost_roles.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
- type: GhostRole
name: ghost-role-information-rat-king-name
description: ghost-role-information-rat-king-description
rules: ghost-role-information-rat-king-rules
rules: ghost-role-information-freeagent-rules
raffle:
settings: default
- type: GhostRoleMobSpawner
Expand All @@ -39,7 +39,7 @@
- type: GhostRole
name: ghost-role-information-remilia-name
description: ghost-role-information-remilia-description
rules: ghost-role-information-remilia-rules
rules: ghost-role-information-familiar-rules
raffle:
settings: short
- type: GhostRoleMobSpawner
Expand All @@ -60,7 +60,7 @@
- type: GhostRole
name: ghost-role-information-cerberus-name
description: ghost-role-information-cerberus-description
rules: ghost-role-information-cerberus-rules
rules: ghost-role-information-familiar-rules
raffle:
settings: default
- type: GhostRoleMobSpawner
Expand Down Expand Up @@ -143,7 +143,7 @@
- type: GhostRole
name: ghost-role-information-space-dragon-name
description: ghost-role-information-space-dragon-description
rules: ghost-role-component-default-rules
rules: ghost-role-component-space-dragon-rules
- type: Sprite
layers:
- state: green
Expand All @@ -159,7 +159,7 @@
- type: GhostRole
name: ghost-role-information-space-ninja-name
description: ghost-role-information-space-ninja-description
rules: ghost-role-information-space-ninja-rules
rules: ghost-role-information-antagonist-rules
raffle:
settings: default
- type: GhostRoleMobSpawner
Expand Down
8 changes: 8 additions & 0 deletions Resources/Prototypes/Entities/Mobs/NPCs/animals.yml
Original file line number Diff line number Diff line change
Expand Up @@ -421,6 +421,7 @@
allowMovement: true
name: ghost-role-information-mothroach-name
description: ghost-role-information-mothroach-description
rules: ghost-role-information-freeagent-rules
- type: Fixtures
fixtures:
fix1:
Expand Down Expand Up @@ -1104,6 +1105,7 @@
prob: 0.25
name: ghost-role-information-kangaroo-name
description: ghost-role-information-kangaroo-description
rules: ghost-role-information-nonantagonist-rules
- type: GhostTakeoverAvailable
- type: Vocal
sounds:
Expand Down Expand Up @@ -1278,6 +1280,7 @@
makeSentient: true
name: ghost-role-information-monkey-name
description: ghost-role-information-monkey-description
rules: ghost-role-information-nonantagonist-rules
- type: GhostTakeoverAvailable
- type: Clumsy
clumsyDamage:
Expand Down Expand Up @@ -1312,6 +1315,7 @@
makeSentient: true
name: ghost-role-information-monkey-name
description: ghost-role-information-monkey-description
rules: ghost-role-information-syndicate-monkey-reinforcement-rules
raffle:
settings: default
- type: GhostTakeoverAvailable
Expand Down Expand Up @@ -1443,6 +1447,7 @@
makeSentient: true
name: ghost-role-information-kobold-name
description: ghost-role-information-kobold-description
rules: ghost-role-information-nonantagonist-rules

- type: entity
name: kobold
Expand Down Expand Up @@ -1516,6 +1521,7 @@
allowMovement: true
name: ghost-role-information-mouse-name
description: ghost-role-information-mouse-description
rules: ghost-role-information-freeagent-rules
- type: GhostTakeoverAvailable
- type: Speech
speechSounds: Squeak
Expand Down Expand Up @@ -2307,6 +2313,7 @@
makeSentient: true
name: ghost-role-information-giant-spider-name
description: ghost-role-information-giant-spider-description
rules: ghost-role-information-giant-spider-rules
raffle:
settings: short
- type: GhostTakeoverAvailable
Expand Down Expand Up @@ -3086,6 +3093,7 @@
allowMovement: true
name: ghost-role-information-hamster-name
description: ghost-role-information-hamster-description
rules: ghost-role-information-nonantagonist-rules
- type: GhostTakeoverAvailable
- type: Speech
speechVerb: SmallMob
Expand Down
1 change: 1 addition & 0 deletions Resources/Prototypes/Entities/Mobs/NPCs/behonker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
makeSentient: true
name: ghost-role-information-behonker-name
description: ghost-role-information-behonker-description
rules: ghost-role-information-antagonist-rules
raffle:
settings: default
- type: GhostTakeoverAvailable
Expand Down
1 change: 1 addition & 0 deletions Resources/Prototypes/Entities/Mobs/NPCs/carp.yml
Original file line number Diff line number Diff line change
Expand Up @@ -163,6 +163,7 @@
makeSentient: true
name: ghost-role-information-sentient-carp-name
description: ghost-role-information-sentient-carp-description
rules: ghost-role-information-space-dragon-summoned-carp-rules
raffle:
settings: short
- type: GhostTakeoverAvailable
Expand Down
1 change: 1 addition & 0 deletions Resources/Prototypes/Entities/Mobs/NPCs/elemental.yml
Original file line number Diff line number Diff line change
Expand Up @@ -232,6 +232,7 @@
- type: GhostRole
prob: 0
description: ghost-role-information-angry-slimes-description
rules: ghost-role-information-angry-slimes-rules
raffle:
settings: short
- type: NpcFactionMember
Expand Down
1 change: 1 addition & 0 deletions Resources/Prototypes/Entities/Mobs/NPCs/hellspawn.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
makeSentient: true
name: ghost-role-information-hellspawn-name
description: ghost-role-information-hellspawn-description
rules: ghost-role-information-antagonist-rules
raffle:
settings: default
- type: RotationVisuals
Expand Down
5 changes: 5 additions & 0 deletions Resources/Prototypes/Entities/Mobs/NPCs/pets.yml
Original file line number Diff line number Diff line change
Expand Up @@ -572,6 +572,7 @@
allowMovement: true
name: ghost-role-information-hamlet-name
description: ghost-role-information-hamlet-description
rules: ghost-role-information-nonantagonist-rules
- type: GhostTakeoverAvailable
- type: InteractionPopup
successChance: 1
Expand Down Expand Up @@ -686,6 +687,7 @@
prob: 0.25
name: ghost-role-information-willow-name
description: ghost-role-information-willow-description
rules: ghost-role-information-nonantagonist-rules
- type: GhostTakeoverAvailable
- type: Loadout
prototypes: [ BoxingKangarooGear ]
Expand Down Expand Up @@ -756,6 +758,7 @@
- type: GhostRole
name: ghost-role-information-smile-name
description: ghost-role-information-smile-description
rules: ghost-role-information-nonantagonist-rules
- type: Grammar
attributes:
proper: true
Expand All @@ -774,6 +777,7 @@
allowMovement: true
name: ghost-role-information-punpun-name
description: ghost-role-information-punpun-description
rules: ghost-role-information-nonantagonist-rules
- type: GhostTakeoverAvailable
- type: Butcherable
butcheringType: Spike
Expand Down Expand Up @@ -807,6 +811,7 @@
# allowMovement: true
# name: ghost-role-information-tropico-name
# description: ghost-role-information-tropico-description
# rules: ghost-role-information-nonantagonist-rules
# - type: GhostTakeoverAvailable
- type: Tag
tags:
Expand Down
2 changes: 1 addition & 1 deletion Resources/Prototypes/Entities/Mobs/NPCs/regalrat.yml
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@
makeSentient: true
name: ghost-role-information-rat-king-name
description: ghost-role-information-rat-king-description
rules: ghost-role-information-rat-king-rules
rules: ghost-role-information-freeagent-rules
raffle:
settings: default
- type: GhostTakeoverAvailable
Expand Down
2 changes: 1 addition & 1 deletion Resources/Prototypes/Entities/Mobs/NPCs/revenant.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@
makeSentient: true
name: ghost-role-information-revenant-name
description: ghost-role-information-revenant-description
rules: ghost-role-information-revenant-rules
rules: ghost-role-information-antagonist-rules
raffle:
settings: default
- type: GhostTakeoverAvailable
Expand Down
4 changes: 4 additions & 0 deletions Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml
Original file line number Diff line number Diff line change
Expand Up @@ -156,6 +156,7 @@
makeSentient: true
name: ghost-role-information-honkbot-name
description: ghost-role-information-honkbot-description
rules: ghost-role-information-freeagent-rules
raffle:
settings: default
- type: GhostTakeoverAvailable
Expand Down Expand Up @@ -183,6 +184,7 @@
makeSentient: true
name: ghost-role-information-jonkbot-name
description: ghost-role-information-jonkbot-description
rules: ghost-role-information-freeagent-rules
raffle:
settings: default
- type: InteractionPopup
Expand Down Expand Up @@ -315,6 +317,7 @@
makeSentient: true
name: ghost-role-information-mimebot-name
description: ghost-role-information-mimebot-description
rules: ghost-role-information-freeagent-rules
raffle:
settings: default
- type: GhostTakeoverAvailable
Expand All @@ -338,6 +341,7 @@
makeSentient: true
name: ghost-role-information-supplybot-name
description: ghost-role-information-supplybot-description
rules: ghost-role-information-nonantagonist-rules
raffle:
settings: default
- type: GhostTakeoverAvailable
Expand Down
4 changes: 4 additions & 0 deletions Resources/Prototypes/Entities/Mobs/NPCs/slimes.yml
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,7 @@
makeSentient: true
name: ghost-role-information-slimes-name
description: ghost-role-information-slimes-description
rules: ghost-role-information-nonantagonist-rules
raffle:
settings: short
- type: Speech
Expand Down Expand Up @@ -200,6 +201,7 @@
- SimpleHostile
- type: GhostRole
description: ghost-role-information-angry-slimes-description
rules: ghost-role-information-angry-slimes-rules
raffle:
settings: short

Expand Down Expand Up @@ -237,6 +239,7 @@
- SimpleHostile
- type: GhostRole
description: ghost-role-information-angry-slimes-description
rules: ghost-role-information-angry-slimes-rules
raffle:
settings: short

Expand Down Expand Up @@ -274,5 +277,6 @@
- SimpleHostile
- type: GhostRole
description: ghost-role-information-angry-slimes-description
rules: ghost-role-information-angry-slimes-rules
raffle:
settings: short
3 changes: 2 additions & 1 deletion Resources/Prototypes/Entities/Mobs/Player/dragon.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
makeSentient: true
name: ghost-role-information-space-dragon-name
description: ghost-role-information-space-dragon-description
rules: ghost-role-information-space-dragon-rules
raffle:
settings: default
- type: GhostTakeoverAvailable
Expand Down Expand Up @@ -142,7 +143,6 @@
- type: entity
parent: BaseMobDragon
id: MobDragon
suffix: No role or objectives
components:
- type: Dragon
spawnRiftAction: ActionSpawnRift
Expand Down Expand Up @@ -180,6 +180,7 @@
components:
- type: GhostRole
description: ghost-role-information-space-dragon-dungeon-description
rules: ghost-role-information-space-dragon-dungeon-rules
raffle:
settings: default
- type: SlowOnDamage
Expand Down
4 changes: 2 additions & 2 deletions Resources/Prototypes/Entities/Mobs/Player/familiars.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
allowSpeech: true
name: ghost-role-information-remilia-name
description: ghost-role-information-remilia-description
rules: ghost-role-information-remilia-rules
rules: ghost-role-information-familiar-rules
- type: GhostTakeoverAvailable
- type: Grammar
attributes:
Expand Down Expand Up @@ -43,7 +43,7 @@
allowSpeech: true
name: ghost-role-information-cerberus-name
description: ghost-role-information-cerberus-description
rules: ghost-role-information-cerberus-rules
rules: ghost-role-information-familiar-rules
raffle:
settings: default
- type: GhostTakeoverAvailable
Expand Down
4 changes: 4 additions & 0 deletions Resources/Prototypes/Entities/Mobs/Player/guardian.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
makeSentient: true
name: ghost-role-information-guardian-name
description: ghost-role-information-guardian-description
rules: ghost-role-information-familiar-rules
raffle:
settings: default
- type: GhostTakeoverAvailable
Expand Down Expand Up @@ -122,6 +123,7 @@
makeSentient: true
name: ghost-role-information-holoparasite-name
description: ghost-role-information-holoparasite-description
rules: ghost-role-information-familiar-rules
raffle:
settings: default
- type: GhostTakeoverAvailable
Expand Down Expand Up @@ -154,6 +156,7 @@
makeSentient: true
name: ghost-role-information-ifrit-name
description: ghost-role-information-ifrit-description
rules: ghost-role-information-familiar-rules
raffle:
settings: default
- type: GhostTakeoverAvailable
Expand Down Expand Up @@ -182,6 +185,7 @@
makeSentient: true
name: ghost-role-information-holoclown-name
description: ghost-role-information-holoclown-description
rules: ghost-role-information-familiar-rules
raffle:
settings: default
- type: GhostTakeoverAvailable
Expand Down
Loading
Loading