From e9516fc43e41ddf8c76119e9e6b98f86e378e0ff Mon Sep 17 00:00:00 2001 From: CrigCrag <137215465+CrigCrag@users.noreply.github.com> Date: Thu, 21 Dec 2023 00:35:22 -0500 Subject: [PATCH] add Fresium, a chillingly complex chemical to prank your friends with (#22527) * everything * tweakeroo * maintspill * some balancing and tweaking * adds ice tags and gives it to ice crust * fix code because im smart im the smart guy yeah that's me * yeah * oops * do you wanna try that again * conserve matter * im rather smart --- Resources/Locale/en-US/reagents/fresium.ftl | 3 + Resources/Locale/en-US/reagents/meta/fun.ftl | 3 + .../Entities/Objects/Misc/ice_crust.yml | 2 + .../Objects/Specific/Medical/randompill.yml | 1 + Resources/Prototypes/Reagents/fun.yml | 93 +++++++++++++++++++ Resources/Prototypes/Reagents/medicine.yml | 3 + .../Prototypes/Recipes/Reactions/fun.yml | 39 ++++++++ Resources/Prototypes/tags.yml | 3 + 8 files changed, 147 insertions(+) create mode 100644 Resources/Locale/en-US/reagents/fresium.ftl diff --git a/Resources/Locale/en-US/reagents/fresium.ftl b/Resources/Locale/en-US/reagents/fresium.ftl new file mode 100644 index 0000000000..f73865d6a1 --- /dev/null +++ b/Resources/Locale/en-US/reagents/fresium.ftl @@ -0,0 +1,3 @@ +fresium-effect-freeze-insides = You feel your insides freezing up! +fresium-effect-frozen = Your legs have completely frozen up! +fresium-effect-slow = Your legs buckle and struggle to move! diff --git a/Resources/Locale/en-US/reagents/meta/fun.ftl b/Resources/Locale/en-US/reagents/meta/fun.ftl index c52960ee4a..510d9d084a 100644 --- a/Resources/Locale/en-US/reagents/meta/fun.ftl +++ b/Resources/Locale/en-US/reagents/meta/fun.ftl @@ -18,3 +18,6 @@ reagent-desc-licoxide = A synthetic battery acid. It looks... electrifying. reagent-name-razorium = razorium reagent-desc-razorium = A strange, non-newtonian chemical. It is produced when two conflicting brute medications are combined. When force is applied to it, it temporarily hardens creating millions of tiny, sharp edges. Very painful. + +reagent-name-fresium = Fresium +reagent-desc-fresium = A mysterious compound that slows the vibration of atoms and molecules... somehow. In layman's terms, it makes things cold... REALLY cold. Can cause long-lasting movement issues if ingested. diff --git a/Resources/Prototypes/Entities/Objects/Misc/ice_crust.yml b/Resources/Prototypes/Entities/Objects/Misc/ice_crust.yml index 2f8da6dada..ad1f876675 100644 --- a/Resources/Prototypes/Entities/Objects/Misc/ice_crust.yml +++ b/Resources/Prototypes/Entities/Objects/Misc/ice_crust.yml @@ -21,6 +21,8 @@ - type: Clickable - type: Transform anchored: true + - type: Tag + tags: [ Ice ] - type: Physics - type: Fixtures fixtures: diff --git a/Resources/Prototypes/Entities/Objects/Specific/Medical/randompill.yml b/Resources/Prototypes/Entities/Objects/Specific/Medical/randompill.yml index ccb4f6ca4e..48571da927 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/Medical/randompill.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/Medical/randompill.yml @@ -37,6 +37,7 @@ - Pax - Tricordrazine - SodiumPolyacrylate + - Fresium - quantity: 20 weight: 5 reagents: diff --git a/Resources/Prototypes/Reagents/fun.yml b/Resources/Prototypes/Reagents/fun.yml index fe6a5f6f81..d22e2213ac 100644 --- a/Resources/Prototypes/Reagents/fun.yml +++ b/Resources/Prototypes/Reagents/fun.yml @@ -205,3 +205,96 @@ - !type:Emote emote: Scream probability: 0.3 + +- type: reagent + id: Fresium + name: reagent-name-fresium + group: Toxins + slippery: true + desc: reagent-desc-fresium + physicalDesc: reagent-physical-desc-frosty + flavor: cold + color: "#b3f1ff" + boilingPoint: 50.0 + meltingPoint: 45.0 + tileReactions: + - !type:CreateEntityTileReaction + entity: IceCrust + maxOnTileWhitelist: + tags: [ Ice ] + - !type:ExtinguishTileReaction { } + reactiveEffects: + Acidic: + methods: [ Touch ] + effects: + - !type:HealthChange + scaleByQuantity: true + ignoreResistances: false + damage: + types: + Cold: 0.05 + - !type:AdjustTemperature + conditions: + - !type:Temperature + min: 160.15 + amount: -30000 + Extinguish: + methods: [ Touch ] + effects: + - !type:ExtinguishReaction # cold + metabolisms: + Poison: + metabolismRate : 0.45 + effects: + - !type:HealthChange + damage: + types: + Cold: 0.01 # slightly nips directly, other cold damage comes from the temp change + Burn: -3 # ghetto burn chem. i don't think anyone would use this intentionally but it's funny + - !type:PopupMessage + conditions: + - !type:ReagentThreshold + reagent: Fresium + max: 35 + type: Local + visualType: LargeCaution + messages: [ "fresium-effect-freeze-insides"] + probability: 0.05 + - !type:PopupMessage + conditions: + - !type:ReagentThreshold + reagent: Fresium + max: 35 + type: Local + visualType: LargeCaution + messages: [ "fresium-effect-slow"] + probability: 0.2 + - !type:AdjustTemperature + conditions: + - !type:Temperature + min: 160.15 # not quite enough for cryo, but can speed it up if you wanna take the risk + amount: -10000 + - !type:MovespeedModifier + conditions: + - !type:ReagentThreshold + reagent: Fresium + max: 40 # slows when less than 40 + walkSpeedModifier: 0.6 + sprintSpeedModifier: 0.6 + - !type:MovespeedModifier + conditions: + - !type:ReagentThreshold + reagent: Fresium + min: 40 # your legs stop working when above 40 + walkSpeedModifier: 0.00 + sprintSpeedModifier: 0.00 + - !type:PopupMessage + conditions: + - !type:ReagentThreshold + reagent: Fresium + min: 40 + type: Local + visualType: LargeCaution + messages: [ "fresium-effect-frozen"] + probability: 0.4 + diff --git a/Resources/Prototypes/Reagents/medicine.yml b/Resources/Prototypes/Reagents/medicine.yml index 6c294d556a..b9d2d3e28e 100644 --- a/Resources/Prototypes/Reagents/medicine.yml +++ b/Resources/Prototypes/Reagents/medicine.yml @@ -491,6 +491,9 @@ visualType: Medium messages: [ "leporazine-effect-temperature-adjusting" ] probability: 0.2 + - !type:AdjustReagent + reagent: Fresium + amount: -5 - type: reagent id: Barozine diff --git a/Resources/Prototypes/Recipes/Reactions/fun.yml b/Resources/Prototypes/Recipes/Reactions/fun.yml index 594518514e..35ec500590 100644 --- a/Resources/Prototypes/Recipes/Reactions/fun.yml +++ b/Resources/Prototypes/Recipes/Reactions/fun.yml @@ -108,6 +108,44 @@ - !type:CreateEntityReactionEffect entity: SheetPlastic1 +- type: reaction + id: FlashFreezeIce + quantized: true + reactants: + Fresium: + amount: 1 + Water: + amount: 1 + effects: + - !type:CreateGas + gas: Frezon + products: + Ice: 5 + +- type: reaction + id: Fresium + priority: 20 + maxTemp: 300 + reactants: + Frezon: + amount: 3 + Plasma: + amount: 1 + catalyst: true + Nitrogen: + amount: 2 + Cryoxadone: + amount: 0.22 + TableSalt: + amount: 0.08 + Water: + amount: 1.5 + effects: + - !type:CreateGas + gas: Nitrogen + products: + Fresium: 5 + - type: reaction id: FiberBreakdown requiredMixerCategories: @@ -121,3 +159,4 @@ products: Carbon: 3 Sugar: 2 + diff --git a/Resources/Prototypes/tags.yml b/Resources/Prototypes/tags.yml index 4a2843bf24..0a5044b848 100644 --- a/Resources/Prototypes/tags.yml +++ b/Resources/Prototypes/tags.yml @@ -632,6 +632,9 @@ - type: Tag id: Hotsauce +- type: Tag + id: Ice + - type: Tag id: Igniter -- 2.51.2