The chems update
This commit is contained in:
40
Content.Shared/_Offbrand/EntityEffects/TotalGroupDamage.cs
Normal file
40
Content.Shared/_Offbrand/EntityEffects/TotalGroupDamage.cs
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
using Content.Shared.Damage.Prototypes;
|
||||||
|
using Content.Shared.Damage;
|
||||||
|
using Content.Shared.EntityEffects;
|
||||||
|
using Content.Shared.FixedPoint;
|
||||||
|
using Robust.Shared.Prototypes;
|
||||||
|
|
||||||
|
namespace Content.Shared._Offbrand.EntityEffects;
|
||||||
|
|
||||||
|
public sealed partial class TotalGroupDamage : EntityEffectCondition
|
||||||
|
{
|
||||||
|
[DataField(required: true)]
|
||||||
|
public ProtoId<DamageGroupPrototype> Group;
|
||||||
|
|
||||||
|
[DataField]
|
||||||
|
public FixedPoint2 Max = FixedPoint2.MaxValue;
|
||||||
|
|
||||||
|
[DataField]
|
||||||
|
public FixedPoint2 Min = FixedPoint2.Zero;
|
||||||
|
|
||||||
|
public override bool Condition(EntityEffectBaseArgs args)
|
||||||
|
{
|
||||||
|
var prototype = IoCManager.Resolve<IPrototypeManager>();
|
||||||
|
var group = prototype.Index(Group);
|
||||||
|
|
||||||
|
if (!args.EntityManager.TryGetComponent<DamageableComponent>(args.TargetEntity, out var damage))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
var total = FixedPoint2.Zero;
|
||||||
|
damage.Damage.TryGetDamageInGroup(group, out total);
|
||||||
|
return total >= Min && total <= Max;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override string GuidebookExplanation(IPrototypeManager prototype)
|
||||||
|
{
|
||||||
|
return Loc.GetString("reagent-effect-condition-guidebook-total-group-damage",
|
||||||
|
("max", Max == FixedPoint2.MaxValue ? (float) int.MaxValue : Max.Float()),
|
||||||
|
("min", Min.Float()),
|
||||||
|
("name", prototype.Index(Group).LocalizedName));
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -42,6 +42,13 @@ reagent-effect-condition-guidebook-brain-damage = { $max ->
|
|||||||
*[other] it has between {NATURALFIXED($min, 2)} and {NATURALFIXED($max, 2)} brain damage
|
*[other] it has between {NATURALFIXED($min, 2)} and {NATURALFIXED($max, 2)} brain damage
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
reagent-effect-condition-guidebook-total-group-damage = { $max ->
|
||||||
|
[2147483648] it has at least {NATURALFIXED($min, 2)} { $name } damage
|
||||||
|
*[other] { $min ->
|
||||||
|
[0] it has at most {NATURALFIXED($max, 2)} { $name } damage
|
||||||
|
*[other] it has between {NATURALFIXED($min, 2)} and {NATURALFIXED($max, 2)} { $name } damage
|
||||||
|
}
|
||||||
|
}
|
||||||
reagent-effect-guidebook-modify-brain-oxygen-heals = { $chance ->
|
reagent-effect-guidebook-modify-brain-oxygen-heals = { $chance ->
|
||||||
[1] Replenishes { $amount } brain oxygenation
|
[1] Replenishes { $amount } brain oxygenation
|
||||||
*[other] replenish { $amount } brain oxygenation
|
*[other] replenish { $amount } brain oxygenation
|
||||||
|
|||||||
@@ -27,3 +27,12 @@ reagent-desc-coagulant = An experimental medicine that causes internal and exter
|
|||||||
|
|
||||||
reagent-name-osseous = osseous reagent
|
reagent-name-osseous = osseous reagent
|
||||||
reagent-desc-osseous = An strange solution of pinkish gel and white shards that can heal internal bone fractures. Authorities have expressed concern over the lead content.
|
reagent-desc-osseous = An strange solution of pinkish gel and white shards that can heal internal bone fractures. Authorities have expressed concern over the lead content.
|
||||||
|
|
||||||
|
reagent-name-convermol = convermol
|
||||||
|
reagent-desc-convermol = A fast-acting medication that forces the body to respirate, damaging the muscles but effectively restoring access to air.
|
||||||
|
|
||||||
|
reagent-name-salicylic-acid = salicylic acid
|
||||||
|
reagent-desc-salicylic-acid = An awful-smelling compound that offers pain relief and healing for severe brute injuries. Extremely high doses can force the body to regenerate bones from nothing.
|
||||||
|
|
||||||
|
reagent-name-oxandrolone = oxandrolone
|
||||||
|
reagent-desc-oxandrolone = A heavy-duty burn medication that offers pain relief and healing for severe burn injuries. Extremely high doses can force the body to purge severely scarred tissue.
|
||||||
|
|||||||
@@ -127,3 +127,109 @@
|
|||||||
catalyst: true
|
catalyst: true
|
||||||
products:
|
products:
|
||||||
Osseous: 2
|
Osseous: 2
|
||||||
|
|
||||||
|
- type: reaction
|
||||||
|
id: Convermol
|
||||||
|
reactants:
|
||||||
|
Fluorine:
|
||||||
|
amount: 1
|
||||||
|
Aluminium:
|
||||||
|
amount: 1
|
||||||
|
Dexalin:
|
||||||
|
amount: 1
|
||||||
|
products:
|
||||||
|
Convermol: 3
|
||||||
|
|
||||||
|
- type: reaction
|
||||||
|
id: SalicylicAcid
|
||||||
|
reactants:
|
||||||
|
Phenol:
|
||||||
|
amount: 1
|
||||||
|
Bicaridine:
|
||||||
|
amount: 1
|
||||||
|
SulfuricAcid:
|
||||||
|
amount: 1
|
||||||
|
products:
|
||||||
|
SalicylicAcid: 3
|
||||||
|
|
||||||
|
- type: reaction
|
||||||
|
id: SalicylicAcidBruizine
|
||||||
|
reactants:
|
||||||
|
SalicylicAcid:
|
||||||
|
amount: 1
|
||||||
|
Bruizine:
|
||||||
|
amount: 1
|
||||||
|
products:
|
||||||
|
Razorium: 1
|
||||||
|
|
||||||
|
- type: reaction
|
||||||
|
id: SalicylicAcidLacerinol
|
||||||
|
reactants:
|
||||||
|
SalicylicAcid:
|
||||||
|
amount: 1
|
||||||
|
Lacerinol:
|
||||||
|
amount: 1
|
||||||
|
products:
|
||||||
|
Razorium: 1
|
||||||
|
|
||||||
|
- type: reaction
|
||||||
|
id: SalicylicAcidPuncturase
|
||||||
|
reactants:
|
||||||
|
SalicylicAcid:
|
||||||
|
amount: 1
|
||||||
|
Puncturase:
|
||||||
|
amount: 1
|
||||||
|
products:
|
||||||
|
Razorium: 1
|
||||||
|
|
||||||
|
- type: reaction
|
||||||
|
id: Oxandrolone
|
||||||
|
reactants:
|
||||||
|
Phenol:
|
||||||
|
amount: 1
|
||||||
|
Dermaline:
|
||||||
|
amount: 1
|
||||||
|
Fluorine:
|
||||||
|
amount: 1
|
||||||
|
products:
|
||||||
|
Oxandrolone: 3
|
||||||
|
|
||||||
|
- type: reaction
|
||||||
|
id: OxandrolonePyrazine
|
||||||
|
reactants:
|
||||||
|
Oxandrolone:
|
||||||
|
amount: 1
|
||||||
|
Pyrazine:
|
||||||
|
amount: 1
|
||||||
|
products:
|
||||||
|
Razorium: 1
|
||||||
|
|
||||||
|
- type: reaction
|
||||||
|
id: OxandroloneInsuzine
|
||||||
|
reactants:
|
||||||
|
Oxandrolone:
|
||||||
|
amount: 1
|
||||||
|
Insuzine:
|
||||||
|
amount: 1
|
||||||
|
products:
|
||||||
|
Razorium: 1
|
||||||
|
|
||||||
|
- type: reaction
|
||||||
|
id: OxandroloneSigynate
|
||||||
|
reactants:
|
||||||
|
Oxandrolone:
|
||||||
|
amount: 1
|
||||||
|
Sigynate:
|
||||||
|
amount: 1
|
||||||
|
products:
|
||||||
|
Razorium: 1
|
||||||
|
|
||||||
|
- type: reaction
|
||||||
|
id: OxandroloneLeporazine
|
||||||
|
reactants:
|
||||||
|
Oxandrolone:
|
||||||
|
amount: 1
|
||||||
|
Leporazine:
|
||||||
|
amount: 1
|
||||||
|
products:
|
||||||
|
Razorium: 1
|
||||||
|
|||||||
@@ -304,3 +304,143 @@
|
|||||||
conditions:
|
conditions:
|
||||||
- !type:MetaboliteThreshold
|
- !type:MetaboliteThreshold
|
||||||
min: 5
|
min: 5
|
||||||
|
|
||||||
|
- type: reagent
|
||||||
|
id: Convermol
|
||||||
|
name: reagent-name-convermol
|
||||||
|
group: Medicine
|
||||||
|
desc: reagent-desc-convermol
|
||||||
|
physicalDesc: reagent-physical-desc-abrasive
|
||||||
|
flavor: chalky
|
||||||
|
color: "#afe1ed"
|
||||||
|
metabolisms:
|
||||||
|
Medicine:
|
||||||
|
effects:
|
||||||
|
- !type:HealthChange
|
||||||
|
damage:
|
||||||
|
types:
|
||||||
|
Asphyxiation: -4
|
||||||
|
Blunt: 1.5
|
||||||
|
conditions:
|
||||||
|
- !type:TotalGroupDamage
|
||||||
|
group: Airloss
|
||||||
|
min: 4
|
||||||
|
- !type:HealthChange
|
||||||
|
damage:
|
||||||
|
types:
|
||||||
|
Asphyxiation: -4
|
||||||
|
Blunt: 1.5
|
||||||
|
conditions:
|
||||||
|
- !type:MetaboliteThreshold
|
||||||
|
min: 10
|
||||||
|
- !type:TotalGroupDamage
|
||||||
|
group: Airloss
|
||||||
|
min: 4
|
||||||
|
- !type:ModifyHeartDamage
|
||||||
|
amount: 0.05
|
||||||
|
|
||||||
|
- type: reagent
|
||||||
|
id: SalicylicAcid
|
||||||
|
name: reagent-name-salicylic-acid
|
||||||
|
group: Medicine
|
||||||
|
desc: reagent-desc-salicylic-acid
|
||||||
|
physicalDesc: reagent-physical-desc-putrid
|
||||||
|
flavor: bitter
|
||||||
|
color: "#f7d9c0"
|
||||||
|
metabolisms:
|
||||||
|
Medicine:
|
||||||
|
metabolismRate: 0.2
|
||||||
|
statusEffects:
|
||||||
|
- statusEffect: StatusEffectPainkillersSalicylicAcid
|
||||||
|
conditions:
|
||||||
|
- !type:TotalGroupDamage
|
||||||
|
group: Brute
|
||||||
|
min: 35
|
||||||
|
effects:
|
||||||
|
- !type:EvenHealthChange
|
||||||
|
damage:
|
||||||
|
Brute: -2
|
||||||
|
conditions:
|
||||||
|
- !type:TotalGroupDamage
|
||||||
|
group: Brute
|
||||||
|
min: 35
|
||||||
|
- !type:MetaboliteThreshold
|
||||||
|
max: 15
|
||||||
|
- !type:EvenHealthChange
|
||||||
|
damage:
|
||||||
|
Brute: -2
|
||||||
|
Burn: 2
|
||||||
|
conditions:
|
||||||
|
- !type:MetaboliteThreshold
|
||||||
|
min: 15
|
||||||
|
- !type:EvenHealthChange
|
||||||
|
damage:
|
||||||
|
Brute: -0.5
|
||||||
|
conditions:
|
||||||
|
- !type:TotalGroupDamage
|
||||||
|
group: Brute
|
||||||
|
max: 35
|
||||||
|
- !type:RemoveStatusEffect
|
||||||
|
effectProto: WoundBoneDeath
|
||||||
|
conditions:
|
||||||
|
- !type:MetaboliteThreshold
|
||||||
|
min: 50
|
||||||
|
- !type:EvenHealthChange
|
||||||
|
damage:
|
||||||
|
Burn: 1
|
||||||
|
conditions:
|
||||||
|
- !type:MetaboliteThreshold
|
||||||
|
min: 35
|
||||||
|
|
||||||
|
- type: reagent
|
||||||
|
id: Oxandrolone
|
||||||
|
name: reagent-name-oxandrolone
|
||||||
|
group: Medicine
|
||||||
|
desc: reagent-desc-oxandrolone
|
||||||
|
physicalDesc: reagent-physical-desc-frosty
|
||||||
|
flavor: bitter
|
||||||
|
color: "#b8e3cb"
|
||||||
|
metabolisms:
|
||||||
|
Medicine:
|
||||||
|
metabolismRate: 0.2
|
||||||
|
statusEffects:
|
||||||
|
- statusEffect: StatusEffectPainkillersOxandrolone
|
||||||
|
conditions:
|
||||||
|
- !type:TotalGroupDamage
|
||||||
|
group: Burn
|
||||||
|
min: 35
|
||||||
|
effects:
|
||||||
|
- !type:EvenHealthChange
|
||||||
|
damage:
|
||||||
|
Burn: -3
|
||||||
|
conditions:
|
||||||
|
- !type:TotalGroupDamage
|
||||||
|
group: Burn
|
||||||
|
min: 35
|
||||||
|
- !type:MetaboliteThreshold
|
||||||
|
max: 15
|
||||||
|
- !type:EvenHealthChange
|
||||||
|
damage:
|
||||||
|
Burn: -3
|
||||||
|
Brute: 3
|
||||||
|
conditions:
|
||||||
|
- !type:MetaboliteThreshold
|
||||||
|
min: 15
|
||||||
|
- !type:EvenHealthChange
|
||||||
|
damage:
|
||||||
|
Burn: -0.5
|
||||||
|
conditions:
|
||||||
|
- !type:TotalGroupDamage
|
||||||
|
group: Burn
|
||||||
|
max: 35
|
||||||
|
- !type:RemoveStatusEffect
|
||||||
|
effectProto: WoundHusking
|
||||||
|
conditions:
|
||||||
|
- !type:MetaboliteThreshold
|
||||||
|
min: 50
|
||||||
|
- !type:EvenHealthChange
|
||||||
|
damage:
|
||||||
|
Brute: 1
|
||||||
|
conditions:
|
||||||
|
- !type:MetaboliteThreshold
|
||||||
|
min: 35
|
||||||
|
|||||||
@@ -68,6 +68,22 @@
|
|||||||
parent: StatusEffectHeartStrainDesoxyephedrine
|
parent: StatusEffectHeartStrainDesoxyephedrine
|
||||||
id: StatusEffectHeartStrainTramadolAlcohol
|
id: StatusEffectHeartStrainTramadolAlcohol
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: MobStatusEffectBase
|
||||||
|
id: StatusEffectPainkillersSalicylicAcid
|
||||||
|
name: 30 pain relief
|
||||||
|
components:
|
||||||
|
- type: PainkillerStatusEffect
|
||||||
|
effectiveness: 30
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: MobStatusEffectBase
|
||||||
|
id: StatusEffectPainkillersOxandrolone
|
||||||
|
name: 30 pain relief
|
||||||
|
components:
|
||||||
|
- type: PainkillerStatusEffect
|
||||||
|
effectiveness: 30
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
parent: MobStatusEffectBase
|
parent: MobStatusEffectBase
|
||||||
id: StatusEffectPainkillersStrongOxycodone
|
id: StatusEffectPainkillersStrongOxycodone
|
||||||
|
|||||||
Reference in New Issue
Block a user