add&resprite furnitures (#196)

* add&resprite furnitures

* license and sprite fix

---------

Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
This commit is contained in:
Jaraten
2024-06-05 20:15:51 +03:00
committed by GitHub
parent b803496694
commit a623704416
54 changed files with 405 additions and 14 deletions

View File

@@ -0,0 +1,52 @@
- type: entity
name: wooden bed
id: CP14WoodenBed
parent: BaseStructure
description: Wooden bed. Better than nothing.
components:
- type: HealOnBuckle
damage:
types:
Poison: -0.1
Blunt: -0.1
- type: Physics
bodyType: Static
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeAabb
bounds: "-0.45,-0.45,0.45,0.05"
density: 190
mask:
- TableMask
- type: Sprite
sprite: _CP14/Structures/Furniture/wooden_bed.rsi
state: icon
noRot: true
- type: Strap
position: Down
rotation: -90
- type: PlaceableSurface
placeCentered: true
- type: Damageable
damageContainer: Inorganic
damageModifierSet: Wood
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 75
behaviors:
- !type:DoActsBehavior
acts: ["Destruction"]
- !type:SpawnEntitiesBehavior
spawn:
MaterialWoodPlank:
min: 1
max: 2
- type: Transform
anchored: true
noRot: true
- type: Anchorable
- type: Pullable

View File

@@ -0,0 +1,162 @@
- type: entity
id: CP14DresserBase
parent: BaseStructure
abstract: true
components:
- type: Sprite
drawdepth: Mobs
layers:
- map: [ base ]
state: icon
- type: Storage
grid:
- 0,0,6,3
maxItemSize: Normal
- type: ContainerContainer
containers:
storagebase: !type:Container
- type: UserInterface
interfaces:
enum.StorageUiKey.Key:
type: StorageBoundUserInterface
- type: GenericVisualizer
visuals:
enum.StorageVisuals.Open:
base:
True: { state: icon-open }
False: { state: icon }
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeAabb
bounds: "-0.45,-0.25,0.45,0.55"
density: 155
mask:
- MachineMask
layer:
- WallLayer
- type: InteractionOutline
- type: Clickable
- type: Anchorable
- type: Rotatable
- type: Appearance
- type: entity
id: CP14ClosetBase
parent: BaseStructureDynamic
name: closet
description: Just an ordinary, decrepit closet.
abstract: true
components:
- type: ResistLocker
- type: Sprite
drawdepth: Mobs
layers:
- state: base
map: ["enum.StorageVisualLayers.Base"]
- state: base_door
map: ["enum.StorageVisualLayers.Door"]
- type: MovedByPressure
- type: ItemSlots
- type: DamageOnHighSpeedImpact
damage:
types:
Blunt: 5
soundHit:
collection: MetalThud
- type: InteractionOutline
- type: Physics
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeAabb
bounds: "-0.45,-0.48,0.45,0.28"
density: 75
mask:
- MachineMask
layer:
- MachineLayer
- type: EntityStorage
- type: ContainerContainer
containers:
entity_storage: !type:Container
paper_label: !type:ContainerSlot
- type: PlaceableSurface
placeCentered: true
isPlaceable: false
- type: Damageable
damageContainer: StructuralInorganic
damageModifierSet: StructuralMetallic
- type: Appearance
- type: EntityStorageVisuals
stateBaseClosed: base
stateDoorOpen: base_open
stateDoorClosed: base_door
- type: StaticPrice
price: 50
- type: Anchorable
- type: Rotatable
- type: entity
name: wooden dresser
parent:
- CP14DresserBase
- CP14BaseWooden
id: CP14WoodenDresser
description: A regular wooden dresser.
components:
- type: Sprite
sprite: _CP14/Structures/Storage/Dressers/wood_dresser.rsi
state: icons
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 50
behaviors:
- !type:SpawnEntitiesBehavior
spawn:
CP14WoodenPlanks1:
min: 3
max: 3
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: entity
name: wooden cupboard
parent:
- CP14ClosetBase
- CP14BaseWooden
id: CP14WoodenCupboard
description: It's a regular wooden cabinet.
components:
- type: Sprite
sprite: _CP14/Structures/Storage/Dressers/wood_cupboard.rsi
state: icons
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 300
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 150
behaviors:
- !type:DoActsBehavior
acts: ["Destruction"]
- !type:PlaySoundBehavior
sound:
collection: WoodDestroyHeavy
params:
volume: -6
- !type:SpawnEntitiesBehavior
spawn:
CP14WoodenPlanks1:
min: 1
max: 1

View File

@@ -1,7 +1,6 @@
- type: entity
id: CP14WallmountTorch
name: wallmount torch
description: A good, reliable light source. Too bad it doesn't last.
id: BaseWallmount
abstract: true
placement:
mode: SnapgridCenter
components:
@@ -11,6 +10,14 @@
- type: InteractionOutline
- type: Sprite
drawdepth: Mobs
- type: entity
id: CP14WallmountTorch
name: wallmount torch
parent: BaseWallmount
description: A good, reliable light source. Too bad it doesn't last.
components:
- type: Sprite
sprite: _CP14/Structures/Furniture/wallmount_torch.rsi
layers:
- state: base
@@ -74,16 +81,10 @@
- type: entity
id: CP14WallmountLamp
name: eternal flame lamp
parent: BaseWallmount
description: A fragile eternal blue fire as proof of the superiority of magic over nature.
placement:
mode: SnapgridCenter
components:
- type: Transform
anchored: true
- type: Clickable
- type: InteractionOutline
- type: Sprite
drawdepth: Mobs
sprite: _CP14/Structures/Wallmount/wallmount_lamp.rsi
layers:
- state: base
@@ -105,4 +106,50 @@
damage: 40
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
acts: [ "Destruction" ]
- type: entity
id: CP14WallmountBarShelfA
name: bar shelf
suffix: 1
parent: BaseWallmount
description: buba. ##TODO
components:
- type: Appearance
- type: Sprite
sprite: _CP14/Structures/Wallmount/wallmount_bar_shelf.rsi
layers:
- state: shelf
- state: bottleA-0
- map: ["enum.StorageFillLayers.Fill"]
- type: StorageFillVisualizer
maxFillLevels: 7
fillBaseName: bottleA
- type: Storage
grid:
- 0,0,5,3
maxItemSize: Normal
## whitelist: TODO
## tags:
## - CP14Bottles
- type: UserInterface
interfaces:
enum.StorageUiKey.Key:
type: StorageBoundUserInterface
- type: ContainerContainer
containers:
storagebase: !type:Container
- type: entity
id: CP14WallmountBarShelfB
suffix: 2
parent: CP14WallmountBarShelfA
components:
- type: Sprite
layers:
- state: shelf
- state: bottleB-0
- map: ["enum.StorageFillLayers.Fill"]
- type: StorageFillVisualizer
fillBaseName: bottleB

View File

@@ -20,4 +20,7 @@
id: CP14FitInMortar
- type: Tag
id: CP14Pestle
id: CP14Pestle
- type: Tag
id: CP14Bottles