From bc00a635b98b090fa07d3784b5910ed5035c64e2 Mon Sep 17 00:00:00 2001 From: IProduceWidgets <107586145+IProduceWidgets@users.noreply.github.com> Date: Sat, 2 Sep 2023 01:32:08 -0400 Subject: [PATCH] Makes Plant-B-Gone available to cargo, and Diona vulnerable. (#19555) * Adds WeekKiller storage tanks and allows Cargo to purchase them. * Delete CellMemberRoll.cs Woops, this template file snuck in after I reset my local. It doesn't do anything, just empty classes. * Switched from WeedKiller to PlantBeGone because WeedKiller is too deadly. Honestly is probably shouldn't be in Botany so readily. Made Diona take damage from PlantBeGone and WeedKiller. Adjusted waterguns to use less reagent per shot. Added admeme watergun. Adjusted watergun cargo crate. * Fixing small .yml formatting hiccups. * Fixing small .yml formatting. * Fix Typo. * watergun min solution match shot size Makes watergun's minimum solution transfer match shot size (5u). * I pass tests now, please? Nothing. * Lower Diona herbicide damages Remove slime changes Lower super water blaster size to 500u (100 shots) --- .../SolutionAmmoProviderComponent.cs | 2 +- .../catalog/fills/crates/botany-crates.ftl | 4 ++ Resources/Locale/en-US/species/diona.ftl | 1 + .../Prototypes/Catalog/Cargo/cargo_botany.yml | 10 ++++ .../Catalog/Cargo/cargo_materials.yml | 4 +- .../Catalog/Fills/Crates/chemistry.yml | 9 ++++ .../Prototypes/Catalog/Fills/Crates/fun.yml | 3 +- .../Entities/Mobs/Species/diona.yml | 38 +++++++++++++++ .../Objects/Specific/chemical-containers.yml | 15 ++++++ .../Objects/Weapons/Guns/Basic/watergun.yml | 47 +++++++++++++++++-- .../Structures/Storage/Tanks/tanks.yml | 2 +- 11 files changed, 125 insertions(+), 10 deletions(-) create mode 100644 Resources/Locale/en-US/species/diona.ftl diff --git a/Content.Shared/Weapons/Ranged/Components/SolutionAmmoProviderComponent.cs b/Content.Shared/Weapons/Ranged/Components/SolutionAmmoProviderComponent.cs index 4a76281d4b..d936f3a9e2 100644 --- a/Content.Shared/Weapons/Ranged/Components/SolutionAmmoProviderComponent.cs +++ b/Content.Shared/Weapons/Ranged/Components/SolutionAmmoProviderComponent.cs @@ -18,7 +18,7 @@ public sealed partial class SolutionAmmoProviderComponent : Component /// How much reagent it costs to fire once. /// [DataField("fireCost"), ViewVariables(VVAccess.ReadWrite), AutoNetworkedField] - public float FireCost = 10; + public float FireCost = 5; /// /// The amount of shots currently available. diff --git a/Resources/Locale/en-US/prototypes/catalog/fills/crates/botany-crates.ftl b/Resources/Locale/en-US/prototypes/catalog/fills/crates/botany-crates.ftl index 0d772fa47f..abba29377d 100644 --- a/Resources/Locale/en-US/prototypes/catalog/fills/crates/botany-crates.ftl +++ b/Resources/Locale/en-US/prototypes/catalog/fills/crates/botany-crates.ftl @@ -9,3 +9,7 @@ ent-CrateHydroponicsTools = Hydroponics equipment crate ent-CrateHydroponicsSeeds = Seeds crate .desc = Big things have small beginnings. Contains twelve different seeds. + +ent-CratePlantBGone = Bulk Plant-B-Gone crate + .desc = From Monstano. "Unwanted Weeds, Meet Your Celestial Roundup!" + \ No newline at end of file diff --git a/Resources/Locale/en-US/species/diona.ftl b/Resources/Locale/en-US/species/diona.ftl new file mode 100644 index 0000000000..d0bb2d1e72 --- /dev/null +++ b/Resources/Locale/en-US/species/diona.ftl @@ -0,0 +1 @@ +diona-hurt-by-herbicide-popup = The chemical wilts some of your greenery! \ No newline at end of file diff --git a/Resources/Prototypes/Catalog/Cargo/cargo_botany.yml b/Resources/Prototypes/Catalog/Cargo/cargo_botany.yml index 5b5fbe9cf8..f56b729217 100644 --- a/Resources/Prototypes/Catalog/Cargo/cargo_botany.yml +++ b/Resources/Prototypes/Catalog/Cargo/cargo_botany.yml @@ -37,3 +37,13 @@ cost: 500 category: Hydroponics group: market + +- type: cargoProduct + id: BulkPlantBGone + icon: + sprite: Objects/Specific/Chemistry/jug.rsi + state: jug + product: CratePlantBGone + cost: 750 + category: Hydroponics + group: market diff --git a/Resources/Prototypes/Catalog/Cargo/cargo_materials.yml b/Resources/Prototypes/Catalog/Cargo/cargo_materials.yml index 464afe63b3..98dc8671de 100644 --- a/Resources/Prototypes/Catalog/Cargo/cargo_materials.yml +++ b/Resources/Prototypes/Catalog/Cargo/cargo_materials.yml @@ -77,7 +77,7 @@ cost: 1500 category: Materials group: market - + - type: cargoProduct id: MaterialWaterTank icon: @@ -86,4 +86,4 @@ product: WaterTankFull cost: 1000 category: Materials - group: market + group: market \ No newline at end of file diff --git a/Resources/Prototypes/Catalog/Fills/Crates/chemistry.yml b/Resources/Prototypes/Catalog/Fills/Crates/chemistry.yml index 2f8080e481..5664fa2d44 100644 --- a/Resources/Prototypes/Catalog/Fills/Crates/chemistry.yml +++ b/Resources/Prototypes/Catalog/Fills/Crates/chemistry.yml @@ -58,3 +58,12 @@ amount: 1 - id: JugSilver amount: 1 + +- type: entity + id: CratePlantBGone + parent: CrateGenericSteel + components: + - type: StorageFill + contents: + - id: JugPlantBGone + amount: 5 diff --git a/Resources/Prototypes/Catalog/Fills/Crates/fun.yml b/Resources/Prototypes/Catalog/Fills/Crates/fun.yml index 25c5a0105f..1136958c62 100644 --- a/Resources/Prototypes/Catalog/Fills/Crates/fun.yml +++ b/Resources/Prototypes/Catalog/Fills/Crates/fun.yml @@ -203,8 +203,9 @@ - type: StorageFill contents: - id: WeaponWaterBlaster + amount: 2 - id: WeaponWaterPistol - amount: 5 + amount: 4 - type: entity id: CrateFunSyndicateSegway diff --git a/Resources/Prototypes/Entities/Mobs/Species/diona.yml b/Resources/Prototypes/Entities/Mobs/Species/diona.yml index dc8cc07cf2..fa5a5b5e18 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/diona.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/diona.yml @@ -35,6 +35,44 @@ amount: 5 - type: Bloodstream bloodReagent: Water + - type: Reactive + groups: + Flammable: [ Touch ] + Extinguish: [ Touch ] + Acidic: [Touch, Ingestion] + reactions: + - reagents: [Water, SpaceCleaner] + methods: [Touch] + effects: + - !type:WashCreamPieReaction + - reagents: [ PlantBGone ] + methods: [ Touch ] + effects: + - !type:HealthChange + scaled: true + damage: + types: + Blunt: 2 + Slash: 2 + Piercing: 3 + - !type:PopupMessage + type: Local + visualType: Large + messages: [ "diona-hurt-by-herbicide-popup" ] + probability: 0.66 + - reagents: [ WeedKiller ] + methods: [ Touch ] + effects: + - !type:HealthChange + scaled: true + damage: + types: + Poison: 5 + - !type:PopupMessage + type: Local + visualType: Large + messages: [ "diona-hurt-by-herbicide-popup" ] + probability: 0.66 - type: Fixtures fixtures: fix1: diff --git a/Resources/Prototypes/Entities/Objects/Specific/chemical-containers.yml b/Resources/Prototypes/Entities/Objects/Specific/chemical-containers.yml index 3eaee03d5f..61cfbadbdc 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/chemical-containers.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/chemical-containers.yml @@ -378,3 +378,18 @@ reagents: - ReagentId: Oxygen Quantity: 200 + +- type: entity + parent: Jug + name: jug (Plant-B-Gone) + id: JugPlantBGone + noSpawn: true + components: + - type: Label + currentLabel: Plant-B-Gone + - type: SolutionContainerManager + solutions: + beaker: + reagents: + - ReagentId: PlantBGone + Quantity: 200 diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Basic/watergun.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Basic/watergun.yml index 0906f2c30e..a815f9c0cd 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Basic/watergun.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Basic/watergun.yml @@ -14,7 +14,7 @@ - type: Gun clumsyProof: true cameraRecoilScalar: 0 #no recoil - fireRate: 1 + fireRate: 2 selectedMode: SemiAuto availableModes: - SemiAuto @@ -23,12 +23,12 @@ - type: SolutionContainerManager solutions: chamber: - maxVol: 50 #5 shots + maxVol: 50 #10 shots - type: SolutionAmmoProvider solutionId: chamber proto: BulletWaterShot - type: SolutionTransfer - transferAmount: 10 + transferAmount: 5 maxTransferAmount: 50 minTransferAmount: 5 canChangeTransferAmount: true @@ -75,7 +75,7 @@ components: - type: Gun cameraRecoilScalar: 0 #no recoil - fireRate: 2 + fireRate: 3 selectedMode: FullAuto availableModes: - FullAuto @@ -84,7 +84,44 @@ - type: SolutionContainerManager solutions: chamber: - maxVol: 100 #10 shots + maxVol: 100 #20 shots + - type: Sprite + sprite: Objects/Weapons/Guns/Pistols/soaker.rsi + layers: + - state: detail1 + - state: detail2 + map: ["enum.PowerDeviceVisualLayers.Powered"] + - state: icon + map: [ "enum.DamageStateVisualLayers.Base" ] + - type: Item + sprite: Objects/Weapons/Guns/Pistols/soaker.rsi + size: 35 + - type: RandomSprite + getAllGroups: true + available: + - enum.DamageStateVisualLayers.Base: + icon: Rainbow + - enum.PowerDeviceVisualLayers.Powered: + detail2: Sixteen + +- type: entity + id: WeaponWaterBlasterSuper + parent: WeaponWaterGunBase + name: super water blaster + description: No! No! Not in the eyes! + components: + - type: Gun + cameraRecoilScalar: 0 #no recoil + fireRate: 8 + selectedMode: FullAuto + availableModes: + - FullAuto + soundGunshot: + path: /Audio/Weapons/Guns/Gunshots/water_spray.ogg + - type: SolutionContainerManager + solutions: + chamber: + maxVol: 500 #100 shots - type: Sprite sprite: Objects/Weapons/Guns/Pistols/soaker.rsi layers: diff --git a/Resources/Prototypes/Entities/Structures/Storage/Tanks/tanks.yml b/Resources/Prototypes/Entities/Structures/Storage/Tanks/tanks.yml index 86cdfa62e5..f4269b1fab 100644 --- a/Resources/Prototypes/Entities/Structures/Storage/Tanks/tanks.yml +++ b/Resources/Prototypes/Entities/Structures/Storage/Tanks/tanks.yml @@ -156,4 +156,4 @@ - type: ExaminableSolution solution: tank - type: ReagentTank - transferAmount: 100 + transferAmount: 100 \ No newline at end of file