Skip to content

Commit

Permalink
added barrels & kegs
Browse files Browse the repository at this point in the history
  • Loading branch information
rosieposieeee committed Feb 13, 2024
1 parent 0fa44ba commit ad8d5a2
Show file tree
Hide file tree
Showing 9 changed files with 244 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@
- type: entity
parent: CrateGeneric
id: WoodenBarrel
name: wooden barrel
description: A musty old wooden barrel.
components:
- type: Sprite
sprite: DeltaV/Structures/Storage/barrel.rsi
layers:
- state: base
map: ["enum.StorageVisualLayers.Base"]
- state: closed
map: ["enum.StorageVisualLayers.Door"]
- type: Icon
sprite: DeltaV/Structures/Storage/barrel.rsi
state: base
- type: Damageable
damageContainer: StructuralInorganic
damageModifierSet: Wood
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 30
behaviors:
- !type:PlaySoundBehavior
sound:
collection: WoodDestroy
- !type:SpawnEntitiesBehavior
spawn:
MaterialWoodPlank1:
min: 1
max: 4
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: Construction
graph: WoodenBarrel
node: woodenbarrel
containers:
- entity_storage
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeAabb
bounds: "-0.2,-0.3,0.2,0.3"
density: 125
mask:
- SmallMobMask #this is so they can go under plastic flaps
layer:
- MachineLayer

- type: entity
parent: BaseStructureDynamic
id: WoodenKeg
name: wooden keg
description: A musty old wooden keg, with a tap attached to the front.
components:
- type: SolutionContainerManager
solutions:
keg:
maxVol: 500
canMix: true
- type: RefillableSolution
solution: keg
- type: DrainableSolution
solution: keg
- type: ExaminableSolution
solution: keg
- type: DrawableSolution
solution: keg
- type: InjectableSolution
solution: keg
- type: SolutionTransfer
canChangeTransferAmount: true
- type: UserInterface
interfaces:
- key: enum.TransferAmountUiKey.Key
type: TransferAmountBoundUserInterface
- type: Drink
solution: keg
- type: Spillable
solution: keg
- type: Sprite
sprite: DeltaV/Structures/Storage/keg.rsi
layers:
- state: base
map: ["enum.StorageVisualLayers.Base"]
- type: Icon
sprite: DeltaV/Structures/Storage/keg.rsi
state: base
- type: Damageable
damageContainer: StructuralInorganic
damageModifierSet: Wood
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 30
behaviors:
- !type:PlaySoundBehavior
sound:
collection: WoodDestroy
- !type:SpillBehavior
solution: keg
- !type:SpawnEntitiesBehavior
spawn:
MaterialWoodPlank1:
min: 1
max: 4
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: Construction
graph: WoodenKeg
node: woodenkeg
containers:
- entity_storage
- type: InteractionOutline
- type: Physics
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeAabb
bounds: "-0.2,-0.3,0.2,0.3"
density: 125
mask:
- SmallMobMask #this is so they can go under plastic flaps
layer:
- MachineLayer
- type: Transform
noRot: true
53 changes: 53 additions & 0 deletions Resources/Prototypes/DeltaV/Recipes/Crafting/Graphs/barrel.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
- type: constructionGraph
id: WoodenBarrel
start: start
graph:
- node: start
edges:
- to: woodenbarrel
steps:
- material: WoodPlank
amount: 5
doAfter: 5


- node: woodenbarrel
entity: WoodenBarrel
edges:
- to: start
steps:
- tool: Prying
doAfter: 5
completed:
- !type:SpawnPrototype
prototype: MaterialWoodPlank1
amount: 5
- !type:EmptyAllContainers
- !type:DeleteEntity

- type: constructionGraph
id: WoodenKeg
start: start
graph:
- node: start
edges:
- to: woodenkeg
steps:
- material: WoodPlank
amount: 5
doAfter: 5


- node: woodenkeg
entity: WoodenKeg
edges:
- to: start
steps:
- tool: Prying
doAfter: 5
completed:
- !type:SpawnPrototype
prototype: MaterialWoodPlank1
amount: 5
- !type:EmptyAllContainers
- !type:DeleteEntity
25 changes: 25 additions & 0 deletions Resources/Prototypes/DeltaV/Recipes/Crafting/barrel.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
- type: construction
name: wooden barrel
id: WoodenBarrel
graph: WoodenBarrel
startNode: start
targetNode: woodenbarrel
category: construction-category-storage
description: A musty old wooden barrel.
icon:
sprite: DeltaV/Structures/Storage/barrel.rsi
state: base
objectType: Structure

- type: construction
name: wooden keg
id: WoodenKeg
graph: WoodenKeg
startNode: start
targetNode: woodenkeg
category: construction-category-storage
description: A musty old wooden keg, with a tap attached to the front.
icon:
sprite: DeltaV/Structures/Storage/keg.rsi
state: base
objectType: Structure
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
20 changes: 20 additions & 0 deletions Resources/Textures/DeltaV/Structures/Storage/barrel.rsi/meta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
"copyright": "Taken from tgstation PR https://github.com/tgstation/tgstation/pull/38977",
"size": {
"x": 32,
"y": 32
},
"states": [
{
"name": "base"
},
{
"name": "open"
},
{
"name": "closed"
}
]
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
14 changes: 14 additions & 0 deletions Resources/Textures/DeltaV/Structures/Storage/keg.rsi/meta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
"copyright": "Taken from tgstation PR https://github.com/tgstation/tgstation/pull/38977, modified by rosieposieeee to add spout",
"size": {
"x": 32,
"y": 32
},
"states": [
{
"name": "base"
}
]
}

0 comments on commit ad8d5a2

Please sign in to comment.