Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Couch and Stripper Pole! #139

Merged
merged 11 commits into from
Aug 24, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 49 additions & 0 deletions Resources/Prototypes/Floof/Entities/Objects/Lewd/eggs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
- type: entity
parent: BaseItem
id: BasicEgg
name: basic egg
description: A large and shiny egg, couldn't have been laid by a chicken!
components:
- type: Sprite
sprite: Floof/Objects/Fun/Lewd/egg.rsi
state: egg_chicken

- type: entity
parent: BaseItem
id: DragonEgg
name: dragon egg
description: A warm and shimmering egg, power could be felt from within...
components:
- type: Sprite
sprite: Floof/Objects/Fun/Lewd/egg.rsi
state: egg_dragon

- type: entity
parent: BaseItem
id: VoidEgg
name: void egg
description: A void egg. This has to be dangerous, right?
components:
- type: Sprite
sprite: Floof/Objects/Fun/Lewd/egg.rsi
state: egg_void

- type: entity
parent: BaseItem
id: SlimeEgg
name: slime egg
description: A globby and squishy egg, feels nasty.
components:
- type: Sprite
sprite: Floof/Objects/Fun/Lewd/egg.rsi
state: egg_slimeglob

- type: entity
parent: BaseItem
id: HoneyEgg
name: honeycomb egg
description: An egg covered in a sticky and sweet honey.
components:
- type: Sprite
sprite: Floof/Objects/Fun/Lewd/egg.rsi
state: egg_honeycomb
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
- type: entity
id: StripperPole
parent: BaseStructure
name: stripper pole
description: A long pole on a pedestal used for showing off your great 'assets'.
components:
- type: Transform
anchored: true
- type: Construction
graph: Lewd
node: FurnStripPole
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeAabb
bounds: "-0.45,-0.45,0.45,0.45"
density: 120
hard: "false"
mask:
- TabletopMachineMask
layer:
- TabletopMachineLayer
- type: Sprite
sprite: Floof/Structures/pole.rsi
state: pole
drawdepth: SmallObjects
- type: Icon
sprite: Floof/Structures/pole.rsi
state: pole
- type: Damageable
damageContainer: Inorganic
damageModifierSet: Metallic
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 125
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 25
behaviors:
- !type:PlaySoundBehavior
sound:
collection: MetalBreak
params:
volume: -6
- !type:SpawnEntitiesBehavior
spawn:
SheetSteel1:
min: 1
max: 1
- !type:DoActsBehavior
acts: [ "Destruction" ]

- type: entity
id: StripperPoleInit
parent: BaseStructure
noSpawn: true
name: stripper pole base
description: The base of a stripper pole.
placement:
mode: SnapgridCenter
components:
- type: Clickable
- type: InteractionOutline
- type: Transform
anchored: true
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeAabb
bounds: "-0.45,-0.45,0.45,0.45"
density: 60
mask:
- TabletopMachineMask
layer:
- TabletopMachineLayer
- type: Sprite
sprite: Floof/Structures/pole.rsi
state: pole_base
drawdepth: SmallObjects
- type: Icon
sprite: Floof/Structures/pole.rsi
state: pole_base
- type: Construction
graph: Lewd
node: FurnStripPoleInit
- type: Damageable
damageContainer: Inorganic
damageModifierSet: Metallic
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 125
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 25
behaviors:
- !type:PlaySoundBehavior
sound:
collection: MetalBreak
params:
volume: -6
- !type:SpawnEntitiesBehavior
spawn:
SheetSteel1:
min: 1
max: 2
- !type:DoActsBehavior
acts: [ "Destruction" ]

Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
- type: constructionGraph
id: Lewd
start: start
graph:
- node: start
actions:
- !type:DeleteEntity {}
edges:
- to: FurnStripPoleInit
steps:
- material: Steel
amount: 3
doAfter: 1

- node: FurnStripPoleInit
entity: StripperPoleInit
edges:
- to: start
completed:
- !type:SpawnPrototype
prototype: SheetSteel1
amount: 3
steps:
- tool: Screwing
doAfter: 1
- to: FurnStripPole
steps:
- material: MetalRod
amount: 2
doAfter: 2


- node: FurnStripPole
entity: StripperPole
edges:
- to: start
completed:
- !type:SpawnPrototype
prototype: SheetSteel1
amount: 3
- !type:SpawnPrototype
prototype: PartRodMetal
amount: 2
steps:
- tool: Screwing
doAfter: 4
84 changes: 84 additions & 0 deletions Resources/Prototypes/Floof/Recipes/Construction/furniture.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
- type: construction
name: Comfy Sofa
id: ChairSofaBench
graph: Seat
startNode: start
targetNode: chairSofaBench
category: construction-category-furniture
description: A comfy sofa of standard design.
icon:
sprite: SimpleStation14/Structures/Furniture/Benches/sofa_corp.rsi
state: middle
objectType: Structure
placementMode: SnapgridCenter
canBuildInImpassable: false
conditions:
- !type:TileNotBlocked

- type: construction
name: Comfy Sofa Left End
id: ChairSofaBenchLeft
graph: Seat
startNode: start
targetNode: chairSofaBenchLeft
category: construction-category-furniture
description: A comfy sofa of standard design. The left end!
icon:
sprite: SimpleStation14/Structures/Furniture/Benches/sofa_corp.rsi
state: left
objectType: Structure
placementMode: SnapgridCenter
canBuildInImpassable: false
conditions:
- !type:TileNotBlocked

- type: construction
name: Comfy Sofa Right End
id: ChairSofaBenchRight
graph: Seat
startNode: start
targetNode: chairSofaBenchRight
category: construction-category-furniture
description: A comfy sofa of standard design. The right end!
icon:
sprite: SimpleStation14/Structures/Furniture/Benches/sofa_corp.rsi
state: right
objectType: Structure
placementMode: SnapgridCenter
canBuildInImpassable: false
conditions:
- !type:TileNotBlocked

- type: construction
name: Comfy Sofa Corner
id: ChairSofaBenchCorner
graph: Seat
startNode: start
targetNode: chairSofaBenchCorner
category: construction-category-furniture
description: A comfy sofa of standard design. The corner piece!
icon:
sprite: SimpleStation14/Structures/Furniture/Benches/sofa_corp.rsi
state: corner
objectType: Structure
placementMode: SnapgridCenter
canBuildInImpassable: false
conditions:
- !type:TileNotBlocked

- type: construction
name: Stripper Pole
id: FurnStripPole
graph: Lewd
startNode: start
targetNode: FurnStripPole
category: construction-category-furniture
description: A long pole on a pedestal used for showing off your great 'assets'.
icon:
sprite: Floof/Structures/pole.rsi
state: pole
objectType: Structure
placementMode: SnapgridCenter
canBuildInImpassable: false
conditions:
- !type:TileNotBlocked
Loading
Loading