]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
[entity] Mega Spray Bottle (#15558)
authorNemanja <98561806+EmoGarbage404@users.noreply.github.com>
Fri, 21 Apr 2023 09:16:33 +0000 (05:16 -0400)
committerGitHub <noreply@github.com>
Fri, 21 Apr 2023 09:16:33 +0000 (03:16 -0600)
Content.Server/Chemistry/EntitySystems/VaporSystem.cs
Resources/Locale/en-US/prototypes/catalog/research/technologies.ftl
Resources/Prototypes/Catalog/Research/technologies.yml
Resources/Prototypes/Entities/Objects/Specific/Janitorial/spray.yml
Resources/Prototypes/Entities/Structures/Machines/lathe.yml
Resources/Prototypes/Recipes/Lathes/janitorial.yml
Resources/Textures/Objects/Specific/Janitorial/janitorial.rsi/cleaner_large.png [new file with mode: 0644]
Resources/Textures/Objects/Specific/Janitorial/janitorial.rsi/meta.json

index d4f67de5480e32b9ce99f195ecf151c2c3d663c9..106867ccbc6eec4db83168c1034ff3b9d0ca2d74 100644 (file)
@@ -63,7 +63,7 @@ namespace Content.Server.Chemistry.EntitySystems
                 _physics.SetLinearDamping(physics, 0f);
                 _physics.SetAngularDamping(physics, 0f);
 
-                _throwing.TryThrow(vapor.Owner, dir * speed, user: user, pushbackRatio: 50f);
+                _throwing.TryThrow(vapor.Owner, dir * speed, speed, user: user, pushbackRatio: 50f);
 
                 var distance = (target.Position - vaporXform.WorldPosition).Length;
                 var time = (distance / physics.LinearVelocity.Length);
index f134dce9c2d77a70e181479982693bff5d75f078..f98366b17e3cfdc90d0735571643d670ed8ac0bc 100644 (file)
@@ -5,7 +5,7 @@ technologies-cleaning-technology = Cleaning technology
 technologies-cleaning-technology-description = Start to a shiny clean station.
 
 technologies-advanced-cleaning-technology = Advanced cleaning technology
-technologies-advanced-cleaning-technology-description = Advanced mop won't stop people from trashing the station, sadly.
+technologies-advanced-cleaning-technology-description = Advanced tools won't stop people from trashing the station, sadly.
 
 technologies-foodbev-technology = Food and beverage technology
 technologies-food-and-beverage-technology-description = Robust service from better technology.
index e492a847c509c2f15e27220316c52eb1323cefd4..bfbae68d970eecfbcb4974de424df070af3511cd 100644 (file)
@@ -28,6 +28,7 @@
   - Bucket
   - MopItem
   - SprayBottle
+
 - type: technology
   name: technologies-advanced-cleaning-technology
   id: AdvancedCleaningTechnology
     state: advmop
   requiredPoints: 5000
   requiredTechnologies:
-    - BasicResearch
     - CleaningTechnology
   unlockedRecipes:
     - AdvMopItem
+    - MegaSprayBottle
 
 # Food/Bev Service Technology Tree
 
index 3bb9c97fd9cfb83a3dc1f2f1f9c2c0ca7fc1a17f..8106e170a7d0fc338783cd8f1823d9db1d308c96 100644 (file)
@@ -24,6 +24,7 @@
   - type: DrainableSolution
     solution: spray
   - type: SolutionTransfer
+    canChangeTransferAmount: true
   - type: ItemCooldown
   - type: Spray
     transferAmount: 10
   - type: TrashOnEmpty
     solution: spray
 
+- type: entity
+  name: mega spray bottle
+  id: MegaSprayBottle
+  parent: SprayBottle
+  suffix: Empty
+  description: A huge spray bottle, capable of unrivaled janitorial power.
+  components:
+  - type: Sprite
+    netsync: false
+    sprite: Objects/Specific/Janitorial/janitorial.rsi
+    state: cleaner_large
+  - type: SolutionContainerManager
+    solutions:
+      spray:
+        maxVol: 250
+  - type: Spray
+    sprayedPrototype: BigVapor
+    transferAmount: 10
+    sprayVelocity: 5
+    sprayAliveTime: 1.5
+    spraySound:
+      path: /Audio/Effects/spray2.ogg
+
 - type: entity
   name: spray bottle
   id: SprayBottleWater
       - Opaque
   - type: Appearance
   - type: VaporVisuals
+
+- type: entity
+  id: BigVapor
+  parent: Vapor
+  noSpawn: true
+  components:
+  - type: Sprite
+    netsync: false
+    sprite: Effects/chempuff.rsi
+    rotation: 90
+    layers:
+    - state: chempuff
+      scale: 2, 2
+      map: ["enum.VaporVisualLayers.Base"]
+  - type: Fixtures
+    fixtures:
+    - shape:
+        !type:PhysShapeAabb
+        bounds: "-0.6,-0.6,0.6,0.6"
+      hard: false
+      mask:
+      - FullTileMask
+      - Opaque
index 316b78ecf617e09cd88b1b9aef0c50648b0cc7ab..62a89a3dda935202e07dc1db8ac469709ce434f9 100644 (file)
       - MopItem
       - AdvMopItem
       - SprayBottle
+      - MegaSprayBottle
       - FireExtinguisher
       - KitchenKnife
       - ButchCleaver
index 1515ccdaada5cb70622609f04897cf35cd9cbeb4..f05b0604471576035c7be787ab8a208c0bb92613 100644 (file)
   materials:
     Plastic: 100
 
+- type: latheRecipe
+  id: MegaSprayBottle
+  result: MegaSprayBottle
+  completetime: 3
+  materials:
+    Plastic: 250
+
 - type: latheRecipe
   id: SprayBottle
   result: SprayBottle
diff --git a/Resources/Textures/Objects/Specific/Janitorial/janitorial.rsi/cleaner_large.png b/Resources/Textures/Objects/Specific/Janitorial/janitorial.rsi/cleaner_large.png
new file mode 100644 (file)
index 0000000..eae0069
Binary files /dev/null and b/Resources/Textures/Objects/Specific/Janitorial/janitorial.rsi/cleaner_large.png differ
index 138f9c25c7e32f1ab10a749ce309aa105c21fb00..ae3103e2be2adc016f0e99e69c4c7a9b3b2361ed 100644 (file)
@@ -10,6 +10,9 @@
     {
       "name": "cleaner"
     },
+    {
+      "name": "cleaner_large"
+    },
     {
       "name": "mopbucket"
     },