Pumpkin + Cabbage (#417)

* seeds

* import Omsoyk plant sprites

* cabbage slicing

* sliceable pumpkin

* some tweaks

* seedbed clean fix, remove shitcode systems

* seed crafting, knife fix

* utencil

* Update base.yml

* cabbage rebalance

* abstract seed
This commit is contained in:
Ed
2024-08-22 17:35:00 +03:00
committed by GitHub
parent 3d864eb0fd
commit d3189b83cf
60 changed files with 575 additions and 247 deletions

View File

@@ -1,10 +0,0 @@
- type: entity
id: CP14SeedTest
name: FUCK test SEED
parent: BaseItem
components:
- type: Sprite
sprite: Objects/Specific/Hydroponics/seeds.rsi
state: seed
- type: CP14Seed
plantProto: CP14PlantWheat

View File

@@ -0,0 +1,130 @@
- type: entity
id: CP14FoodCabbage
parent: FoodInjectableBase
name: cabbage
description: Green edible ball.
components:
- type: Item
size: Normal
- type: FlavorProfile
flavors:
- cabbage
- type: Sprite
sprite: _CP14/Objects/Specific/Farming/Produce/cabbage.rsi
layers:
- state: base1
map: [ "random" ]
- type: RandomSprite
available:
- random:
base1: ""
base2: ""
base3: ""
- type: SolutionContainerManager
solutions:
food:
maxVol: 12
reagents:
- ReagentId: Nutriment
Quantity: 10
- ReagentId: Vitamin
Quantity: 1
- type: SliceableFood
count: 4
sliceTime: 1.5
slice: CP14FoodCabbageSlice
- type: entity
id: CP14FoodCabbageSlice
parent: CP14FoodCabbage
name: cabbage leaf
description: Time to make green salads
components:
- type: Item
size: Tiny
- type: Sprite
layers:
- state: slice1
map: [ "random" ]
- type: RandomSprite
available:
- random:
slice1: ""
slice2: ""
slice3: ""
slice4: ""
- type: SolutionContainerManager
solutions:
food:
maxVol: 3 # 1/4 cabbage
reagents:
- ReagentId: Nutriment
Quantity: 2.5
- ReagentId: Vitamin
Quantity: 0.25
- type: entity
id: CP14FoodPumpkin
parent: FoodInjectableBase
name: pumpkin
description: Big, cool pumpkin.
components:
- type: Item
size: Normal
- type: FlavorProfile
flavors:
- pumpkin
- type: Sprite
sprite: _CP14/Objects/Specific/Farming/Produce/pumpkin.rsi
layers:
- state: base1
map: [ "random" ]
- type: RandomSprite
available:
- random:
base1: ""
base2: ""
base3: ""
base4: ""
- type: SolutionContainerManager
solutions:
food:
maxVol: 25
reagents:
- ReagentId: PumpkinFlesh
Quantity: 20
- ReagentId: Vitamin
Quantity: 5
- type: SliceableFood
count: 5
sliceTime: 2
slice: CP14FoodPumpkinSlice
- type: entity
id: CP14FoodPumpkinSlice
parent: CP14FoodPumpkin
name: pumpkin slice
description: Pumpkin! # TODO
components:
- type: Item
size: Tiny
- type: Sprite
layers:
- state: slice1
map: [ "random" ]
- type: RandomSprite
available:
- random:
slice1: ""
slice2: ""
slice3: ""
slice4: ""
- type: SolutionContainerManager
solutions:
food:
maxVol: 5 # 1/5 pumpkin
reagents:
- ReagentId: Nutriment
Quantity: 4
- ReagentId: Vitamin
Quantity: 1

View File

@@ -0,0 +1,61 @@
- type: entity
id: CP14BaseSeed
parent: BaseItem
abstract: true
components:
- type: Item
size: Tiny
- type: Sprite
sprite: _CP14/Objects/Specific/Farming/seeds.rsi
- type: entity
id: CP14SeedWheat
name: wheat seeds
description: Small wheat seeds. What will you do with them? Grind them into flour, or plant them again?
parent: CP14BaseSeed
components:
- type: Sprite
layers:
- state: bag
- state: wheat
- type: CP14Seed
plantProto: CP14PlantWheat
- type: entity
id: CP14SeedPumpkin
name: pumpkin seeds
description: Pumpkin seeds. Some pumpkin seems to have been gutted and butchered.
parent: CP14BaseSeed
components:
- type: Sprite
layers:
- state: bag
- state: pumpkin
- type: CP14Seed
plantProto: CP14PlantPumpkin
- type: entity
id: CP14SeedCabbage
name: cabbage seeds
description: Oh, no, my cabbage!
parent: CP14BaseSeed
components:
- type: Sprite
layers:
- state: bag
- state: cabbage
- type: CP14Seed
plantProto: CP14PlantCabbage
- type: entity
id: CP14SeedTomato
name: tomato seeds
description: It looks like powder! They're so small, these seeds.
parent: CP14BaseSeed
components:
- type: Sprite
layers:
- state: bag
- state: tomato
#- type: CP14Seed
# plantProto: CP14PlantWheat

View File

@@ -21,7 +21,4 @@
collection: MetalThud
- type: Item
size: Normal
sprite: _CP14/Objects/Weapons/Melee/Hoe/hoe.rsi
- type: CP14SpawnOnTileTool
spawns:
CP14FloorDirt: CP14PloughedGround
sprite: _CP14/Objects/Weapons/Melee/Hoe/hoe.rsi

View File

@@ -69,6 +69,14 @@
- type: CP14Sharpened
- type: CP14SharpeningStone
- type: UseDelay
- type: Tool
qualities:
- Slicing
useSound:
path: /Audio/Items/Culinary/chop.ogg
- type: Utensil
types:
- Knife
- type: entity
id: CP14BaseWeaponDestructible

View File

@@ -120,4 +120,6 @@
- CP14FoodDoughLarge
- CP14FoodDoughMediumFlat
- CP14FoodDoughMedium
- CP14FoodMeatLamb
- CP14FoodMeatLamb
- CP14SeedPumpkin
- CP14SeedWheat

View File

@@ -10,8 +10,6 @@
- type: Physics
canCollide: false
bodyType: Static
- type: CP14DestroyedByTool
tool: CP14Digging
- type: CP14PlantAutoRoot
- type: Damageable
damageContainer: Biological

View File

@@ -0,0 +1,69 @@
- type: entity
id: CP14PlantCabbage
parent: CP14GatherablePlantBase
name: cabbage
description: OOO # TODO
components:
- type: Sprite
sprite: _CP14/Structures/Specific/Farming/Herbals/cabbage.rsi
layers:
- state: grow-1
map: ["enum.PlantVisualLayers.Base"]
- type: CP14PlantMetabolizer
metabolizerId: Base
- type: CP14PlantEnergyFromLight
energy: 1
daytime: true
- type: CP14PlantVisuals
growthSteps: 6
- type: CP14PlantGrowing
energyCost: 1
resourceCost: 1
growthPerUpdate: 0.1 # 10 minute to full grow
- type: CP14PlantFading
resourcePerMinute: 0.25 #20 minute from water
- type: CP14PlantGatherable
deleteAfterHarvest: true
loot:
All: CP14GatherCabbage
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 25
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTypeTrigger
damageType: Cellular
damage: 1
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- !type:SpawnEntitiesBehavior
spawn:
CP14PlantWheatDeath:
min: 1
max: 1
- type: entity
id: CP14PlantCabbageDeath
name: dead cabbage
description: The sad spectacle of wasted food.
parent: CP14GatherableBase
components:
- type: Sprite
sprite: _CP14/Structures/Specific/Farming/Herbals/cabbage.rsi
state: death
- type: Gatherable
toolWhitelist:
tags:
- CP14HerbalGathering
- type: entityLootTable
id: CP14GatherCabbage
entries:
- id: CP14FoodCabbage
amount: 3
maxAmount: 4

View File

@@ -0,0 +1,69 @@
- type: entity
id: CP14PlantPumpkin
parent: CP14GatherablePlantBase
name: pumpkin
description: OOO # TODO
components:
- type: Sprite
sprite: _CP14/Structures/Specific/Farming/Herbals/pumpkin.rsi
layers:
- state: grow-1
map: ["enum.PlantVisualLayers.Base"]
- type: CP14PlantMetabolizer
metabolizerId: Base
- type: CP14PlantEnergyFromLight
energy: 1
daytime: true
- type: CP14PlantVisuals
growthSteps: 6
- type: CP14PlantGrowing
energyCost: 1
resourceCost: 1
growthPerUpdate: 0.1 # 10 minute to full grow
- type: CP14PlantFading
resourcePerMinute: 0.25 #20 minute from water
- type: CP14PlantGatherable
deleteAfterHarvest: true
loot:
All: CP14GatherPumpkin
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 25
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTypeTrigger
damageType: Cellular
damage: 1
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- !type:SpawnEntitiesBehavior
spawn:
CP14PlantWheatDeath:
min: 1
max: 1
- type: entity
id: CP14PlantPumpkinDeath
name: dead pumpkin
description: The sad spectacle of wasted food.
parent: CP14GatherableBase
components:
- type: Sprite
sprite: _CP14/Structures/Specific/Farming/Herbals/pumpkin.rsi
state: death
- type: Gatherable
toolWhitelist:
tags:
- CP14HerbalGathering
- type: entityLootTable
id: CP14GatherPumpkin
entries:
- id: CP14FoodPumpkin
amount: 1
maxAmount: 2

View File

@@ -31,39 +31,12 @@
anchored: true
- type: CP14Soil
solution: soil
- type: CP14DestroyedByTool
tool: CP14Digging
- type: entity
name: ploughed ground
id: CP14SeedbedWooden
parent: CP14BaseFarmingSoil
id: CP14PloughedGround
components:
- type: Sprite
drawdepth: FloorTiles
sprite: _CP14/Structures/Specific/Farming/soil.rsi
layers:
- state: soil1
map: ["random"]
- state: liq-1 #Resprite this shit
map: ["enum.SolutionContainerLayers.Fill"]
visible: false
snapCardinals: true
- type: SolutionContainerVisuals
maxFillLevels: 4
fillBaseName: liq-
- type: RandomSprite
available:
- random:
soil1: ""
soil2: ""
soil3: ""
soil4: ""
- type: entity
name: seedbed
id: CP14SeedbedDefault
parent: CP14BaseFarmingSoil
description: A wooden tub with a pile of earth adapted for growing plants.
components:
- type: Icon
sprite: _CP14/Structures/Specific/Farming/seedbed.rsi
@@ -85,4 +58,6 @@
state: seedbed_default_north
- map: [ "enum.EdgeLayer.West" ]
state: seedbed_default_west
# snapCardinals: true (when you flip it over, you get a swastika)
- type: Construction
graph: CP14Seedbed
node: CP14SeedbedWooden

View File

@@ -34,7 +34,7 @@
- type: entity
id: CP14WallDirt
name: earth cliffs
name: earth wall
parent: CP14BaseWall
description: A tall pile of dirt. Can a house be built from it?
components:

View File

@@ -0,0 +1,32 @@
- type: constructionGraph
id: CP14Seedbed
start: start
graph:
- node: start
actions:
- !type:DestroyEntity {}
edges:
- to: CP14SeedbedWooden
steps:
- material: CP14Dirt
amount: 2
doAfter: 2
- material: CP14WoodenPlanks
amount: 2
doAfter: 2
- node: CP14SeedbedWooden
entity: CP14SeedbedWooden
edges:
- to: start
steps:
- tool: CP14Digging
doAfter: 1
completed:
- !type:SpawnPrototype
prototype: CP14WoodenPlanks1
amount: 2
- !type:SpawnPrototype
prototype: CP14DirtBlock1
amount: 2
- !type:DeleteEntity {}

View File

@@ -0,0 +1,20 @@
- type: construction
crystallPunkAllowed: true
name: Seedbed
description: A wooden tub with a pile of earth adapted for growing plants.
id: CP14SeedbedWooden
graph: CP14Seedbed
startNode: start
targetNode: CP14SeedbedWooden
category: construction-category-furniture
icon:
sprite: _CP14/Structures/Specific/Farming/seedbed.rsi
state: seedbed_default
objectType: Structure
placementMode: SnapgridCenter
canBuildInImpassable: false
conditions:
- !type:TileNotBlocked
- !type:TileType
targets:
- CP14FloorDirt

View File

@@ -29,4 +29,18 @@
entities:
CP14FoodDoughMedium: 1
result: CP14FoodDoughMediumFlat
tryMergeSolutions: true
tryMergeSolutions: true
- type: CP14Recipe
id: CP14SeedPumpkin
craftTime: 1
entities:
CP14FoodPumpkinSlice: 1
result: CP14SeedPumpkin
- type: CP14Recipe
id: CP14SeedWheat
craftTime: 1
entities:
CP14Wheat: 1
result: CP14SeedWheat