diff --git a/Resources/Prototypes/DeltaV/Catalog/Cargo/cargo_food.yml b/Resources/Prototypes/DeltaV/Catalog/Cargo/cargo_food.yml index f8645aa058a..f1752e3bb85 100644 --- a/Resources/Prototypes/DeltaV/Catalog/Cargo/cargo_food.yml +++ b/Resources/Prototypes/DeltaV/Catalog/Cargo/cargo_food.yml @@ -57,3 +57,33 @@ cost: 1500 category: Food group: market + +- type: cargoProduct + id: FoodBeerKeg + icon: + sprite: DeltaV/Objects/Storage/keg.rsi + state: base + product: WoodenKegBeer + cost: 500 + category: Food + group: market + +- type: cargoProduct + id: FoodRootBeerKeg + icon: + sprite: DeltaV/Objects/Storage/keg.rsi + state: base + product: WoodenKegRootBeer + cost: 500 + category: Food + group: market + +- type: cargoProduct + id: FoodWineBarrel + icon: + sprite: DeltaV/Objects/Storage/keg.rsi + state: base + product: WoodenKegWine + cost: 500 + category: Food + group: market \ No newline at end of file diff --git a/Resources/Prototypes/DeltaV/Entities/Structures/Storage/Crates/barrel.yml b/Resources/Prototypes/DeltaV/Entities/Structures/Storage/Crates/barrel.yml new file mode 100644 index 00000000000..9910e13a25e --- /dev/null +++ b/Resources/Prototypes/DeltaV/Entities/Structures/Storage/Crates/barrel.yml @@ -0,0 +1,155 @@ +- type: entity + parent: CrateGeneric + id: WoodenBarrel + name: wooden barrel + description: A musty old wooden barrel. + components: + - type: Sprite + sprite: DeltaV/Objects/Storage/barrel.rsi + layers: + - state: base + map: ["enum.StorageVisualLayers.Base"] + - state: closed + map: ["enum.StorageVisualLayers.Door"] + - type: Icon + sprite: DeltaV/Objects/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: StaticPrice + price: 50 + - type: Fixtures + fixtures: + fix1: + shape: + !type:PhysShapeAabb + bounds: "-0.2,-0.3,0.2,0.4" + density: 150 + mask: + - SmallMobMask #this is so they can go under plastic flaps + layer: + - MachineLayer + - type: Climbable + +- type: entity + parent: StorageTank + id: WoodenKeg + name: wooden keg + description: A musty old wooden keg, with a tap attached to the front. + components: + - type: SolutionContainerManager + solutions: + tank: + maxVol: 500 + canMix: true + - type: ExaminableSolution + solution: tank + - type: UserInterface + interfaces: + enum.TransferAmountUiKey.Key: + type: TransferAmountBoundUserInterface + - type: DrawableSolution + solution: tank + - type: InjectableSolution + solution: tank + - type: Drink + solution: tank + - type: Spillable + solution: tank + - type: DumpableSolution + solution: tank + - type: Sprite + sprite: DeltaV/Objects/Storage/keg.rsi + layers: + - state: base + map: ["enum.StorageVisualLayers.Base"] + - type: Damageable + damageContainer: StructuralInorganic + damageModifierSet: Wood + - type: StaticPrice + price: 50 + - type: Construction + graph: WoodenKeg + node: woodenkeg + containers: + - entity_storage + - type: Fixtures + fixtures: + fix1: + shape: + !type:PhysShapeAabb + bounds: "-0.2,-0.3,0.2,0.4" + density: 200 + mask: + - SmallMobMask #this is so they can go under plastic flaps + layer: + - MachineLayer + - type: Transform + noRot: false + +- type: entity + parent: WoodenKeg + name: root beer keg + description: A musty old wooden keg, with a tap attached to the front. Smells like root beer. + id: WoodenKegRootBeer + components: + - type: Label + currentLabel: reagent-name-root-beer + - type: SolutionContainerManager + solutions: + tank: + reagents: + - ReagentId: RootBeer + Quantity: 500 + +- type: entity + parent: WoodenKeg + name: beer keg + description: A musty old wooden keg, with a tap attached to the front. Smells like beer. + id: WoodenKegBeer + components: + - type: Label + currentLabel: reagent-name-beer + - type: SolutionContainerManager + solutions: + tank: + reagents: + - ReagentId: Beer + Quantity: 500 + +- type: entity + parent: WoodenKeg + name: wine keg + description: A musty old wooden keg, with a tap attached to the front. Smells like wine. + id: WoodenKegWine + components: + - type: Label + currentLabel: reagent-name-wine + - type: SolutionContainerManager + solutions: + tank: + reagents: + - ReagentId: Wine + Quantity: 500 diff --git a/Resources/Prototypes/DeltaV/Recipes/Crafting/Graphs/barrel.yml b/Resources/Prototypes/DeltaV/Recipes/Crafting/Graphs/barrel.yml new file mode 100644 index 00000000000..70476578317 --- /dev/null +++ b/Resources/Prototypes/DeltaV/Recipes/Crafting/Graphs/barrel.yml @@ -0,0 +1,54 @@ +- 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: 2 + 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: 2 + conditions: + - !type:SolutionEmpty + solution: tank + completed: + - !type:SpawnPrototype + prototype: MaterialWoodPlank1 + amount: 5 + - !type:EmptyAllContainers + - !type:DeleteEntity diff --git a/Resources/Prototypes/DeltaV/Recipes/Crafting/barrel.yml b/Resources/Prototypes/DeltaV/Recipes/Crafting/barrel.yml new file mode 100644 index 00000000000..a673b1215bb --- /dev/null +++ b/Resources/Prototypes/DeltaV/Recipes/Crafting/barrel.yml @@ -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/Objects/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/Objects/Storage/keg.rsi + state: base + objectType: Structure diff --git a/Resources/Textures/DeltaV/Objects/Storage/barrel.rsi/base.png b/Resources/Textures/DeltaV/Objects/Storage/barrel.rsi/base.png new file mode 100644 index 00000000000..bfc92c166d4 Binary files /dev/null and b/Resources/Textures/DeltaV/Objects/Storage/barrel.rsi/base.png differ diff --git a/Resources/Textures/DeltaV/Objects/Storage/barrel.rsi/closed.png b/Resources/Textures/DeltaV/Objects/Storage/barrel.rsi/closed.png new file mode 100644 index 00000000000..b111827b8e5 Binary files /dev/null and b/Resources/Textures/DeltaV/Objects/Storage/barrel.rsi/closed.png differ diff --git a/Resources/Textures/DeltaV/Objects/Storage/barrel.rsi/meta.json b/Resources/Textures/DeltaV/Objects/Storage/barrel.rsi/meta.json new file mode 100644 index 00000000000..03a01149a2a --- /dev/null +++ b/Resources/Textures/DeltaV/Objects/Storage/barrel.rsi/meta.json @@ -0,0 +1,20 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation PR https://github.com/tgstation/tgstation/pull/38977, modified by rosieposieeee", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "base" + }, + { + "name": "open" + }, + { + "name": "closed" + } + ] +} diff --git a/Resources/Textures/DeltaV/Objects/Storage/barrel.rsi/open.png b/Resources/Textures/DeltaV/Objects/Storage/barrel.rsi/open.png new file mode 100644 index 00000000000..bfc92c166d4 Binary files /dev/null and b/Resources/Textures/DeltaV/Objects/Storage/barrel.rsi/open.png differ diff --git a/Resources/Textures/DeltaV/Objects/Storage/keg.rsi/base.png b/Resources/Textures/DeltaV/Objects/Storage/keg.rsi/base.png new file mode 100644 index 00000000000..05686978222 Binary files /dev/null and b/Resources/Textures/DeltaV/Objects/Storage/keg.rsi/base.png differ diff --git a/Resources/Textures/DeltaV/Objects/Storage/keg.rsi/meta.json b/Resources/Textures/DeltaV/Objects/Storage/keg.rsi/meta.json new file mode 100644 index 00000000000..cbbc0d6e89f --- /dev/null +++ b/Resources/Textures/DeltaV/Objects/Storage/keg.rsi/meta.json @@ -0,0 +1,15 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Made by rosieposieeee", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "base", + "directions": 4 + } + ] +}