]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
Make safes craftable (#32694)
authorlzk <124214523+lzk228@users.noreply.github.com>
Wed, 18 Dec 2024 11:26:19 +0000 (12:26 +0100)
committerGitHub <noreply@github.com>
Wed, 18 Dec 2024 11:26:19 +0000 (12:26 +0100)
* Made the Armory Gun Safe craftable with 10 steel, 10 plasteel, and 5 LV cables.

* Changed gun safe price to 335, to match the cost of its material components. Changed gun safe to start with no accesses when constructed.

* adress the review

* yeah

* wrah

* test fail is not real

---------

Co-authored-by: Ty Ashley <42426760+TyAshley@users.noreply.github.com>
Resources/Prototypes/Catalog/Fills/Lockers/security.yml
Resources/Prototypes/Entities/Structures/Storage/Closets/Lockers/lockers.yml
Resources/Prototypes/Recipes/Crafting/Graphs/storage/tallbox.yml
Resources/Prototypes/Recipes/Crafting/tallbox.yml

index 0c4f04fa128ff50ef5caba69dec40763f93d3514..4e5251c27e7c0b5bffbf7faae8c42af9187eb19c 100644 (file)
         prob: 0.5
 
 - type: entity
-  parent: [GunSafe, BaseRestrictedContraband]
+  parent: [GunSafeBaseSecure, BaseRestrictedContraband]
   id: GunSafeDisabler
   name: disabler safe
   components:
       amount: 5
 
 - type: entity
-  parent: [GunSafe, BaseRestrictedContraband]
+  parent: [GunSafeBaseSecure, BaseRestrictedContraband]
   id: GunSafePistolMk58
   name: mk58 safe
   components:
       amount: 8
 
 - type: entity
-  parent: [GunSafe, BaseRestrictedContraband]
+  parent: [GunSafeBaseSecure, BaseRestrictedContraband]
   id: GunSafeRifleLecter
   name: lecter safe
   components:
       amount: 4
 
 - type: entity
-  parent: [GunSafe, BaseRestrictedContraband]
+  parent: [GunSafeBaseSecure, BaseRestrictedContraband]
   id: GunSafeSubMachineGunDrozd
   name: drozd safe
   components:
       amount: 4
 
 - type: entity
-  parent: [GunSafe, BaseRestrictedContraband]
+  parent: [GunSafeBaseSecure, BaseRestrictedContraband]
   id: GunSafeShotgunEnforcer
   name: enforcer safe
   components:
       amount: 4
 
 - type: entity
-  parent: [GunSafe, BaseRestrictedContraband]
+  parent: [GunSafeBaseSecure, BaseRestrictedContraband]
   id: GunSafeShotgunKammerer
   name: kammerer safe
   components:
 - type: entity
   id: GunSafeSubMachineGunWt550
   suffix: Wt550
-  parent: [GunSafe, BaseRestrictedContraband]
+  parent: [GunSafeBaseSecure, BaseRestrictedContraband]
   name: wt550 safe
   components:
   - type: StorageFill
       amount: 4
 
 - type: entity
-  parent: GunSafe
+  parent: GunSafeBaseSecure
   id: GunSafeLaserCarbine
   name: laser safe
   components:
index 244ccf2e30c43446d9b1dc217dec1b8b67d6722f..0ab9e03fd1653fa740f401f5c6f2f86ff6912776 100644 (file)
     stateBaseClosed: shotguncase
     stateDoorOpen: shotguncase_open
     stateDoorClosed: shotguncase_door
+  - type: AccessReader
+  - type: Construction
+    graph: GunSafe
+    node: done
+    containers:
+    - entity_storage
+  - type: StaticPrice
+    price: 660
+
+- type: entity
+  id: GunSafeBaseSecure
+  parent: GunSafe
+  suffix: Armory, Locked
+  components:
   - type: AccessReader
     access: [["Armory"]]
 
index 17696eaaff88eeeb25f9a9837a36a7fa7fbab8de..c465d74db7b790fc79683efe5e97cbc42f958022 100644 (file)
       - !type:EmptyAllContainers
       - !type:DeleteEntity
 
+- type: constructionGraph
+  id: GunSafe
+  start: start
+  graph:
+  - node: start
+    edges:
+    - to: done
+      steps:
+      - material: Steel
+        amount: 10
+      - material: Cable
+        amount: 5
+        doAfter: 5
+      - material: Plasteel
+        amount: 10
+        doAfter: 10
+  - node: done
+    entity: GunSafe
+    edges:
+    - to: start
+      steps:
+      - tool: Screwing
+        doAfter: 5
+      conditions:
+      - !type:StorageWelded
+        welded: false
+      - !type:Locked
+        locked: false
+      completed:
+      - !type:SpawnPrototype
+        prototype: SheetSteel1
+        amount: 10
+      - !type:SpawnPrototype
+        prototype: CableApcStack1
+        amount: 5
+      - !type:SpawnPrototype
+        prototype: SheetPlasteel1
+        amount: 10
+      - !type:EmptyAllContainers
+      - !type:DeleteEntity
+
 - type: constructionGraph
   id: ClosetWall
   start: start
index c90142de44547abc191e199b69e5aeaf76713f80..7de80870afc07b0e7604f3c3519004ac3c20949a 100644 (file)
   icon: { sprite: Structures/Storage/closet.rsi, state: freezer_icon }
   objectType: Structure
 
+- type: construction
+  id: GunSafe
+  name: gun safe
+  graph: GunSafe
+  startNode: start
+  targetNode: done
+  category: construction-category-storage
+  description: A durable gun safe that can be locked.
+  icon: { sprite: Structures/Storage/closet.rsi, state: shotguncase }
+  objectType: Structure
+
 - type: construction
   id: ClosetWall
   name: wall closet