From: Velken <8467292+Velken@users.noreply.github.com> Date: Thu, 30 Jan 2025 11:34:32 +0000 (-0300) Subject: Juice that makes you go boom (#34730) X-Git-Url: https://git.smokeofanarchy.ru/gitweb.cgi?a=commitdiff_plain;h=c360a97e3b77e52baf6787e37bd2d3784cd6a361;p=space-station-14.git Juice that makes you go boom (#34730) * Juice that makes you go boom * moved explosive juice to fun yml - fixed ExplosionReactionEffect.cs not having TileBreakScale parameter - made Drazil plushie major contraband (they are evil!!!!!) * removed JASON!!!! JASOOON!!! JASON!!! * don't do commits at 1am * Update fun.yml fix ident * no more bullying the server (only 1 explosion) --- diff --git a/Content.Server/EntityEffects/Effects/ExplosionReactionEffect.cs b/Content.Server/EntityEffects/Effects/ExplosionReactionEffect.cs index 689757d044..24c58898c6 100644 --- a/Content.Server/EntityEffects/Effects/ExplosionReactionEffect.cs +++ b/Content.Server/EntityEffects/Effects/ExplosionReactionEffect.cs @@ -15,7 +15,6 @@ public sealed partial class ExplosionReactionEffect : EntityEffect /// The type of explosion. Determines damage types and tile break chance scaling. /// [DataField(required: true, customTypeSerializer: typeof(PrototypeIdSerializer))] - [JsonIgnore] public string ExplosionType = default!; /// @@ -23,14 +22,12 @@ public sealed partial class ExplosionReactionEffect : EntityEffect /// chance. /// [DataField] - [JsonIgnore] public float MaxIntensity = 5; /// /// How quickly intensity drops off as you move away from the epicenter /// [DataField] - [JsonIgnore] public float IntensitySlope = 1; /// @@ -41,15 +38,20 @@ public sealed partial class ExplosionReactionEffect : EntityEffect /// A slope of 1 and MaxTotalIntensity of 100 corresponds to a radius of around 4.5 tiles. /// [DataField] - [JsonIgnore] public float MaxTotalIntensity = 100; /// /// The intensity of the explosion per unit reaction. /// [DataField] - [JsonIgnore] public float IntensityPerUnit = 1; + + /// + /// Factor used to scale the explosion intensity when calculating tile break chances. Allows for stronger + /// explosives that don't space tiles, without having to create a new explosion-type prototype. + /// + [DataField] + public float TileBreakScale = 1f; public override bool ShouldLog => true; @@ -72,6 +74,7 @@ public sealed partial class ExplosionReactionEffect : EntityEffect ExplosionType, intensity, IntensitySlope, - MaxIntensity); + MaxIntensity, + TileBreakScale); } } diff --git a/Resources/Prototypes/Reagents/fun.yml b/Resources/Prototypes/Reagents/fun.yml index 00d31cbd10..2215b6f33d 100644 --- a/Resources/Prototypes/Reagents/fun.yml +++ b/Resources/Prototypes/Reagents/fun.yml @@ -381,3 +381,21 @@ conditions: - !type:ReagentThreshold min: 50 + +- type: reaction + id: WehHewExplosion + impact: High + priority: 20 + reactants: + JuiceThatMakesYouWeh: + amount: 1 + JuiceThatMakesYouHew: + amount: 1 + effects: + - !type:ExplosionReactionEffect + explosionType: Radioactive + maxIntensity: 200 + intensityPerUnit: 2 + intensitySlope: 1 + maxTotalIntensity: 250 + tileBreakScale: 0.00001