]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
Add the most anticipated gun in the game. Foam Force. (#29103)
authorIProduceWidgets <107586145+IProduceWidgets@users.noreply.github.com>
Tue, 18 Jun 2024 15:04:15 +0000 (11:04 -0400)
committerGitHub <noreply@github.com>
Tue, 18 Jun 2024 15:04:15 +0000 (01:04 +1000)
* Foam Force

* make it available somewhere

* add clumsyproof and nuke dev item

* reorganize

* oopsy files

* Strap!

* woopsie layering

* fix grammar to rerun tests for rogue unrelated test fail.

* cleanup

* I eepy layer forgetti spaghetti

* For real last necessary commit

* Oops I broke the law! feexed

* Decided to just change it to the same source as the poster source in our repo for consistency.

19 files changed:
Resources/Prototypes/Catalog/Fills/Crates/cargo.yml
Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Magazines/toy.yml [new file with mode: 0644]
Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/toy.yml
Resources/Prototypes/Entities/Objects/Weapons/Guns/Rifles/rifles.yml
Resources/Prototypes/Entities/Objects/Weapons/Throwable/clusterbang.yml
Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/icon.png [new file with mode: 0644]
Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/meta.json [new file with mode: 0644]
Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/primed.png [new file with mode: 0644]
Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/bolt-open.png [new file with mode: 0644]
Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/equipped-BACKPACK.png [new file with mode: 0644]
Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/equipped-SUITSTORAGE.png [new file with mode: 0644]
Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/icon.png [new file with mode: 0644]
Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/meta.json [new file with mode: 0644]
Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/inhand-left.png [new file with mode: 0644]
Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/inhand-right.png [new file with mode: 0644]
Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/meta.json [new file with mode: 0644]
Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/wielded-inhand-left.png [new file with mode: 0644]
Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/wielded-inhand-right.png [new file with mode: 0644]
Resources/Textures/Objects/Weapons/Guns/Shotguns/pump.rsi/meta.json

index b9d45f0f960ab6c56e455a7ac6dd05d069d9de07..7ef8a8262d60bd1bba47d2eb3df2cb4be28387ae 100644 (file)
     - id: WeaponTurretXeno
       prob: 0.01
       orGroup: Weapons
+    - id: WeaponRifleFoam
+      prob: 0.03
+      orGroup: Weapons
     #clothing
     - id: ClothingUniformJumpsuitFamilyGuy
       prob: 0.05
     - id: WeakKudzu
       prob: 0.01
       orGroup: NotUseful
+    - id: MagazineFoamBox
+      prob: 0.001
+      orGroup: NotUseful
+    - id: BoxDonkSoftBox
+      prob: 0.008
+      orGroup: NotUseful
+    - id: GrenadeFoamDart
+      prob: 0.001
+      orGroup: NotUseful
\ No newline at end of file
diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Magazines/toy.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Magazines/toy.yml
new file mode 100644 (file)
index 0000000..babbc26
--- /dev/null
@@ -0,0 +1,12 @@
+- type: entity
+  parent: MagazineLightRifleBox # It goes in a saw, its funny.
+  id: MagazineFoamBox
+  name: ammunition box (foam)
+  components:
+  - type: BallisticAmmoProvider
+    mayTransfer: true
+    whitelist:
+      tags:
+        - BulletFoam
+    proto: BulletFoam
+    capacity: 100
\ No newline at end of file
index 34a39c1583eb707677c0bdae9a8ffe02b57942a8..9b6c288e3786644a1b6436b39a99e7c7250d59af 100644 (file)
@@ -4,12 +4,30 @@
   name: foam dart
   parent: BaseItem
   components:
-    - type: Tag
-      tags:
-        - BulletFoam
-        - Trash
-    - type: Ammo
-    - type: Sprite
-      sprite: Objects/Fun/toys.rsi
-      layers:
-        - state: foamdart
+  - type: Fixtures
+    fixtures:
+      fix1:
+        shape: !type:PolygonShape
+          vertices:
+            - -0.05,-0.15
+            - -0.05,0.25
+            - 0.05,-0.15
+            - 0.05,0.25
+        density: 20
+        mask:
+        - ItemMask
+        restitution: 0.3
+        friction: 0.2
+  - type: Tag
+    tags:
+      - BulletFoam
+      - Trash
+  - type: Ammo
+  - type: Sprite
+    sprite: Objects/Fun/toys.rsi
+    layers:
+      - state: foamdart
+  - type: EmbeddableProjectile
+    removalTime: .2
+  - type: ThrowingAngle
+    angle: 180
index c034ac5749ae2abebf7258c8f5bf5b37cb4877d3..9300367cdec3d319b1857ea22eabac1d90b8bb44 100644 (file)
     steps: 1
     zeroVisible: true
   - type: Appearance
+
+- type: entity
+  name: Foam Force Astro Ace
+  parent: [BaseWeaponShotgun, BaseGunWieldable]
+  id: WeaponRifleFoam
+  description: A premium foam rifle of the highest quality. Its plastic feels rugged, and its mechanisms sturdy.
+  components:
+  - type: Sprite
+    sprite: Objects/Weapons/Guns/Rifles/foam_rifle.rsi
+  - type: Clothing
+    sprite: Objects/Weapons/Guns/Rifles/foam_rifle.rsi
+  - type: Item
+    sprite: Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi
+  - type: BallisticAmmoProvider    
+    whitelist:
+      tags:
+      - BulletFoam
+    capacity: 10
+    proto: BulletFoam
+  - type: GunRequiresWield #remove when inaccuracy on spreads is fixed
+  - type: Gun
+    fireRate: 2
+    selectedMode: SemiAuto
+    availableModes:
+    - SemiAuto
+    soundGunshot:
+      path: /Audio/Effects/thunk.ogg
+    soundEmpty:
+      path: /Audio/Weapons/Guns/Empty/empty.ogg
+    clumsyProof: true
index 36d4c947fcd7601c5193ad9270120c2944255840..35174ba34d26dffe6764f175f0d9ccf845a31181 100644 (file)
   - type: ContainerContainer
     containers:
       cluster-payload: !type:Container
+
+- type: entity
+  parent: GrenadeShrapnel
+  id: GrenadeFoamDart
+  name: foam dart grenade
+  description: Releases a bothersome spray of foam darts that cause severe welching.
+  components:
+  - type: Sprite
+    sprite: Objects/Weapons/Grenades/foamdart.rsi
+    layers:
+    - state: icon
+      map: ["Base"]
+    - state: primed
+      map: ["enum.TriggerVisualLayers.Base"]
+  - type: ClusterGrenade
+    fillPrototype: BulletFoam
+    maxGrenadesCount: 30
+    grenadeType: enum.GrenadeType.Throw
+    velocity: 70
diff --git a/Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/icon.png b/Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/icon.png
new file mode 100644 (file)
index 0000000..b986e22
Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/meta.json b/Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/meta.json
new file mode 100644 (file)
index 0000000..ba51985
--- /dev/null
@@ -0,0 +1,17 @@
+{
+  "version": 1,
+  "license": "CC-BY-NC-SA-3.0",
+  "copyright": "Taken from goonstation at https://github.com/goonstation/goonstation/pull/13630",
+  "size": {
+    "x": 32,
+    "y": 32
+  },
+  "states": [
+    {
+      "name": "icon"
+    },
+    {
+      "name": "primed"
+    }
+  ]
+}
diff --git a/Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/primed.png b/Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/primed.png
new file mode 100644 (file)
index 0000000..0d8b9b7
Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/primed.png differ
diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/bolt-open.png b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/bolt-open.png
new file mode 100644 (file)
index 0000000..7a11eab
Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/bolt-open.png differ
diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/equipped-BACKPACK.png b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/equipped-BACKPACK.png
new file mode 100644 (file)
index 0000000..ec34a1b
Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/equipped-BACKPACK.png differ
diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/equipped-SUITSTORAGE.png b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/equipped-SUITSTORAGE.png
new file mode 100644 (file)
index 0000000..ec34a1b
Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/equipped-SUITSTORAGE.png differ
diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/icon.png b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/icon.png
new file mode 100644 (file)
index 0000000..ba597a8
Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/meta.json
new file mode 100644 (file)
index 0000000..ceffec9
--- /dev/null
@@ -0,0 +1,25 @@
+{
+    "version": 1,
+    "license": "CC-BY-SA-3.0",
+    "copyright": "Taken from  at commit https://github.com/tgstation/tgstation/commit/f01de25493e2bd2706ef9b0303cb0d7b5e3e471b and modified from the foam force poster by IProduceWidgets (github)",
+    "size": {
+        "x": 32,
+        "y": 32
+    },
+    "states": [
+        {
+            "name": "icon"
+        },
+        {
+            "name": "bolt-open"
+        },
+        {
+            "name": "equipped-BACKPACK",
+            "directions": 4
+        },
+        {
+            "name": "equipped-SUITSTORAGE",
+            "directions": 4
+        }
+    ]
+}
diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/inhand-left.png b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/inhand-left.png
new file mode 100644 (file)
index 0000000..931a8ef
Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/inhand-left.png differ
diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/inhand-right.png b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/inhand-right.png
new file mode 100644 (file)
index 0000000..570f8be
Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/inhand-right.png differ
diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/meta.json
new file mode 100644 (file)
index 0000000..b89b33c
--- /dev/null
@@ -0,0 +1,27 @@
+{
+    "version": 1,
+    "license": "CC-BY-SA-3.0",
+    "copyright": "Taken from  at commit https://github.com/tgstation/tgstation/commit/f01de25493e2bd2706ef9b0303cb0d7b5e3e471b sprite created from foam force poster by IProduceWidgets (github)",
+    "size": {
+        "x": 64,
+        "y": 64
+    },
+    "states": [
+        {
+            "name": "inhand-left",
+            "directions": 4
+        },
+        {
+            "name": "inhand-right",
+            "directions": 4
+        },
+        {
+            "name": "wielded-inhand-left",
+            "directions": 4
+        },
+        {
+            "name": "wielded-inhand-right",
+            "directions": 4
+        }
+    ]
+}
diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/wielded-inhand-left.png b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/wielded-inhand-left.png
new file mode 100644 (file)
index 0000000..3526954
Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/wielded-inhand-left.png differ
diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/wielded-inhand-right.png b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/wielded-inhand-right.png
new file mode 100644 (file)
index 0000000..297ae7a
Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/wielded-inhand-right.png differ
index 3add3a471b6fa37a4464d0801282f5bc343fe73e..3e793381d0fa8eef505e5eda6093e59c622db841 100644 (file)
@@ -22,4 +22,4 @@
             "directions": 4
         }
     ]
-}
+}
\ No newline at end of file