This commit is contained in:
Nim
2025-01-12 01:01:53 +02:00
committed by GitHub
parent 4a2c3c9d59
commit 61897eae4f
8 changed files with 347 additions and 2 deletions

View File

@@ -0,0 +1,185 @@
- type: entity
id: CP14Target
parent:
- BaseStructureDynamic
- CP14BaseFlammable
name: target
description: A target for marksmanship practice.
categories: [ ForkFiltered ]
components:
- type: Sprite
noRot: true
sprite: _CP14/Structures/Furniture/target.rsi
layers:
- state: target_stake
- state: target
- type: DamageRandomPopup
popups:
- darts-popup-bullseye
- darts-popup-25
- darts-popup-10
- darts-popup-10
- darts-popup-5
- darts-popup-5
- darts-popup-5
- darts-popup-1
- darts-popup-1
- darts-popup-1
- darts-popup-miss
- darts-popup-miss
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeCircle
radius: 0.25
density: 100
mask:
- FullTileMask
layer:
- WallLayer
- type: InteractionOutline
- type: Physics
- type: Climbable
- type: Damageable
damageContainer: Inorganic
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 400
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 200
behaviors:
- !type:SpawnEntitiesBehavior
spawn:
CP14TargetStake:
min: 1
max: 1
- !type:PlaySoundBehavior
sound:
collection: WoodDestroy
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: Construction
graph: CP14TargetStake
node: CP14target
- type: entity
id: CP14TargetStake
parent:
- BaseStructureDynamic
- CP14BaseFlammable
name: target stake
description: A wooden stand on which to fix a target for firing.
categories: [ ForkFiltered ]
components:
- type: Sprite
noRot: true
sprite: _CP14/Structures/Furniture/target.rsi
layers:
- state: target_stake
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeCircle
radius: 0.20
density: 50
mask:
- FullTileMask
layer:
- WallLayer
- type: InteractionOutline
- type: Physics
- type: Climbable
- type: Damageable
damageContainer: Inorganic
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 100
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 50
behaviors:
- !type:SpawnEntitiesBehavior
spawn:
CP14WoodenPlanks1:
min: 1
max: 2
- !type:PlaySoundBehavior
sound:
collection: WoodDestroy
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: Construction
graph: CP14TargetStake
node: CP14targetStake
- type: entity
id: CP14TargetEffigy
parent:
- BaseStructureDynamic
- CP14BaseFlammable
name: target effigy
description: The target is a scarecrow for practising close combat strikes.... or magic.
categories: [ ForkFiltered ]
components:
- type: Sprite
sprite: _CP14/Structures/Furniture/target.rsi
layers:
- state: target_effigy
- type: DamagePopup
allowTypeChange: true
damagePopupType: Combined
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeCircle
radius: 0.35
density: 200
mask:
- FullTileMask
layer:
- WallLayer
- type: InteractionOutline
- type: Physics
- type: Transform
anchored: false
- type: Damageable
damageContainer: Inorganic
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 800
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 400
behaviors:
- !type:SpawnEntitiesBehavior
spawn:
CP14WoodenPlanks1:
min: 3
max: 4
- !type:PlaySoundBehavior
sound:
collection: WoodDestroy
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: Construction
graph: CP14TargetEffigy
node: CP14targetEffigy

View File

@@ -0,0 +1,83 @@
- type: constructionGraph
id: CP14TargetStake
start: start
graph:
- node: start
edges:
- to: CP14targetStake
completed:
- !type:SnapToGrid
southRotation: true
steps:
- material: CP14WoodenPlanks
amount: 2
doAfter: 2
- node: CP14targetStake
entity: CP14TargetStake
edges:
- to: start
completed:
- !type:GivePrototype
prototype: CP14WoodenPlanks1
amount: 2
- !type:DeleteEntity {}
steps:
- tool: Screwing
doAfter: 1
- to: CP14target
steps:
- material: CP14WoodenPlanks
amount: 3
doAfter: 1
- material: CP14Nail
amount: 1
doAfter: 1
- tag: CP14DyeRed
name: red dye
icon:
sprite: _CP14/Objects/Materials/dye.rsi
state: powder
doAfter: 0.5
- tool: CP14Hammering
doAfter: 1
- node: CP14target
entity: CP14Target
edges:
- to: CP14targetStake
completed:
- !type:GivePrototype
prototype: CP14WoodenPlanks1
amount: 3
steps:
- tool: CP14Hammering
doAfter: 2
- type: constructionGraph
id: CP14TargetEffigy
start: start
graph:
- node: start
edges:
- to: CP14targetEffigy
completed:
- !type:SnapToGrid
steps:
- material: CP14WoodenPlanks
amount: 5
- material: CP14Cloth
amount: 2
- tag: CP14DyeRed
name: red dye
icon:
sprite: _CP14/Objects/Materials/dye.rsi
state: powder
- tag: CP14Wheat
name: wheat bushel
icon:
sprite: _CP14/Objects/Flora/Farm/wheat.rsi
state: base1
doAfter: 4
- node: CP14targetEffigy
entity: CP14TargetEffigy

View File

@@ -257,6 +257,61 @@
conditions:
- !type:TileNotBlocked
- type: construction
crystallPunkAllowed: true
id: CP14TargetStake
name: target stake
description: A wooden stand on which to fix a target for firing.
graph: CP14TargetStake
startNode: start
targetNode: CP14targetStake
category: construction-category-furniture
icon:
sprite: _CP14/Structures/Furniture/target.rsi
state: target_stake
objectType: Structure
placementMode: SnapgridCenter
canBuildInImpassable: false
conditions:
- !type:TileNotBlocked
- type: construction
crystallPunkAllowed: true
id: CP14Target
name: target
description: A target for marksmanship practice.
graph: CP14TargetStake
startNode: start
targetNode: CP14target
category: construction-category-furniture
icon:
sprite: _CP14/Structures/Furniture/target.rsi
state: target
objectType: Structure
placementMode: SnapgridCenter
canBuildInImpassable: false
conditions:
- !type:TileNotBlocked
- type: construction
crystallPunkAllowed: true
id: CP14TargetEffigy
name: target
description: A target for marksmanship practice.
graph: CP14TargetEffigy
startNode: start
targetNode: CP14targetEffigy
category: construction-category-furniture
icon:
sprite: _CP14/Structures/Furniture/target.rsi
state: target_effigy
objectType: Structure
placementMode: SnapgridCenter
canRotate: true
canBuildInImpassable: false
conditions:
- !type:TileNotBlocked
- type: construction
crystallPunkAllowed: true
id: CP14WoodenDoor
@@ -450,5 +505,3 @@
canBuildInImpassable: true
conditions:
- !type:TileNotBlocked

View File

@@ -0,0 +1,24 @@
{
"version": 1,
"license": "CLA",
"copyright": "Created by omsoyk (Discord), Created by ripmax (the target_effigy)",
"size": {
"x": 32,
"y": 32
},
"states": [
{
"name": "target_stake"
},
{
"name": "target"
},
{
"name": "target_icon"
},
{
"name": "target_effigy",
"directions": 4
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 686 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 821 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 432 B