New trees: spruce! (#1539)

* yolochki

* frame

* fix

* fix 2

* fix3

* fix04

* fix-5

* 6 fix

* fi7x

* f8ix

* Update grasslands.yml

* fix

---------

Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: Ed <edwardxperia2000@gmail.com>
This commit is contained in:
gogenych
2025-07-26 15:24:59 +03:00
committed by GitHub
parent 6c085a2f03
commit 5da0d4b025
43 changed files with 505 additions and 0 deletions

View File

@@ -249,3 +249,60 @@
- type: Stack
count: 20
#Spruce
- type: entity
id: CP14SpruceWoodLog
parent: CP14WoodLog
name: spruce log
components:
- type: Sprite
sprite: _CP14/Objects/Materials/wood_spruce.rsi
layers:
- state: log
map: ["random"]
- type: RandomSprite
available:
- random:
log: ""
log_2: ""
log_3: ""
- type: Log
spawnedPrototype: CP14SpruceWoodenPlanks1
spawnCount: 3
- type: entity
id: CP14SpruceWoodenPlanks1
parent: CP14WoodenPlanks1
name: spruce planks
suffix: 1
components:
- type: Sprite
sprite: _CP14/Objects/Materials/wood_spruce.rsi
layers:
- state: planks
map: ["base"]
- type: Stack
stackType: CP14SpruceWoodenPlanks
count: 1
baseLayer: base
layerStates:
- planks
- planks_2
- planks_3
- type: entity
id: CP14SpruceWoodenPlanks10
parent: CP14SpruceWoodenPlanks1
suffix: 10
components:
- type: Stack
count: 10
- type: entity
id: CP14SpruceWoodenPlanks20
parent: CP14SpruceWoodenPlanks1
suffix: 20
components:
- type: Stack
count: 20

View File

@@ -470,3 +470,160 @@
CP14BirchWoodLog:
min: 3
max: 6
#spruce
- type: entity
parent: CP14BaseTree
id: CP14FloraTreeSpruceSmall
suffix: Small
components:
- type: Sprite
offset: 0,1
sprite: _CP14/Structures/Flora/tree_spruce_small.rsi
layers:
- state: tree01
map: ["random"]
- type: RandomSprite
available:
- random:
tree01: ""
tree02: ""
tree03: ""
tree04: ""
tree05: ""
tree06: ""
- type: Destructible
thresholds:
- trigger:
!type:DamageTypeTrigger
damageType: Heat
damage: 100
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 200
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 75
behaviors:
- !type:PlaySoundBehavior
sound:
path: /Audio/Effects/tree_fell.ogg
params:
volume: 5
variation: 0.05
- !type:DoActsBehavior
acts: [ "Destruction" ]
- !type:SpawnEntitiesBehavior
spawn:
CP14SpruceWoodLog:
min: 1
max: 2
- type: entity
parent: CP14BaseTree
id: CP14FloraTreeSpruceMedium
suffix: Medium
components:
- type: Sprite
offset: 0,1.6
sprite: _CP14/Structures/Flora/tree_spruce_medium.rsi
layers:
- state: tree01
map: ["random"]
- type: RandomSprite
available:
- random:
tree01: ""
tree02: ""
tree03: ""
tree04: ""
- type: Destructible
thresholds:
- trigger:
!type:DamageTypeTrigger
damageType: Heat
damage: 100
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 200
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 75
behaviors:
- !type:PlaySoundBehavior
sound:
path: /Audio/Effects/tree_fell.ogg
params:
volume: 5
variation: 0.05
- !type:DoActsBehavior
acts: [ "Destruction" ]
- !type:SpawnEntitiesBehavior
spawn:
CP14SpruceWoodLog:
min: 2
max: 4
- type: entity
parent: CP14BaseTree
id: CP14FloraTreeSpruceLarge
suffix: Large
components:
- type: Sprite
offset: 0,1.9
sprite: _CP14/Structures/Flora/tree_spruce_big.rsi
layers:
- state: tree01
map: ["random"]
- type: RandomSprite
available:
- random:
tree01: ""
tree02: ""
- type: Destructible
thresholds:
- trigger:
!type:DamageTypeTrigger
damageType: Heat
damage: 100
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 200
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 75
behaviors:
- !type:PlaySoundBehavior
sound:
path: /Audio/Effects/tree_fell.ogg
params:
volume: 5
variation: 0.05
- !type:DoActsBehavior
acts: [ "Destruction" ]
- !type:SpawnEntitiesBehavior
spawn:
CP14SpruceWoodLog:
min: 3
max: 6

View File

@@ -135,3 +135,62 @@
- !type:DoActsBehavior
acts: [ "Destruction" ]
# Wooden spruce
- type: entity
id: CP14WallFrameWoodenSpruce
parent: CP14WallFrameWooden
components:
- type: Sprite
sprite: _CP14/Structures/Walls/wooden_wall_spruce.rsi
- type: Icon
sprite: _CP14/Structures/Walls/wooden_wall_spruce.rsi
- type: Construction
graph: CP14WallWoodenSpruce
node: CP14WallFrameWoodenSpruce
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 50
behaviors:
- !type:SpawnEntitiesBehavior
spawn:
CP14SpruceWoodenPlanks1:
min: 1
max: 2
- !type:PlaySoundBehavior
sound:
collection: WoodDestroy
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: entity
id: CP14WallWoodenSpruce
parent: CP14WallWooden
components:
- type: Sprite
sprite: _CP14/Structures/Walls/wooden_wall_spruce.rsi
- type: Icon
sprite: _CP14/Structures/Walls/wooden_wall_spruce.rsi
- type: Construction
graph: CP14WallWoodenSpruce
node: CP14WallWoodenSpruce
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 50
behaviors:
- !type:PlaySoundBehavior
sound:
collection: WoodDestroy
- !type:SpawnEntitiesBehavior
spawn:
CP14SpruceWoodenPlanks1:
min: 1
max: 2
- !type:ChangeConstructionNodeBehavior
node: CP14WallFrameWoodenSpruce
- !type:DoActsBehavior
acts: [ "Destruction" ]

View File

@@ -152,6 +152,11 @@
- CP14FloraTreeBirchLarge
- CP14FloraTreeBirchSmall
- CP14FloraTreeBirchMedium
- CP14FloraTreeSpruceSmall
- CP14FloraTreeSpruceSmall
- CP14FloraTreeSpruceMedium
- CP14FloraTreeGreen
- CP14FloraTreeGreen
- CP14FloraTreeGreen
- CP14FloraTreeGreen
- CP14FloraTreeGreen
@@ -208,6 +213,11 @@
- CP14FloraTreeBirchLarge
- CP14FloraTreeBirchSmall
- CP14FloraTreeBirchMedium
- CP14FloraTreeSpruceSmall
- CP14FloraTreeSpruceSmall
- CP14FloraTreeSpruceMedium
- CP14FloraTreeGreen
- CP14FloraTreeGreen
- CP14FloraTreeGreen
- CP14FloraTreeGreen
- CP14FloraTreeGreenLarge

View File

@@ -0,0 +1,52 @@
- type: constructionGraph
id: CP14WallWoodenSpruce
start: start
graph:
- node: start
edges:
- to: CP14WallFrameWoodenSpruce
completed:
- !type:SnapToGrid
southRotation: true
steps:
- material: CP14SpruceWoodenPlanks
amount: 2
doAfter: 2
- node: CP14WallFrameWoodenSpruce
entity: CP14WallFrameWoodenSpruce
edges:
- to: start
completed:
- !type:SpawnPrototype
prototype: CP14SpruceWoodenPlanks1
amount: 2
- !type:DeleteEntity {}
steps:
- tool: Prying
doAfter: 2
- to: CP14WallWoodenSpruce
steps:
- material: CP14SpruceWoodenPlanks
amount: 2
doAfter: 2
#- to: WindowWooden
# steps:
# - material: CP14GlassSheet
# amount: 2
# doAfter: 2
- node: CP14WallWoodenSpruce
entity: CP14WallWoodenSpruce
edges:
- to: CP14WallFrameWoodenSpruce
steps:
- tool: CP14Hammering
doAfter: 2
completed:
- !type:SpawnPrototype
prototype: CP14SpruceWoodenPlanks1
amount: 2
#- node: WindowWooden
# entity: CP14WindowWooden

View File

@@ -24,6 +24,19 @@
conditions:
- !type:TileNotBlocked
- type: construction
crystallPunkAllowed: true
id: CP14WoodenWallSpruce
graph: CP14WallWoodenSpruce
startNode: start
targetNode: CP14WallWoodenSpruce
category: construction-category-structures
objectType: Structure
placementMode: SnapgridCenter
canBuildInImpassable: false
conditions:
- !type:TileNotBlocked
- type: construction
crystallPunkAllowed: true
id: CP14WallWoodenPalisade

View File

@@ -40,6 +40,13 @@
icon: { sprite: _CP14/Objects/Materials/wood_lucens.rsi, state: planks_2 }
maxCount: 20
- type: stack
id: CP14SpruceWoodenPlanks
name: cp14-material-spruce-planks
spawn: CP14SpruceWoodenPlanks1
icon: { sprite: _CP14/Objects/Materials/wood_spruce.rsi, state: planks_2 }
maxCount: 20
- type: stack
id: CP14Cloth
name: cp14-stack-cloth

View File

@@ -5,4 +5,5 @@
- CP14WoodenPlanks
- CP14BirchWoodenPlanks
- CP14LucensWoodenPlanks
- CP14SpruceWoodenPlanks