From 9cf3fb6aef0474cfa011587b65734f0c174d8478 Mon Sep 17 00:00:00 2001 From: Vanessa Date: Tue, 23 Dec 2025 16:25:35 -0600 Subject: [PATCH] Migrated the psionic reolling stuff to the new ECS system. Am I out of this hellhole yet? --- .../AffectsGlimmerEntityEffectSystem.cs | 37 ++++++++ ...emovePsionicAbilitiesEntityEffectSystem.cs | 34 ++++++++ ...erollPsionicAbilitiesEntityEffectSystem.cs | 38 +++++++++ .../EntityEffects/Effects/ActivateArtifact.cs | 9 -- .../Chemistry/Effects/ChemRemovePsionic.cs | 16 ---- .../Chemistry/Effects/ChemRerollPsionic.cs | 22 ----- .../ChangeGlimmerReactionEffect.cs | 26 ------ .../HasComponentsConditionSystem.cs | 85 +++++++++++++++++++ .../EffectConditions/HasComponent.cs | 78 ----------------- .../SharedCorticalBorerSystem.cs | 7 +- .../en-US/nyanotrasen/chemistry/effects.ftl | 2 +- .../Nyanotrasen/Reagents/psionic.yml | 4 +- .../Nyanotrasen/Recipes/Reactions/food.yml | 4 +- Resources/Prototypes/Reagents/narcotics.yml | 2 +- Resources/Prototypes/Reagents/toxins.yml | 2 +- .../Prototypes/_DV/CosmicCult/entropy.yml | 6 +- .../Prototypes/_DV/Reagents/medicine.yml | 2 +- .../Prototypes/_DV/Recipes/Reactions/fun.yml | 4 +- .../_DV/Recipes/Reactions/psionic.yml | 6 +- .../_Floof/Recipes/Reactions/food.yml | 2 +- .../_Funkystation/Reagents/exotic.yml | 2 +- .../Recipes/Reactions/exotic.yml | 2 +- 22 files changed, 216 insertions(+), 174 deletions(-) create mode 100644 Content.Server/_DV/EntityEffects/Effects/AffectsGlimmerEntityEffectSystem.cs create mode 100644 Content.Server/_DV/EntityEffects/Effects/RemovePsionicAbilitiesEntityEffectSystem.cs create mode 100644 Content.Server/_DV/EntityEffects/Effects/RerollPsionicAbilitiesEntityEffectSystem.cs delete mode 100644 Content.Shared/EntityEffects/Effects/ActivateArtifact.cs delete mode 100644 Content.Shared/Nyanotrasen/Chemistry/Effects/ChemRemovePsionic.cs delete mode 100644 Content.Shared/Nyanotrasen/Chemistry/Effects/ChemRerollPsionic.cs delete mode 100644 Content.Shared/Nyanotrasen/Chemistry/ReactionEffects/ChangeGlimmerReactionEffect.cs create mode 100644 Content.Shared/_DV/EntityConditions/Conditions/HasComponentsConditionSystem.cs delete mode 100644 Content.Shared/_DV/EntityEffects/EffectConditions/HasComponent.cs diff --git a/Content.Server/_DV/EntityEffects/Effects/AffectsGlimmerEntityEffectSystem.cs b/Content.Server/_DV/EntityEffects/Effects/AffectsGlimmerEntityEffectSystem.cs new file mode 100644 index 0000000000..11c12bf2bf --- /dev/null +++ b/Content.Server/_DV/EntityEffects/Effects/AffectsGlimmerEntityEffectSystem.cs @@ -0,0 +1,37 @@ +using Content.Shared._DV.Pain; +using Content.Shared.EntityEffects; +using Content.Shared.StatusEffect; +using Robust.Shared.Prototypes; +using Content.Server.Abilities.Psionics; +using Content.Server.Psionics; +using Content.Shared.Psionics.Glimmer; + +namespace Content.Server._DV.EntityEffects.Effects; + +// TODO: When Pain is moved to new Status, make this use StatusEffectsContainerComponent. +/// +/// Supresses pain based on how much of the pain suppressing reagent is in the system. +/// +/// +public sealed partial class AffectsGlimmerEntityEffectSystem : EntityEffectSystem +{ + [Dependency] private readonly GlimmerSystem _glimmer = default!; + protected override void Effect(Entity entity, ref EntityEffectEvent args) + { + _glimmer.Glimmer += args.Effect.Amount; + } +} + +/// +public sealed partial class AffectsGlimmer : EntityEffectBase +{ + /// + /// Amount that is added or subtracted from glimmer. + /// + [DataField] + public int Amount = 1; + + public override string? EntityEffectGuidebookText(IPrototypeManager prototype, IEntitySystemManager entSys) + => Loc.GetString("reagent-effect-guidebook-change-glimmer-reaction-effect", ("chance", Probability), + ("amount", Amount)); +} diff --git a/Content.Server/_DV/EntityEffects/Effects/RemovePsionicAbilitiesEntityEffectSystem.cs b/Content.Server/_DV/EntityEffects/Effects/RemovePsionicAbilitiesEntityEffectSystem.cs new file mode 100644 index 0000000000..9c953a3c65 --- /dev/null +++ b/Content.Server/_DV/EntityEffects/Effects/RemovePsionicAbilitiesEntityEffectSystem.cs @@ -0,0 +1,34 @@ +using Content.Shared._DV.Pain; +using Content.Shared.EntityEffects; +using Content.Shared.StatusEffect; +using Robust.Shared.Prototypes; +using Content.Server.Abilities.Psionics; +using Content.Server.Psionics; + +namespace Content.Server._DV.EntityEffects.Effects; + +// TODO: When Pain is moved to new Status, make this use StatusEffectsContainerComponent. +/// +/// Supresses pain based on how much of the pain suppressing reagent is in the system. +/// +/// +public sealed partial class RemovePsionicAbilitiesEntityEffectSystem : EntityEffectSystem +{ + [Dependency] private readonly PsionicsSystem _psionic = default!; + [Dependency] private readonly PsionicAbilitiesSystem _psionicAbilities = default!; + protected override void Effect(Entity entity, ref EntityEffectEvent args) + { + if (args.Scale != 1f) + return; + + _psionicAbilities.RemovePsionics(entity); + _psionic.GrantNewPsionicReroll(entity); + } +} + +/// +public sealed partial class RemovePsionicAbilities : EntityEffectBase +{ + public override string? EntityEffectGuidebookText(IPrototypeManager prototype, IEntitySystemManager entSys) + => Loc.GetString("reagent-effect-guidebook-chem-remove-psionic", ("chance", Probability)); +} diff --git a/Content.Server/_DV/EntityEffects/Effects/RerollPsionicAbilitiesEntityEffectSystem.cs b/Content.Server/_DV/EntityEffects/Effects/RerollPsionicAbilitiesEntityEffectSystem.cs new file mode 100644 index 0000000000..286f096441 --- /dev/null +++ b/Content.Server/_DV/EntityEffects/Effects/RerollPsionicAbilitiesEntityEffectSystem.cs @@ -0,0 +1,38 @@ +using Content.Shared._DV.Pain; +using Content.Shared.EntityEffects; +using Content.Shared.StatusEffect; +using Robust.Shared.Prototypes; +using Content.Server.Abilities.Psionics; +using Content.Server.Psionics; + +namespace Content.Server._DV.EntityEffects.Effects; + +// TODO: When Pain is moved to new Status, make this use StatusEffectsContainerComponent. +/// +/// Supresses pain based on how much of the pain suppressing reagent is in the system. +/// +/// +public sealed partial class RerollPsionicAbilitiesEntityEffectSystem : EntityEffectSystem +{ + [Dependency] private readonly PsionicsSystem _psionic = default!; + protected override void Effect(Entity entity, ref EntityEffectEvent args) + { + if (args.Scale != 1f) + return; + + _psionic.RerollPsionics(entity, bonusMuliplier: args.Effect.BonusMultiplier); + } +} + +/// +public sealed partial class RerollPsionicAbilities : EntityEffectBase +{ + /// + /// Reroll multiplier. + /// + [DataField("bonusMultiplier")] + public float BonusMultiplier = 1f; + + public override string? EntityEffectGuidebookText(IPrototypeManager prototype, IEntitySystemManager entSys) + => Loc.GetString("reagent-effect-guidebook-chem-reroll-psionic", ("chance", Probability)); +} diff --git a/Content.Shared/EntityEffects/Effects/ActivateArtifact.cs b/Content.Shared/EntityEffects/Effects/ActivateArtifact.cs deleted file mode 100644 index d5b00112a6..0000000000 --- a/Content.Shared/EntityEffects/Effects/ActivateArtifact.cs +++ /dev/null @@ -1,9 +0,0 @@ -using Robust.Shared.Prototypes; - -namespace Content.Shared.EntityEffects.Effects; - -public sealed partial class ActivateArtifact : EventEntityEffect -{ - protected override string? ReagentEffectGuidebookText(IPrototypeManager prototype, IEntitySystemManager entSys) => - Loc.GetString("reagent-effect-guidebook-activate-artifact", ("chance", Probability)); -} diff --git a/Content.Shared/Nyanotrasen/Chemistry/Effects/ChemRemovePsionic.cs b/Content.Shared/Nyanotrasen/Chemistry/Effects/ChemRemovePsionic.cs deleted file mode 100644 index cd7a534e20..0000000000 --- a/Content.Shared/Nyanotrasen/Chemistry/Effects/ChemRemovePsionic.cs +++ /dev/null @@ -1,16 +0,0 @@ -using Content.Shared.EntityEffects; -using JetBrains.Annotations; -using Robust.Shared.Prototypes; - -namespace Content.Shared.Nyanotrasen.Chemistry.Effects -{ - /// - /// Rerolls psionics once. - /// - [UsedImplicitly] - public sealed partial class ChemRemovePsionic : EventEntityEffect - { - protected override string? ReagentEffectGuidebookText(IPrototypeManager prototype, IEntitySystemManager entSys) - => Loc.GetString("reagent-effect-guidebook-chem-remove-psionic", ("chance", Probability)); - } -} diff --git a/Content.Shared/Nyanotrasen/Chemistry/Effects/ChemRerollPsionic.cs b/Content.Shared/Nyanotrasen/Chemistry/Effects/ChemRerollPsionic.cs deleted file mode 100644 index e804ee7b43..0000000000 --- a/Content.Shared/Nyanotrasen/Chemistry/Effects/ChemRerollPsionic.cs +++ /dev/null @@ -1,22 +0,0 @@ -using Content.Shared.EntityEffects; -using JetBrains.Annotations; -using Robust.Shared.Prototypes; - -namespace Content.Shared.Nyanotrasen.Chemistry.Effects -{ - /// - /// Rerolls psionics once. - /// - [UsedImplicitly] - public sealed partial class ChemRerollPsionic : EventEntityEffect - { - protected override string? ReagentEffectGuidebookText(IPrototypeManager prototype, IEntitySystemManager entSys) - => Loc.GetString("reagent-effect-guidebook-chem-reroll-psionic", ("chance", Probability)); - - /// - /// Reroll multiplier. - /// - [DataField("bonusMultiplier")] - public float BonusMuliplier = 1f; - } -} diff --git a/Content.Shared/Nyanotrasen/Chemistry/ReactionEffects/ChangeGlimmerReactionEffect.cs b/Content.Shared/Nyanotrasen/Chemistry/ReactionEffects/ChangeGlimmerReactionEffect.cs deleted file mode 100644 index e017273fe1..0000000000 --- a/Content.Shared/Nyanotrasen/Chemistry/ReactionEffects/ChangeGlimmerReactionEffect.cs +++ /dev/null @@ -1,26 +0,0 @@ -using Content.Shared.EntityEffects; -using Content.Shared.Psionics.Glimmer; -using Robust.Shared.Prototypes; - -namespace Content.Shared.Nyanotrasen.Chemistry.ReactionEffects; - -[DataDefinition] -public sealed partial class ChangeGlimmerReactionEffect : EntityEffect -{ - protected override string? ReagentEffectGuidebookText(IPrototypeManager prototype, IEntitySystemManager entSys) - => Loc.GetString("reagent-effect-guidebook-change-glimmer-reaction-effect", ("chance", Probability), - ("count", Count)); - - /// - /// Added to glimmer when reaction occurs. - /// - [DataField("count")] - public int Count = 1; - - public override void Effect(EntityEffectBaseArgs args) - { - var glimmersys = args.EntityManager.EntitySysManager.GetEntitySystem(); - - glimmersys.Glimmer += Count; - } -} diff --git a/Content.Shared/_DV/EntityConditions/Conditions/HasComponentsConditionSystem.cs b/Content.Shared/_DV/EntityConditions/Conditions/HasComponentsConditionSystem.cs new file mode 100644 index 0000000000..8fd6881117 --- /dev/null +++ b/Content.Shared/_DV/EntityConditions/Conditions/HasComponentsConditionSystem.cs @@ -0,0 +1,85 @@ +using System.Linq; +using Content.Shared.EntityEffects; +using Content.Shared.Body.Part; +using Content.Shared.Body.Systems; +using Content.Shared.Nutrition.Components; +using Content.Shared.Nutrition.EntitySystems; +using Content.Shared.EntityConditions; +using Content.Shared.Mobs; +using Content.Shared.Mobs.Components; +using Robust.Shared.Prototypes; +using Robust.Shared.Localization; + +namespace Content.Shared._DV.EntityConditions.Conditions; + +/// +/// Reagent effect condition that depends on if the entity has a given component(s), potentially on a body part. +/// +/// +public sealed partial class HasComponentsConditionSystem : EntityConditionSystem +{ + [Dependency] private readonly EntityManager _ent = default!; + [Dependency] private readonly SharedBodySystem _body = default!; + + protected override void Condition(Entity entity, ref EntityConditionEvent args) + { + var targetEntity = args.Condition.BodyPart is { } bodyPart + ? _body.GetBodyChildrenOfType(entity.Owner, bodyPart, symmetry: args.Condition.BodyPartSymmetry).Select(it => it.Id).FirstOrDefault() + : entity.Owner; + + if (!targetEntity.IsValid()) + { + args.Result = !args.Condition.ShouldHave; + return; + } + + var tested = + args.Condition.ConsiderAll + ? args.Condition.Components.Values.All(c => _ent.HasComponent(entity, c.Component.GetType())) + : args.Condition.Components.Values.Any(c => _ent.HasComponent(entity, c.Component.GetType())); + + args.Result = tested ^ !args.Condition.ShouldHave; + } +} + +/// +public sealed partial class HasComponentCondition : EntityConditionBase +{ + /// + /// The set of components that this condition cares about + /// + [DataField(required: true)] + public ComponentRegistry Components; + + /// + /// Whether or not the given components should be present + /// + [DataField] + public bool ShouldHave = true; + + /// + /// Whether the check is an existential or universal check + /// + [DataField] + public bool ConsiderAll; + + /// + /// The explanation displayed in the guidebook for this condition + /// + [DataField(required: true)] + public LocId Explanation; + + /// + /// The body part of the entity to test for the components + /// + [DataField] + public BodyPartType? BodyPart; + + /// + /// The side of the entity's body to test for the components + /// + [DataField] + public BodyPartSymmetry? BodyPartSymmetry; + + public override string EntityConditionGuidebookText(IPrototypeManager prototype) => Loc.GetString(Explanation); +} diff --git a/Content.Shared/_DV/EntityEffects/EffectConditions/HasComponent.cs b/Content.Shared/_DV/EntityEffects/EffectConditions/HasComponent.cs deleted file mode 100644 index 1ca4e0bbbb..0000000000 --- a/Content.Shared/_DV/EntityEffects/EffectConditions/HasComponent.cs +++ /dev/null @@ -1,78 +0,0 @@ -using System.Linq; -using Content.Shared.EntityEffects; -using Content.Shared.Nutrition.Components; -using Content.Shared.Nutrition.EntitySystems; -using Robust.Shared.Prototypes; -using Robust.Shared.Localization; -using Content.Shared.Body.Part; -using Content.Shared.Body.Systems; - -namespace Content.Shared._DV.EntityEffects.EffectConditions; - -/// -/// Reagent effect condition that depends on if the entity has a given component(s), potentially on a body part -/// -public sealed partial class HasComponent : EntityEffectCondition -{ - /// - /// The set of components that this condition cares about - /// - [DataField(required: true)] - public ComponentRegistry Components; - - /// - /// Whether or not the given components should be present - /// - [DataField] - public bool ShouldHave = true; - - /// - /// Whether the check is an existential or universal check - /// - [DataField] - public bool ConsiderAll; - - /// - /// The explanation displayed in the guidebook for this condition - /// - [DataField(required: true)] - public LocId Explanation; - - /// - /// The body part of the entity to test for the components - /// - [DataField] - public BodyPartType? BodyPart; - - /// - /// The side of the entity's body to test for the components - /// - [DataField] - public BodyPartSymmetry? BodyPartSymmetry; - - public override bool Condition(EntityEffectBaseArgs args) - { - var _body = args.EntityManager.System(); - var entity = - BodyPart is {} bodyPart - ? _body.GetBodyChildrenOfType(args.TargetEntity, bodyPart, symmetry: BodyPartSymmetry).Select(it => it.Id).FirstOrDefault() - : args.TargetEntity; - - if (!entity.IsValid()) - { - return !ShouldHave; - } - - var tested = - ConsiderAll - ? Components.Values.All(c => args.EntityManager.HasComponent(entity, c.Component.GetType())) - : Components.Values.Any(c => args.EntityManager.HasComponent(entity, c.Component.GetType())); - - return tested ^ !ShouldHave; - } - - public override string GuidebookExplanation(IPrototypeManager prototype) - { - return Loc.GetString(Explanation); - } -} diff --git a/Content.Shared/_Mono/CorticalBorer/SharedCorticalBorerSystem.cs b/Content.Shared/_Mono/CorticalBorer/SharedCorticalBorerSystem.cs index 3ff0dea981..641feab0e1 100644 --- a/Content.Shared/_Mono/CorticalBorer/SharedCorticalBorerSystem.cs +++ b/Content.Shared/_Mono/CorticalBorer/SharedCorticalBorerSystem.cs @@ -36,8 +36,7 @@ public partial class SharedCorticalBorerSystem : EntitySystem public bool CanUseAbility(Entity ent, EntityUid target) { - if (_statusEffects.HasStatusEffect(target, - "CorticalBorerProtection")) // hardcoded the status effect because... + if (_statusEffects.HasStatusEffect(target, "CorticalBorerProtection")) // hardcoded the status effect because... { _popup.PopupEntity(Loc.GetString("cortical-borer-sugar-block"), ent.Owner, ent.Owner, PopupType.Medium); return false; @@ -101,8 +100,8 @@ public partial class SharedCorticalBorerSystem : EntitySystem // close all the UIs that relate to host if (TryComp(ent, out var uic)) { - _ui.CloseUi((ent.Owner,uic), HealthAnalyzerUiKey.Key); - _ui.CloseUi((ent.Owner,uic), CorticalBorerDispenserUiKey.Key); + _ui.CloseUi((ent.Owner, uic), HealthAnalyzerUiKey.Key); + _ui.CloseUi((ent.Owner, uic), CorticalBorerDispenserUiKey.Key); } RemCompDeferred(ent.Comp.Host.Value); diff --git a/Resources/Locale/en-US/nyanotrasen/chemistry/effects.ftl b/Resources/Locale/en-US/nyanotrasen/chemistry/effects.ftl index 19aeebee69..a82aae768c 100644 --- a/Resources/Locale/en-US/nyanotrasen/chemistry/effects.ftl +++ b/Resources/Locale/en-US/nyanotrasen/chemistry/effects.ftl @@ -2,7 +2,7 @@ reagent-effect-guidebook-change-glimmer-reaction-effect = { $chance -> [1] Modifies *[other] modify - } the glimmer count by {$count} points + } the glimmer count by {$amount} points reagent-effect-guidebook-chem-remove-psionic = { $chance -> diff --git a/Resources/Prototypes/Nyanotrasen/Reagents/psionic.yml b/Resources/Prototypes/Nyanotrasen/Reagents/psionic.yml index c5fbaed36f..47a168430c 100644 --- a/Resources/Prototypes/Nyanotrasen/Reagents/psionic.yml +++ b/Resources/Prototypes/Nyanotrasen/Reagents/psionic.yml @@ -56,7 +56,7 @@ damage: groups: Toxin: 2 - - !type:ChemRemovePsionic + - !type:RemovePsionicAbilities conditions: - !type:ReagentCondition reagent: SoulbreakerToxin @@ -78,7 +78,7 @@ effectProto: StatusEffectSeeingRainbow time: 5 type: Add - - !type:ChemRerollPsionic + - !type:RerollPsionicAbilities bonusMultiplier: 4 conditions: - !type:ReagentCondition diff --git a/Resources/Prototypes/Nyanotrasen/Recipes/Reactions/food.yml b/Resources/Prototypes/Nyanotrasen/Recipes/Reactions/food.yml index 109c5e0932..5f0adfcc60 100644 --- a/Resources/Prototypes/Nyanotrasen/Recipes/Reactions/food.yml +++ b/Resources/Prototypes/Nyanotrasen/Recipes/Reactions/food.yml @@ -11,7 +11,7 @@ Cream: amount: 5 effects: - - !type:CreateEntityReactionEffect + - !type:SpawnEntity entity: FoodCurdCheese number: 2 @@ -29,7 +29,7 @@ amount: 5 catalyst: true effects: - - !type:CreateEntityReactionEffect + - !type:SpawnEntity entity: FoodMozzarella number: 2 diff --git a/Resources/Prototypes/Reagents/narcotics.yml b/Resources/Prototypes/Reagents/narcotics.yml index f873235152..a1c9b079cf 100644 --- a/Resources/Prototypes/Reagents/narcotics.yml +++ b/Resources/Prototypes/Reagents/narcotics.yml @@ -298,7 +298,7 @@ type: Add time: 5 # DeltaV Additions - - !type:ChemRerollPsionic #Nyano - Summary: lets the imbiber become psionic. + - !type:RerollPsionicAbilities # DeltaV - Roll for psionics conditions: - !type:ReagentCondition reagent: SpaceDrugs diff --git a/Resources/Prototypes/Reagents/toxins.yml b/Resources/Prototypes/Reagents/toxins.yml index 5304421940..e15fa76e70 100644 --- a/Resources/Prototypes/Reagents/toxins.yml +++ b/Resources/Prototypes/Reagents/toxins.yml @@ -375,7 +375,7 @@ - !type:AdjustReagent reagent: LotophagoiOil # DeltaV: prevent rapid remove/reroll/remove/reroll psionic loop amount: -100 - - !type:ChemRemovePsionic #Nyano - Summary: removes psionics from the user at 20u. + - !type:RemovePsionicAbilities # DeltaV - Remove Psionics at 20u conditions: - !type:ReagentCondition reagent: MindbreakerToxin diff --git a/Resources/Prototypes/_DV/CosmicCult/entropy.yml b/Resources/Prototypes/_DV/CosmicCult/entropy.yml index 55faeabf60..c6e58f503b 100644 --- a/Resources/Prototypes/_DV/CosmicCult/entropy.yml +++ b/Resources/Prototypes/_DV/CosmicCult/entropy.yml @@ -68,7 +68,7 @@ damage: Brute: -1 # Not great, but will help you to tank an extra bullet or two conditions: # This one only works for cultists - - !type:HasComponent + - !type:HasComponentCondition explanation: reagent-condition-is-cultist components: - type: CosmicCult @@ -92,8 +92,8 @@ Cold: 1.5 Asphyxiation: 3 conditions: - - !type:HasComponent + - !type:HasComponentCondition explanation: reagent-condition-is-not-cultist components: - type: CosmicCult - shouldHave: false + shouldHave: false \ No newline at end of file diff --git a/Resources/Prototypes/_DV/Reagents/medicine.yml b/Resources/Prototypes/_DV/Reagents/medicine.yml index b3b18ac99a..1ee0fcd65d 100644 --- a/Resources/Prototypes/_DV/Reagents/medicine.yml +++ b/Resources/Prototypes/_DV/Reagents/medicine.yml @@ -13,7 +13,7 @@ - !type:ReduceRotting seconds: 10 conditions: - - !type:HasComponent + - !type:HasComponentCondition bodyPart: Torso explanation: reagent-explanation-netinadone-ribcage components: diff --git a/Resources/Prototypes/_DV/Recipes/Reactions/fun.yml b/Resources/Prototypes/_DV/Recipes/Reactions/fun.yml index 722c6a2a4f..64104ed89f 100644 --- a/Resources/Prototypes/_DV/Recipes/Reactions/fun.yml +++ b/Resources/Prototypes/_DV/Recipes/Reactions/fun.yml @@ -7,7 +7,7 @@ Quartzite: amount: 10 effects: - - !type:CreateEntityReactionEffect + - !type:SpawnEntity entity: SheetGlass1 - type: reaction @@ -25,5 +25,5 @@ Slime: amount: 20 effects: - - !type:CreateEntityReactionEffect + - !type:SpawnEntity entity: MobSlimesPet diff --git a/Resources/Prototypes/_DV/Recipes/Reactions/psionic.yml b/Resources/Prototypes/_DV/Recipes/Reactions/psionic.yml index 123d3bcf46..c1c63bc972 100644 --- a/Resources/Prototypes/_DV/Recipes/Reactions/psionic.yml +++ b/Resources/Prototypes/_DV/Recipes/Reactions/psionic.yml @@ -30,7 +30,7 @@ amount: 5 catalyst: true effects: - - !type:CreateEntityReactionEffect + - !type:SpawnEntity entity: CrystalNormality - - !type:ChangeGlimmerReactionEffect - count: -10 + - !type:AffectsGlimmer + amount: -10 diff --git a/Resources/Prototypes/_Floof/Recipes/Reactions/food.yml b/Resources/Prototypes/_Floof/Recipes/Reactions/food.yml index 72a8029d4f..8ee2d74ebc 100644 --- a/Resources/Prototypes/_Floof/Recipes/Reactions/food.yml +++ b/Resources/Prototypes/_Floof/Recipes/Reactions/food.yml @@ -9,5 +9,5 @@ Sugar: amount: 15 effects: - - !type:CreateEntityReactionEffect + - !type:SpawnEntity entity: FoodFrosting diff --git a/Resources/Prototypes/_Funkystation/Reagents/exotic.yml b/Resources/Prototypes/_Funkystation/Reagents/exotic.yml index 51fdd3968e..6032615ca5 100644 --- a/Resources/Prototypes/_Funkystation/Reagents/exotic.yml +++ b/Resources/Prototypes/_Funkystation/Reagents/exotic.yml @@ -130,7 +130,7 @@ metabolisms: Poison: effects: - - !type:CreateEntityReactionEffect # DeltaV - was polymorph, just have a chance to spawn a corgi instead + - !type:SpawnEntity # DeltaV - was polymorph, just have a chance to spawn a corgi instead entity: MobCorgiPuppy probability: 0.25 conditions: diff --git a/Resources/Prototypes/_Funkystation/Recipes/Reactions/exotic.yml b/Resources/Prototypes/_Funkystation/Recipes/Reactions/exotic.yml index b0992e6ad9..b461953052 100644 --- a/Resources/Prototypes/_Funkystation/Recipes/Reactions/exotic.yml +++ b/Resources/Prototypes/_Funkystation/Recipes/Reactions/exotic.yml @@ -130,7 +130,7 @@ Water: amount: 5 effects: - - !type:CreateEntityReactionEffect + - !type:SpawnEntity entity: MobCorgiPuppy # Exotic could make mats / explode, but the former's better a diff chem and a diff PR, and latter's better for a pyrotechnics rework. Expansion's mostly meds and toxins.