mirror of
https://github.com/DeltaV-Station/Delta-v.git
synced 2026-09-29 23:57:29 +00:00
Untroll reagents
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
using Content.Shared.Chemistry.Reagent;
|
||||
using Content.Server.Abilities.Psionics;
|
||||
using Content.Shared.EntityEffects;
|
||||
using JetBrains.Annotations;
|
||||
using Robust.Shared.Prototypes;
|
||||
|
||||
@@ -9,19 +10,22 @@ namespace Content.Server.Chemistry.ReagentEffects
|
||||
/// Rerolls psionics once.
|
||||
/// </summary>
|
||||
[UsedImplicitly]
|
||||
public sealed partial class ChemRemovePsionic : ReagentEffect
|
||||
public sealed partial class ChemRemovePsionic : EntityEffect
|
||||
{
|
||||
protected override string? ReagentEffectGuidebookText(IPrototypeManager prototype, IEntitySystemManager entSys)
|
||||
=> Loc.GetString("reagent-effect-guidebook-chem-remove-psionic", ("chance", Probability));
|
||||
|
||||
public override void Effect(ReagentEffectArgs args)
|
||||
public override void Effect(EntityEffectBaseArgs args)
|
||||
{
|
||||
if (args.Scale != 1f)
|
||||
return;
|
||||
if (args is EntityEffectReagentArgs reagentArgs)
|
||||
{
|
||||
if (reagentArgs.Scale != 1f)
|
||||
return;
|
||||
}
|
||||
|
||||
var psySys = args.EntityManager.EntitySysManager.GetEntitySystem<PsionicAbilitiesSystem>();
|
||||
|
||||
psySys.RemovePsionics(args.SolutionEntity);
|
||||
psySys.RemovePsionics(args.TargetEntity);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
using Content.Shared.Chemistry.Reagent;
|
||||
using Content.Server.Psionics;
|
||||
using Content.Shared.EntityEffects;
|
||||
using JetBrains.Annotations;
|
||||
using Robust.Shared.Prototypes;
|
||||
|
||||
@@ -9,7 +10,7 @@ namespace Content.Server.Chemistry.ReagentEffects
|
||||
/// Rerolls psionics once.
|
||||
/// </summary>
|
||||
[UsedImplicitly]
|
||||
public sealed partial class ChemRerollPsionic : ReagentEffect
|
||||
public sealed partial class ChemRerollPsionic : EntityEffect
|
||||
{
|
||||
protected override string? ReagentEffectGuidebookText(IPrototypeManager prototype, IEntitySystemManager entSys)
|
||||
=> Loc.GetString("reagent-effect-guidebook-chem-reroll-psionic", ("chance", Probability));
|
||||
@@ -20,11 +21,11 @@ namespace Content.Server.Chemistry.ReagentEffects
|
||||
[DataField("bonusMultiplier")]
|
||||
public float BonusMuliplier = 1f;
|
||||
|
||||
public override void Effect(ReagentEffectArgs args)
|
||||
public override void Effect(EntityEffectBaseArgs args)
|
||||
{
|
||||
var psySys = args.EntityManager.EntitySysManager.GetEntitySystem<PsionicsSystem>();
|
||||
|
||||
psySys.RerollPsionics(args.SolutionEntity, bonusMuliplier: BonusMuliplier);
|
||||
psySys.RerollPsionics(args.TargetEntity, bonusMuliplier: BonusMuliplier);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,11 +1,12 @@
|
||||
using Content.Shared.Chemistry.Reagent;
|
||||
using Content.Shared.EntityEffects;
|
||||
using Content.Shared.Psionics.Glimmer;
|
||||
using Robust.Shared.Prototypes;
|
||||
|
||||
namespace Content.Server.Chemistry.ReactionEffects;
|
||||
|
||||
[DataDefinition]
|
||||
public sealed partial class ChangeGlimmerReactionEffect : ReagentEffect
|
||||
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),
|
||||
@@ -17,7 +18,7 @@ public sealed partial class ChangeGlimmerReactionEffect : ReagentEffect
|
||||
[DataField("count")]
|
||||
public int Count = 1;
|
||||
|
||||
public override void Effect(ReagentEffectArgs args)
|
||||
public override void Effect(EntityEffectBaseArgs args)
|
||||
{
|
||||
var glimmersys = args.EntityManager.EntitySysManager.GetEntitySystem<GlimmerSystem>();
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
using Content.Shared.Chemistry.Components;
|
||||
using Content.Shared.Chemistry.Reagent;
|
||||
using Content.Shared.Construction.Prototypes;
|
||||
using Content.Shared.EntityEffects;
|
||||
using Content.Shared.FixedPoint;
|
||||
using Content.Shared.Nutrition;
|
||||
using Content.Shared.Nyanotrasen.Kitchen;
|
||||
@@ -187,7 +188,7 @@ namespace Content.Server.Nyanotrasen.Kitchen.Components
|
||||
|
||||
[ViewVariables(VVAccess.ReadWrite)]
|
||||
[DataField("unsafeOilVolumeEffects")]
|
||||
public List<ReagentEffect> UnsafeOilVolumeEffects = new();
|
||||
public List<EntityEffect> UnsafeOilVolumeEffects = new();
|
||||
|
||||
/// <summary>
|
||||
/// What is the temperature of the vat when the deep fryer is powered?
|
||||
|
||||
@@ -4,6 +4,7 @@ using Content.Server.Nyanotrasen.Kitchen.Components;
|
||||
using Content.Shared.Chemistry.Components;
|
||||
using Content.Shared.Chemistry.Components.SolutionManager;
|
||||
using Content.Shared.Chemistry.Reagent;
|
||||
using Content.Shared.EntityEffects;
|
||||
using Content.Shared.FixedPoint;
|
||||
using Content.Shared.Popups;
|
||||
using Robust.Shared.Player;
|
||||
@@ -54,14 +55,14 @@ public sealed partial class DeepFryerSystem
|
||||
|
||||
foreach (var effect in component.UnsafeOilVolumeEffects)
|
||||
{
|
||||
effect.Effect(new ReagentEffectArgs(uid,
|
||||
null,
|
||||
component.Solution,
|
||||
proto!,
|
||||
reagent.Quantity,
|
||||
EntityManager,
|
||||
null,
|
||||
1f));
|
||||
effect.Effect(new EntityEffectReagentArgs(uid,
|
||||
EntityManager,
|
||||
null,
|
||||
component.Solution,
|
||||
reagent.Quantity,
|
||||
proto!,
|
||||
null,
|
||||
1f));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -29,6 +29,7 @@ using Content.Shared.Damage.Prototypes;
|
||||
using Content.Shared.Database;
|
||||
using Content.Shared.Destructible;
|
||||
using Content.Shared.DoAfter;
|
||||
using Content.Shared.EntityEffects;
|
||||
using Content.Shared.Examine;
|
||||
using Content.Shared.FixedPoint;
|
||||
using Content.Shared.Hands.Components;
|
||||
@@ -381,12 +382,13 @@ public sealed partial class DeepFryerSystem : SharedDeepfryerSystem
|
||||
{
|
||||
//JJ Comment - not sure this works. Need to check if Reagent.ToString is correct.
|
||||
_prototypeManager.TryIndex<ReagentPrototype>(reagent.Reagent.ToString(), out var proto);
|
||||
var effectsArgs = new ReagentEffectArgs(uid,
|
||||
|
||||
var effectsArgs = new EntityEffectReagentArgs(uid,
|
||||
EntityManager,
|
||||
null,
|
||||
component.Solution,
|
||||
proto!,
|
||||
reagent.Quantity,
|
||||
EntityManager,
|
||||
proto!,
|
||||
null,
|
||||
1f);
|
||||
foreach (var effect in component.UnsafeOilVolumeEffects)
|
||||
|
||||
Reference in New Issue
Block a user