]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
Add pet bag - wearable backpack for pets (#37440)
authorSparlight <twiksparlight@gmail.com>
Sat, 14 Jun 2025 16:09:05 +0000 (10:09 -0600)
committerGitHub <noreply@github.com>
Sat, 14 Jun 2025 16:09:05 +0000 (09:09 -0700)
* Add pet bag

* Trailing whitespace moment

* make the linter happy

* Fix trailing whitespace concern.

* Fix Construction component oopsy-daisy

* yml guideline moment

* remove weird extra whitespace

* make the maintainer happy

* Adjusted bag visuals based on feedback

* Allow the fox aghost admin to use pet bags

15 files changed:
Resources/Locale/en-US/recipes/tags.ftl
Resources/Prototypes/Entities/Clothing/Back/backpacks.yml
Resources/Prototypes/Entities/Clothing/Back/specific.yml
Resources/Prototypes/InventoryTemplates/arachnid_inventory_template.yml
Resources/Prototypes/InventoryTemplates/diona_inventory_template.yml
Resources/Prototypes/InventoryTemplates/human_inventory_template.yml
Resources/Prototypes/InventoryTemplates/smartcorgi_inventory_template.yml
Resources/Prototypes/Recipes/Crafting/Graphs/improvised/petbag.yml [new file with mode: 0644]
Resources/Prototypes/Recipes/Crafting/improvised.yml
Resources/Prototypes/tags.yml
Resources/Textures/Clothing/Back/Specific/petbag.rsi/equipped-BACKPACK.png [new file with mode: 0644]
Resources/Textures/Clothing/Back/Specific/petbag.rsi/icon.png [new file with mode: 0644]
Resources/Textures/Clothing/Back/Specific/petbag.rsi/inhand-left.png [new file with mode: 0644]
Resources/Textures/Clothing/Back/Specific/petbag.rsi/inhand-right.png [new file with mode: 0644]
Resources/Textures/Clothing/Back/Specific/petbag.rsi/meta.json [new file with mode: 0644]

index 74b58d9278939c6226717caacfd6bcac9799a94e..11722a6f5ab5d72e43876c2e55aea0ecc3f690e9 100644 (file)
@@ -145,3 +145,6 @@ construction-graph-tag-fire-helmet = fire helmet
 
 # salvage
 construction-graph-tag-spationaut-hardsuit = spationaut hardsuit
+
+# clothing
+construction-graph-tag-backpack = backpack
index e2d3c209eabdde9ffbea396e2b0dc1be3d4cd532..4d406e9508ea72c4d95cdc1573d334e36f8c84d5 100644 (file)
     delay: 0.5
   - type: ExplosionResistance
     damageCoefficient: 0.9
+  - type: Tag
+    tags:
+    - WhitelistChameleon
+    - Backpack
 
 - type: entity
   parent: ClothingBackpack
index 9ff6871b3c72aef3490343f60d68d3f648168de5..ff06b93bbf26daf5f6f7f5e3674307d7bf8dd7d0 100644 (file)
     solution: tank
   - type: ExaminableSolution
     solution: tank
+
+- type: entity
+  parent: ClothingBackpack
+  id: ClothingBagPet
+  name: pet bag
+  description: A small bag designed for use by pets and small animals.
+  components:
+  - type: Sprite
+    sprite: Clothing/Back/Specific/petbag.rsi
+  - type: Storage
+    grid:
+    - 1,0,2,0
+    - 0,1,2,3
+    - 6,0,7,0
+    - 6,1,8,3
+  - type: Tag
+    tags:
+    - WhitelistChameleon
+    - CorgiWearable
+    - PetOnly
+  - type: Construction
+    graph: ClothingBagPet
+    node: bagPet
index e3ac371ebde3431a66be7914c6c4c6f8bd8c67b0..88af5327596c93ef1c29e68139895f173b15bc36 100644 (file)
@@ -1,4 +1,4 @@
-- type: inventoryTemplate
+- type: inventoryTemplate
   id: arachnid
   slots:
     - name: shoes
@@ -81,6 +81,9 @@
       uiWindowPos: 3,0
       strippingWindowPos: 0,5
       displayName: Back
+      blacklist:
+        tags:
+        - PetOnly
 
     - name: pocket4
       slotTexture: web
index 619aefddc34c4b6b2057bda05f6d903b8244bfa8..b1e925372930753c40edb9a35ba5e62cacbb7e10 100644 (file)
@@ -1,4 +1,4 @@
-#human but no shoes
+#human but no shoes
 - type: inventoryTemplate
   id: diona
   slots:
       uiWindowPos: 3,0
       strippingWindowPos: 0,5
       displayName: Back
+      blacklist:
+        tags:
+        - PetOnly
index ff1447931fe324268571d784e44c370c8373ab2c..ed7b4e0dc1fe52ea5df389a90cfcb766c3500db5 100644 (file)
@@ -1,4 +1,4 @@
-- type: inventoryTemplate
+- type: inventoryTemplate
   id: human
   slots:
     - name: shoes
       uiWindowPos: 3,0
       strippingWindowPos: 0,5
       displayName: Back
+      blacklist:
+        tags:
+        - PetOnly
index 069637800a693f42e47df2393e85aaf00eb5c1fc..a775b6373bdc6d9cebdad12d2cba20bb64f8fad9 100644 (file)
     whitelist:
       tags:
       - CorgiWearable
+  - name: back
+    slotTexture: back
+    fullTextureName: template_small
+    slotFlags: BACK
+    slotGroup: SecondHotbar
+    stripTime: 6
+    uiWindowPos: 3,0
+    strippingWindowPos: 0,5
+    displayName: Back
+    whitelist:
+      tags:
+      - CorgiWearable
diff --git a/Resources/Prototypes/Recipes/Crafting/Graphs/improvised/petbag.yml b/Resources/Prototypes/Recipes/Crafting/Graphs/improvised/petbag.yml
new file mode 100644 (file)
index 0000000..61f43e5
--- /dev/null
@@ -0,0 +1,19 @@
+- type: constructionGraph
+  id: ClothingBagPet
+  start: start
+  graph:
+  - node: start
+    edges:
+    - to: bagPet
+      steps:
+      - tag: Backpack
+        name: construction-graph-tag-backpack
+        icon:
+          sprite: Clothing/Back/Backpacks/backpack.rsi
+          state: icon
+        doAfter: 1
+      - material: Cable
+        amount: 10
+        doAfter: 1
+  - node: bagPet
+    entity: ClothingBagPet
index dd4393b77c9c7b390941d947b13ba4e65c855009..d7e03c5257d8228b465bc4a171861c4eb965b8ed 100644 (file)
   targetNode: scraphelmet
   category: construction-category-clothing
   objectType: Item
+
+- type: construction
+  id: ClothingBagPet
+  graph: ClothingBagPet
+  startNode: start
+  targetNode: bagPet
+  category: construction-category-clothing
+  objectType: Item
index ab2aebc490c02945a9a47c58d0041bfe24e9c485..c10eb514862872d3a0027180a84dfe882cd1d693 100644 (file)
@@ -42,6 +42,9 @@
 - type: Tag
   id: ATVKeys
 
+- type: Tag
+  id: Backpack
+
 - type: Tag
   id: Balloon
 
 - type: Tag
   id: PercussionInstrument
 
+- type: Tag
+  id: PetOnly
+
 - type: Tag
   id: PetWearable
 
diff --git a/Resources/Textures/Clothing/Back/Specific/petbag.rsi/equipped-BACKPACK.png b/Resources/Textures/Clothing/Back/Specific/petbag.rsi/equipped-BACKPACK.png
new file mode 100644 (file)
index 0000000..7e5ad06
Binary files /dev/null and b/Resources/Textures/Clothing/Back/Specific/petbag.rsi/equipped-BACKPACK.png differ
diff --git a/Resources/Textures/Clothing/Back/Specific/petbag.rsi/icon.png b/Resources/Textures/Clothing/Back/Specific/petbag.rsi/icon.png
new file mode 100644 (file)
index 0000000..b0b2649
Binary files /dev/null and b/Resources/Textures/Clothing/Back/Specific/petbag.rsi/icon.png differ
diff --git a/Resources/Textures/Clothing/Back/Specific/petbag.rsi/inhand-left.png b/Resources/Textures/Clothing/Back/Specific/petbag.rsi/inhand-left.png
new file mode 100644 (file)
index 0000000..e554bb0
Binary files /dev/null and b/Resources/Textures/Clothing/Back/Specific/petbag.rsi/inhand-left.png differ
diff --git a/Resources/Textures/Clothing/Back/Specific/petbag.rsi/inhand-right.png b/Resources/Textures/Clothing/Back/Specific/petbag.rsi/inhand-right.png
new file mode 100644 (file)
index 0000000..25a0deb
Binary files /dev/null and b/Resources/Textures/Clothing/Back/Specific/petbag.rsi/inhand-right.png differ
diff --git a/Resources/Textures/Clothing/Back/Specific/petbag.rsi/meta.json b/Resources/Textures/Clothing/Back/Specific/petbag.rsi/meta.json
new file mode 100644 (file)
index 0000000..010e360
--- /dev/null
@@ -0,0 +1,26 @@
+{
+    "version": 1,
+    "license": "CC-BY-SA-3.0",
+    "copyright": "Sprited by Sparlight (GitHub) for SS14.  icon modified by Samuka-C (Github) to make the straps less ugly.",
+    "size": {
+        "x": 32,
+        "y": 32
+    },
+    "states": [
+        {
+            "name": "icon"
+        },
+        {
+            "name": "equipped-BACKPACK",
+            "directions": 4
+        },
+        {
+            "name": "inhand-left",
+            "directions": 4
+        },
+        {
+            "name": "inhand-right",
+            "directions": 4
+        }
+    ]
+}