break up drinks_bottles

This commit is contained in:
iaada
2025-07-25 19:19:04 -05:00
parent 05241c27d7
commit 5a4373dacc
2 changed files with 81 additions and 93 deletions

View File

@@ -4,6 +4,7 @@ drink-component-on-examine-is-opened = [color=yellow]Opened[/color]
drink-component-on-examine-is-sealed = The seal is intact.
drink-component-on-examine-is-unsealed = The seal is broken.
drink-component-on-examine-is-unsealed-no-cork = The seal is broken, and the cork is gone.
drink-component-on-examine-is-unsealed-crown-cap = The seal is broken, and the crown cap is bent.
drink-component-on-examine-is-full = Full
drink-component-on-examine-is-mostly-full = Mostly Full
drink-component-on-examine-is-half-full = Halfway Full

View File

@@ -1,6 +1,3 @@
# TODO: Find remaining cans and move to drinks_cans
# TODO: Find empty containers (e.g. mug, pitcher) and move to their own yml
# For cups, bottles, beakers, and other freely accessible solutions
- type: entity
abstract: true
@@ -102,11 +99,56 @@
- !type:SpillBehavior { }
- !type:DoActsBehavior
acts: [ "Destruction" ]
#In future maybe add generic plastic scrap trash/debris
- type: PhysicalComposition
materialComposition:
Plastic: 25
# Cans and bottles
# A destructible, opaque cardboard bottle
- type: entity
abstract: true
parent: DrinkBase
id: DrinkCardboardBase
components:
- type: Damageable
damageContainer: Inorganic
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 5
behaviors:
- !type:SpillBehavior { }
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: PhysicalComposition
materialComposition:
Cardboard: 25
# A destructible, opaque metal can
- type: entity
abstract: true
parent: DrinkBase
id: DrinkMetalBase
components:
- type: Damageable
damageContainer: Inorganic
damageModifierSet: FlimsyMetallic
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 10
behaviors:
- !type:SpillBehavior { }
- !type:DoActsBehavior
acts: [ "Destruction" ]
#In future maybe add generic metal scrap trash/debris
- type: PhysicalComposition
materialComposition:
Steel: 25
# Un-opened cans and bottles
- type: entity
abstract: true
id: BaseDrinkOpenable
@@ -117,7 +159,7 @@
- type: Shakeable
- type: Sealable
# Cans and bottles (opened)
# Pre-opened cans and bottles
- type: entity
abstract: true
parent: BaseDrinkOpenable
@@ -144,100 +186,45 @@
tags:
- Trash
###
# TODO: MOVE
# Basic visualizer for an openable entity, often paired with BaseDrinkOpenable
- type: entity
parent: DrinkGlassBase
id: DrinkTeapot
name: teapot # short and stout
description: An elegant teapot. It simply oozes class.
abstract: true
id: DrinkVisualsOpenable
components:
- type: SolutionContainerManager
solutions:
drink:
maxVol: 100
reagents:
- ReagentId: Tea
Quantity: 100
- type: Appearance
- type: GenericVisualizer
visuals:
enum.OpenableVisuals.Opened:
enum.OpenableVisuals.Layer:
True: {state: "icon_open"}
False: {state: "icon"}
- type: Sprite
sprite: Objects/Consumable/Drinks/teapot.rsi
- type: entity
name: coupe glass
description: A classic thin neck coupe glass, the icon of fragile labels on crates around the galaxy.
parent: DrinkGlassBase
id: DrinkGlassCoupeShaped
components:
- type: Sprite
sprite: Objects/Consumable/Drinks/glass_coupe_shape.rsi
layers:
- state: icon
map: [ "enum.SolutionContainerLayers.Base" ]
- state: fill1
map: [ "enum.SolutionContainerLayers.Fill" ]
visible: false
- state: icon-front
map: [ "enum.SolutionContainerLayers.Overlay" ]
map: ["enum.OpenableVisuals.Layer"]
# Visualizer for an openable entity with fill levels
- type: entity
abstract: true
id: DrinkVisualsAll
components:
- type: Appearance
- type: SolutionContainerManager
solutions:
drink:
maxVol: 30
- type: GenericVisualizer
visuals:
enum.OpenableVisuals.Opened:
enum.OpenableVisuals.Layer:
True: {state: "icon_open"}
False: {state: "icon_empty"}
- type: Sprite
sprite: Objects/Consumable/Drinks/alco-bottle.rsi
layers:
- state: icon
map: ["enum.OpenableVisuals.Layer"]
- state: fill-1
map: ["enum.SolutionContainerLayers.Fill"]
visible: false
- type: SolutionContainerVisuals
maxFillLevels: 5
fillBaseName: fill
inHandsMaxFillLevels: 1
fillBaseName: fill-
inHandsMaxFillLevels: 3
inHandsFillBaseName: -fill-
#
- type: entity
parent: DrinkGlassBase
id: DrinkShakeBlue
name: blue milkshake
description: ''
components:
- type: Drink
- type: Sprite
sprite: Objects/Consumable/Drinks/shake-blue.rsi
- type: entity
parent: DrinkGlassBase
id: DrinkShakeEmpty
name: shakeempty
description: ''
components:
- type: Drink
- type: Sprite
sprite: Objects/Consumable/Drinks/shake-empty.rsi
- type: entity
parent: DrinkGlassBase
id: DrinkShakeMeat
name: meat shake
description: ''
components:
- type: Drink
- type: Sprite
sprite: Objects/Consumable/Drinks/shake-meat.rsi
- type: entity
parent: DrinkGlassBase
id: DrinkShakeRobo
name: robo shake
description: ''
components:
- type: Drink
- type: Sprite
sprite: Objects/Consumable/Drinks/shake-robo.rsi
- type: entity
parent: DrinkGlassBase
id: DrinkShakeWhite
name: white shake
description: ''
components:
- type: Drink
- type: Sprite
sprite: Objects/Consumable/Drinks/shake-white.rsi