diff --git a/Resources/Prototypes/_White/Catalog/Cargo/cargo.yml b/Resources/Prototypes/_White/Catalog/Cargo/cargo.yml index 99241a6c00..a982f2e2e2 100644 --- a/Resources/Prototypes/_White/Catalog/Cargo/cargo.yml +++ b/Resources/Prototypes/_White/Catalog/Cargo/cargo.yml @@ -296,3 +296,13 @@ cost: 2000 category: Security group: market + + - type: cargoProduct + id: cargoPackedSoil + icon: + sprite: White/Objects/Weapons/Guns/Shotguns/rubber_pump.rsi + state: icon + product: CratePackedSoil + cost: 2000 + category: cargoproduct-category-name-hydroponics + group: market diff --git a/Resources/Prototypes/_White/Entities/Objects/CargoCrates/misc.yml b/Resources/Prototypes/_White/Entities/Objects/CargoCrates/misc.yml new file mode 100644 index 0000000000..f2513e1f02 --- /dev/null +++ b/Resources/Prototypes/_White/Entities/Objects/CargoCrates/misc.yml @@ -0,0 +1,9 @@ +- type: entity + parent: CrateHydroponics + id: CratePackedSoil + name: ящик с почвой + components: + - type: StorageFill + contents: + - id: packedSoil + amount: 3 \ No newline at end of file diff --git a/Resources/Prototypes/_White/Entities/Objects/Misc/packed_soil.yml b/Resources/Prototypes/_White/Entities/Objects/Misc/packed_soil.yml new file mode 100644 index 0000000000..f1721c7d02 --- /dev/null +++ b/Resources/Prototypes/_White/Entities/Objects/Misc/packed_soil.yml @@ -0,0 +1,14 @@ +- type: entity + name: упаковка почвы + description: Можно засыпать в каркас грядки. + id: packedSoil + parent: BaseItem + components: + - type: Item + size: Small + - type: Sprite + sprite: Clothing/OuterClothing/Misc/apronbar.rsi + state: icon + - type: Tag + tags: + - PackedSoil \ No newline at end of file diff --git a/Resources/Prototypes/_White/Entities/Structures/GrowingPot.yml b/Resources/Prototypes/_White/Entities/Structures/GrowingPot.yml new file mode 100644 index 0000000000..800e1af171 --- /dev/null +++ b/Resources/Prototypes/_White/Entities/Structures/GrowingPot.yml @@ -0,0 +1,84 @@ +- type: entity + name: самодельная грядка + parent: [GrowingPotNoSoil, hydroponicsSoil] + id: GrowingPot + description: Позволяет выращивать различные культуры. + components: + - type: Transform + anchored: true + - type: Construction + graph: growingPot + node: GrowingPot + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 50 + behaviors: + - !type:SpawnEntitiesBehavior + spawn: + MaterialWoodPlank1: + min: 5 + max: 10 + +- type: entity + id: GrowingPotEmpty + parent: GrowingPot + suffix: Empty + components: + - type: PlantHolder + waterLevel: 0 + nutritionLevel: 0 + +- type: entity + name: каркас самодельной грядки + id: GrowingPotNoSoil + parent: BaseStructure + placement: + mode: SnapgridCenter + description: Позволяет выращивать различные культуры, однако не хватает земли... + components: + - type: Tag + tags: + - Structure + - type: Fixtures + fixtures: + fix1: + shape: + !type:PhysShapeAabb + bounds: "-0.45,-0.45,0.45,0.1" + density: 60 + hard: true + mask: + - MachineMask + - type: Appearance + - type: Clickable + - type: Transform + noRot: true + - type: Sprite + sprite: Structures/Hydroponics/misc.rsi + state: soil + noRot: true + - type: Construction + graph: growingPot + node: GrowingPotNoSoil + - type: Anchorable + - type: Damageable + DamageContainer: StructuralInorganic + DamageModifierSet: Wood + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 20 + behaviors: + - !type:PlaySoundBehavior + sound: + collection: WoodDestroy + - !type:SpawnEntitiesBehavior + spawn: + MaterialWoodPlank1: + min: 5 + max: 10 + - !type:DoActsBehavior + acts: [ "Destruction" ] diff --git a/Resources/Prototypes/_White/Recipes/Construction/Graphs/growingPot.yml b/Resources/Prototypes/_White/Recipes/Construction/Graphs/growingPot.yml new file mode 100644 index 0000000000..7a9535e1cf --- /dev/null +++ b/Resources/Prototypes/_White/Recipes/Construction/Graphs/growingPot.yml @@ -0,0 +1,56 @@ +- type: constructionGraph + id: growingPot + start: start + graph: + - node: start + actions: + - !type:DestroyEntity {} + edges: + - to: GrowingPotNoSoil + completed: + - !type:SnapToGrid + southRotation: true + steps: + - material: WoodPlank + amount: 15 + doAfter: 1 + - material: MetalRod + amount: 4 + doAfter: 1 + + - node: GrowingPotNoSoil + entity: GrowingPotNoSoil + edges: + - to: GrowingPot + completed: + - !type:SnapToGrid + southRotation: true + steps: + - tag: PackedSoil + name: упаковка почвы + icon: + sprite: Structures/Piping/Atmospherics/pipe.rsi + state: pipeStraight + - to: start + completed: + - !type:SpawnPrototype + prototype: MaterialWoodPlank1 + amount: 15 + - !type:SpawnPrototype + prototype: PartRodMetal1 + amount: 4 + steps: + - tool: Screwing + doAfter: 1 + + - node: GrowingPot + entity: GrowingPotEmpty + edges: + - to: GrowingPotNoSoil + completed: + - !type:SpawnPrototype + prototype: packedSoil + amount: 1 + steps: + - tool: Prying + doAfter: 1 diff --git a/Resources/Prototypes/_White/Recipes/Construction/GrowingPot.yml b/Resources/Prototypes/_White/Recipes/Construction/GrowingPot.yml new file mode 100644 index 0000000000..76ee7accef --- /dev/null +++ b/Resources/Prototypes/_White/Recipes/Construction/GrowingPot.yml @@ -0,0 +1,16 @@ +- type: construction + id: GrowingPot + name: самодельная грядка + description: Деревнянная грядка для выращивания. + graph: growingPot + startNode: start + targetNode: GrowingPot + category: construction-category-furniture + icon: + sprite: Structures/Furniture/furniture.rsi + state: bed + objectType: Structure + placementMode: SnapgridCenter + canBuildInImpassable: false + conditions: + - !type:TileNotBlocked diff --git a/Resources/Prototypes/tags.yml b/Resources/Prototypes/tags.yml index baea3b07c5..0bcfd7ab49 100644 --- a/Resources/Prototypes/tags.yml +++ b/Resources/Prototypes/tags.yml @@ -948,6 +948,9 @@ - type: Tag id: Ore +- type: Tag + id: PackedSoil # WD edit + - type: Tag id: Packet