Downstream devil fix to Painnumbness status effect
This commit is contained in:
parent
b24ec257b7
commit
538a1b1839
|
|
@ -35,6 +35,7 @@ using Robust.Shared.Prototypes;
|
||||||
using Robust.Shared.Random;
|
using Robust.Shared.Random;
|
||||||
using Robust.Shared.Utility;
|
using Robust.Shared.Utility;
|
||||||
using Content.Shared._EE.Silicon.Components;
|
using Content.Shared._EE.Silicon.Components;
|
||||||
|
using Content.Shared.StatusEffectNew; // DeltaV - Clause status effects
|
||||||
|
|
||||||
namespace Content.Server._Goobstation.Devil.Contract;
|
namespace Content.Server._Goobstation.Devil.Contract;
|
||||||
|
|
||||||
|
|
@ -51,6 +52,7 @@ public sealed partial class DevilContractSystem : EntitySystem
|
||||||
[Dependency] private readonly PolymorphSystem _polymorph = null!;
|
[Dependency] private readonly PolymorphSystem _polymorph = null!;
|
||||||
[Dependency] private readonly ExplosionSystem _explosion = null!;
|
[Dependency] private readonly ExplosionSystem _explosion = null!;
|
||||||
[Dependency] private readonly MindSystem _mind = null!;
|
[Dependency] private readonly MindSystem _mind = null!;
|
||||||
|
[Dependency] private readonly StatusEffectsSystem _statusEffects = null!; // DeltaV - Clause status effects
|
||||||
|
|
||||||
public override void Initialize()
|
public override void Initialize()
|
||||||
{
|
{
|
||||||
|
|
@ -363,6 +365,8 @@ public sealed partial class DevilContractSystem : EntitySystem
|
||||||
|
|
||||||
OverrideComponents(target, clause); // DeltaV - Fix component modifications
|
OverrideComponents(target, clause); // DeltaV - Fix component modifications
|
||||||
|
|
||||||
|
ApplyStatusEffect(target, clause); // DeltaV - Clause status effects
|
||||||
|
|
||||||
ChangeDamageModifier(target, clause);
|
ChangeDamageModifier(target, clause);
|
||||||
|
|
||||||
AddImplants(target, clause);
|
AddImplants(target, clause);
|
||||||
|
|
@ -414,6 +418,16 @@ public sealed partial class DevilContractSystem : EntitySystem
|
||||||
}
|
}
|
||||||
// End DeltaV Addition
|
// End DeltaV Addition
|
||||||
|
|
||||||
|
// Begin DeltaV Addition - Devil clause status effects
|
||||||
|
private void ApplyStatusEffect(EntityUid target, DevilClausePrototype clause)
|
||||||
|
{
|
||||||
|
foreach (var effect in clause.StatusEffects)
|
||||||
|
{
|
||||||
|
_statusEffects.TrySetStatusEffectDuration(target, effect);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// End DeltaV Addition - Devil clause status effects
|
||||||
|
|
||||||
private void SpawnItems(EntityUid target, DevilClausePrototype clause)
|
private void SpawnItems(EntityUid target, DevilClausePrototype clause)
|
||||||
{
|
{
|
||||||
if (clause.SpawnedItems == null)
|
if (clause.SpawnedItems == null)
|
||||||
|
|
|
||||||
|
|
@ -27,6 +27,9 @@ public sealed class DevilClausePrototype : IPrototype
|
||||||
[DataField]
|
[DataField]
|
||||||
public ComponentRegistry? OverriddenComponents; // DeltaV - Added overridden components
|
public ComponentRegistry? OverriddenComponents; // DeltaV - Added overridden components
|
||||||
|
|
||||||
|
[DataField]
|
||||||
|
public HashSet<EntProtoId> StatusEffects = new(); // DeltaV - Add status effects to clauses
|
||||||
|
|
||||||
[DataField]
|
[DataField]
|
||||||
public string? DamageModifierSet;
|
public string? DamageModifierSet;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -117,11 +117,14 @@
|
||||||
id: pain
|
id: pain
|
||||||
clauseWeight: -5
|
clauseWeight: -5
|
||||||
addedComponents:
|
addedComponents:
|
||||||
- type: PainNumbness
|
|
||||||
- type: SlowOnDamage
|
- type: SlowOnDamage
|
||||||
speedModifierThresholds:
|
speedModifierThresholds:
|
||||||
60: 1
|
60: 1
|
||||||
80: 1
|
80: 1
|
||||||
|
# Begin DeltaV Additions - Clause status effects
|
||||||
|
statusEffects:
|
||||||
|
- PainNumbnessTraitStatusEffect
|
||||||
|
# End DeltaV Additions - Clause status effects
|
||||||
|
|
||||||
- type: clause
|
- type: clause
|
||||||
id: chance
|
id: chance
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue