Heat: 5
Structural: 5
+# Glass without the flat reductions
+- type: damageModifierSet
+ id: FlimsyGlass
+ coefficients:
+ Blunt: 1.2
+ Slash: 0.5
+ Piercing: 1.0
+ Heat: 0.8
+ Shock: 0 #glass is an insulator!
+
- type: damageModifierSet
id: RGlass
coefficients:
- type: entity
- parent: DrinkGlassBase
+ parent: [DrinkBase, DrinkGlassBase]
id: DrinkMeth
name: meth # beer it is. coffee. beer? coff-ee? be-er? c-o... b-e
description: Just a whole glass of meth.
+++ /dev/null
-# For cups, bottles, beakers, and other freely accessible solutions
-- type: entity
- abstract: true
- parent: BaseItem
- id: DrinkBase
- components:
- - type: Sprite
- state: icon
- - type: MeleeWeapon
- soundNoDamage:
- path: "/Audio/Effects/Fluids/splat.ogg"
- damage:
- types:
- Blunt: 0
- - type: DnaSubstanceTrace
- - type: Drink
- - type: Spillable
- solution: drink
- - type: MixableSolution
- solution: drink
- - type: DrawableSolution
- solution: drink
- - type: RefillableSolution
- solution: drink
- - type: DrainableSolution
- solution: drink
- - type: SolutionContainerManager
- solutions:
- drink:
- maxVol: 30
- - type: SolutionTransfer
- canChangeTransferAmount: true
- - type: UserInterface
- interfaces:
- enum.TransferAmountUiKey.Key:
- type: TransferAmountBoundUserInterface
-
-# A fragile, transparent glass cup
-- type: entity
- abstract: true
- parent: DrinkBase
- id: DrinkGlassBase
- components:
- - type: Damageable
- damageContainer: Inorganic
- damageModifierSet: Glass
- - type: Destructible
- thresholds:
- - trigger:
- !type:DamageTrigger
- damage: 5
- behaviors:
- - !type:PlaySoundBehavior
- sound:
- collection: GlassBreak
- - !type:SpillBehavior { }
- - !type:SpawnEntitiesBehavior
- spawn:
- ShardGlass:
- min: 1
- max: 1
- transferForensics: true
- - !type:DoActsBehavior
- acts: [ "Destruction" ]
- - type: DamageOnLand
- ignoreResistances: true
- damage:
- types:
- Blunt: 5
- - type: DamageOtherOnHit
- damage:
- types:
- Blunt: 5
- - type: PhysicalComposition
- materialComposition:
- Glass: 25
- - type: ExaminableSolution
- solution: drink
- - type: FitsInDispenser
- solution: drink
- - type: Tag
- tags:
- - DrinkGlass
-
-# A destructible, opaque plastic bottle
-- type: entity
- abstract: true
- parent: DrinkBase
- id: DrinkPlasticBase
- components:
- - type: Damageable
- damageContainer: Inorganic
- - type: Destructible
- thresholds:
- - trigger:
- !type:DamageTrigger
- damage: 5
- behaviors:
- - !type:SpillBehavior { }
- - !type:DoActsBehavior
- acts: [ "Destruction" ]
- #In future maybe add generic plastic scrap trash/debris
- - type: PhysicalComposition
- materialComposition:
- Plastic: 25
-
-# 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
- components:
- - type: Openable
- - type: PressurizedSolution
- solution: drink
- - type: Shakeable
- - type: Sealable
-
-# Pre-opened cans and bottles
-- type: entity
- abstract: true
- parent: BaseDrinkOpenable
- id: BaseDrinkOpenableOpen
- components:
- - type: Sprite
- layers:
- - state: icon_open
- - type: Openable
- opened: true
- - type: Sealable
- sealed: false
-
-# An empty drink, often paired with BaseDrinkOpenableOpen
-- type: entity
- abstract: true
- id: BaseDrinkEmptyTrash
- suffix: Empty
- components:
- - type: SpaceGarbage
- - type: TrashOnSolutionEmpty
- solution: drink
- - type: Tag
- tags:
- - Trash
-
-# Basic visualizer for an openable entity, often paired with BaseDrinkOpenable
-- type: entity
- abstract: true
- id: DrinkVisualsOpenable
- components:
- - type: Appearance
- - type: GenericVisualizer
- visuals:
- enum.OpenableVisuals.Opened:
- enum.OpenableVisuals.Layer:
- True: {state: "icon_open"}
- False: {state: "icon"}
- - type: Sprite
- layers:
- - state: icon
- map: ["enum.OpenableVisuals.Layer"]
-
-# Visualizer for an openable entity with fill levels
-- type: entity
- abstract: true
- id: DrinkVisualsAll
- components:
- - type: Appearance
- - 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: 3
- inHandsFillBaseName: -fill-
- type: entity
abstract: true
- parent: [ DrinkCardboardBase, BaseDrinkOpenable ]
- id: DrinkCartonBaseFull
+ parent: [ DrinkBase, DrinkCardboardBase, DrinkOpenableBase ]
+ id: DrinkCartonBaseLargeFull
suffix: Full
components:
- type: Openable
- type: SolutionContainerManager
solutions:
drink:
- maxVol: 50
+ maxVol: 100
- type: TrashOnSolutionEmpty
solution: drink
+ - type: Item
+ size: Normal
- type: entity
abstract: true
- parent: DrinkCartonBaseFull
- id: DrinkCartonBaseLargeFull
+ parent: DrinkCartonBaseLargeFull
+ id: DrinkCartonBaseFull
components:
- type: SolutionContainerManager
solutions:
drink:
- maxVol: 100
+ maxVol: 50
- type: Item
- size: Normal
+ size: Small
- type: entity
abstract: true
- parent: DrinkCartonBaseFull
+ parent: DrinkCartonBaseLargeFull
id: DrinkCartonBaseXtraLargeFull
components:
- type: SolutionContainerManager
solutions:
drink:
maxVol: 150
- - type: Item
- size: Normal
# Small carton
--- /dev/null
+# When adding new drinks also add to random spawner located in Resources\Prototypes\Entities\Markers\Spawners\Random\Food_Drinks\drinks_soda.yml
+
+# A drink is a freely accessible solution like cups, teapots, cans, flasks, bottles, or beakers.
+- type: entity
+ abstract: true
+ parent: BaseItem
+ id: DrinkBase
+ components:
+ - type: Sprite
+ state: icon
+ - type: MeleeWeapon
+ soundNoDamage:
+ path: "/Audio/Effects/Fluids/splat.ogg"
+ damage:
+ types:
+ Blunt: 0
+ - type: DnaSubstanceTrace
+ - type: Drink
+ - type: Spillable
+ solution: drink
+ - type: MixableSolution
+ solution: drink
+ - type: DrawableSolution
+ solution: drink
+ - type: RefillableSolution
+ solution: drink
+ - type: DrainableSolution
+ solution: drink
+ - type: SolutionContainerManager
+ solutions:
+ drink:
+ maxVol: 30
+ - type: SolutionTransfer
+ canChangeTransferAmount: true
+ - type: UserInterface
+ interfaces:
+ enum.TransferAmountUiKey.Key:
+ type: TransferAmountBoundUserInterface
+
+## Misc
+
+# This drink is empty trash
+- type: entity
+ abstract: true
+ id: DrinkEmptyTrashBase
+ suffix: Empty
+ components:
+ - type: SpaceGarbage
+ - type: TrashOnSolutionEmpty
+ solution: drink
+ - type: Tag
+ tags:
+ - Trash
+
+## For drinks with a lid
+
+# Un-opened
+- type: entity
+ abstract: true
+ id: DrinkOpenableBase
+ components:
+ - type: Openable
+ - type: PressurizedSolution
+ solution: drink
+ - type: Shakeable
+ - type: Sealable
+
+# Pre-opened
+- type: entity
+ abstract: true
+ parent: DrinkOpenableBase
+ id: DrinkOpenableOpenBase
+ components:
+ - type: Sprite
+ layers:
+ - state: icon_open
+ - type: Openable
+ opened: true
+ - type: Sealable
+ sealed: false
+
+## For visuals
+
+# Basic visualizer for an openable entity, often paired with BaseDrinkOpenable
+- type: entity
+ abstract: true
+ id: DrinkVisualsOpenable
+ components:
+ - type: Appearance
+ - type: GenericVisualizer
+ visuals:
+ enum.OpenableVisuals.Opened:
+ enum.OpenableVisuals.Layer:
+ True: {state: "icon_open"}
+ False: {state: "icon"}
+ - type: Sprite
+ layers:
+ - state: icon
+ map: ["enum.OpenableVisuals.Layer"]
+
+# Visualizer for an openable entity with fill levels
+- type: entity
+ abstract: true
+ id: DrinkVisualsAll
+ components:
+ - type: Appearance
+ - 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: 3
+ inHandsFillBaseName: -fill-
--- /dev/null
+# Material costs to apply to a drink
+
+# Fragile glass
+- type: entity
+ abstract: true
+ id: DrinkGlassBase
+ components:
+ - type: Damageable
+ damageContainer: Inorganic
+ damageModifierSet: FlimsyGlass
+ - type: Destructible
+ thresholds:
+ - trigger:
+ !type:DamageTrigger
+ damage: 5
+ behaviors:
+ - !type:PlaySoundBehavior
+ sound:
+ collection: GlassBreak
+ - !type:SpillBehavior { }
+ - !type:SpawnEntitiesBehavior
+ spawn:
+ ShardGlass:
+ min: 1
+ max: 1
+ transferForensics: true
+ - !type:DoActsBehavior
+ acts: [ "Destruction" ]
+ # so fragile it smashes when thrown
+ - type: DamageOnLand
+ ignoreResistances: true
+ damage:
+ types:
+ Blunt: 5
+ - type: DamageOtherOnHit
+ damage:
+ types:
+ Blunt: 5
+ - type: PhysicalComposition
+ materialComposition:
+ Glass: 25
+
+# Fragile plastic
+- type: entity
+ abstract: true
+ id: DrinkPlasticBase
+ components:
+ - type: Damageable
+ damageContainer: Inorganic
+ - type: Destructible
+ thresholds:
+ - trigger:
+ !type:DamageTrigger
+ damage: 5
+ behaviors:
+# - !type:PlaySoundBehavior TODO
+# sound:
+ - !type:SpillBehavior { }
+ - !type:DoActsBehavior
+ acts: [ "Destruction" ]
+ - type: PhysicalComposition
+ materialComposition:
+ Plastic: 25
+
+# Fragile cardboard
+- type: entity
+ abstract: true
+ id: DrinkCardboardBase
+ components:
+ - type: Damageable
+ damageContainer: Inorganic
+ - type: Destructible
+ thresholds:
+ - trigger:
+ !type:DamageTrigger
+ damage: 5
+ behaviors:
+# - !type:PlaySoundBehavior TODO
+# sound:
+ - !type:SpillBehavior { }
+ - !type:DoActsBehavior
+ acts: [ "Destruction" ]
+ - type: PhysicalComposition
+ materialComposition:
+ Cardboard: 25
+
+# Weak metal
+- type: entity
+ abstract: true
+ id: DrinkMetalBase
+ components:
+ - type: Damageable
+ damageContainer: Inorganic
+ damageModifierSet: FlimsyMetallic
+ - type: Destructible
+ thresholds:
+ - trigger:
+ !type:DamageTrigger
+ damage: 10
+ behaviors:
+# - !type:PlaySoundBehavior TODO
+# sound:
+ - !type:SpillBehavior { }
+ - !type:DoActsBehavior
+ acts: [ "Destruction" ]
+ - type: PhysicalComposition
+ materialComposition:
+ Steel: 25
+
+# strong metal
+- type: entity
+ abstract: true
+ id: DrinkStrongMetalBase
+ components:
+ - type: Damageable
+ damageContainer: Inorganic
+ damageModifierSet: Metallic
+ - type: Destructible
+ thresholds:
+ - trigger:
+ !type:DamageTrigger
+ damage: 25
+ behaviors:
+# - !type:PlaySoundBehavior TODO
+# sound:
+ - !type:SpillBehavior { }
+ - !type:DoActsBehavior
+ acts: [ "Destruction" ]
+ - type: PhysicalComposition
+ materialComposition:
+ Steel: 300
+
+# Weak gold
+- type: entity
+ abstract: true
+ id: DrinkGoldBase
+ components:
+ - type: Damageable
+ damageContainer: Inorganic
+ damageModifierSet: FlimsyMetallic
+ - type: Destructible
+ thresholds:
+ - trigger:
+ !type:DamageTrigger
+ damage: 10
+ behaviors:
+# - !type:PlaySoundBehavior TODO
+# sound:
+ - !type:SpillBehavior { }
+ - !type:DoActsBehavior
+ acts: [ "Destruction" ]
+ - type: PhysicalComposition
+ materialComposition:
+ Gold: 25
# When adding new drinks also add to random spawner located in Resources\Prototypes\Entities\Markers\Spawners\Random\Food_Drinks\drinks_bottles.yml
-
- type: entity
abstract: true
- parent: [ DrinkGlassBase, BaseDrinkOpenable ]
- id: DrinkBottleGlassSmallBaseFull
+ parent: [ DrinkBase, DrinkGlassBase, DrinkOpenableBase ]
+ id: DrinkBottleGlassBaseFull
suffix: Full
components:
+ - type: Item
+ size: Normal
- type: Openable
sound:
collection: bottleOpenSounds
- type: SolutionContainerManager
solutions:
drink:
- maxVol: 50
+ maxVol: 100
- type: Sprite
- sprite: Objects/Consumable/Drinks/beer.rsi # fallback
+ sprite: Objects/Consumable/Drinks/alco-bottle.rsi # fallback
- type: Tool
qualities:
- Rolling
- type: Tag
tags:
- DrinkBottle
+ - type: ExaminableSolution
+ solution: drink
- type: entity
abstract: true
- parent: DrinkBottleGlassSmallBaseFull
- id: DrinkBottleGlassBaseFull
+ parent: DrinkBottleGlassBaseFull
+ id: DrinkBottleGlassSmallBaseFull
components:
- type: SolutionContainerManager
solutions:
drink:
- maxVol: 100
- - type: Sprite
- sprite: Objects/Consumable/Drinks/alco-bottle.rsi # fallback
+ maxVol: 50
- type: Item
- size: Normal
+ size: Small
+ - type: Sprite
+ sprite: Objects/Consumable/Drinks/beer.rsi # fallback
+ - type: FitsInDispenser
+ solution: drink
# Large Glass Bottles
- type: entity
abstract: true
- parent: [ DrinkPlasticBase, BaseDrinkOpenable ]
- id: DrinkBottlePlasticSmallBaseFull
+ parent: [ DrinkBase, DrinkPlasticBase, DrinkOpenableBase ]
+ id: DrinkBottlePlasticBaseFull
suffix: Full
components:
+ - type: Item
+ size: Normal
- type: Openable
sound:
collection: bottleOpenSounds
closeable: true
closeSound:
collection: bottleCloseSounds
- - type: Tag
- tags:
- - DrinkCup
- type: SolutionContainerManager
solutions:
drink:
- maxVol: 30
- - type: FitsInDispenser
- solution: drink
+ maxVol: 100
- type: Sprite
state: icon
- sprite: Objects/Consumable/Drinks/waterbottle.rsi # fallback
+ sprite: Objects/Consumable/Drinks/generic_jug.rsi # fallback to generic plastic jug
- type: TrashOnSolutionEmpty
solution: drink
+ - type: Tag
+ tags:
+ - DrinkCup
- type: entity
abstract: true
- parent: DrinkBottlePlasticSmallBaseFull
- id: DrinkBottlePlasticBaseFull
+ parent: DrinkBottlePlasticBaseFull
+ id: DrinkBottlePlasticSmallBaseFull
components:
- - type: Tag
- tags:
- - DrinkBottle
+ - type: Item
+ size: Small
- type: SolutionContainerManager
solutions:
drink:
- maxVol: 100
+ maxVol: 30
- type: Sprite
state: icon
- sprite: Objects/Consumable/Drinks/generic_jug.rsi # fallback to generic plastic jug
- - type: Item
- size: Normal
+ sprite: Objects/Consumable/Drinks/waterbottle.rsi # fallback
+ - type: Tag
+ tags:
+ - DrinkBottle
+ - type: FitsInDispenser
+ solution: drink
# Empty
# TODO new sprite
# Xtra large
+# TODO these have too much volume
- type: entity
parent: [DrinkVisualsOpenable, DrinkBottlePlasticBaseFull]
# When adding new drinks also add to random spawner located in Resources\Prototypes\Entities\Markers\Spawners\Random\Food_Drinks\drinks_soda.yml
- type: entity
abstract: true
- parent: [ DrinkMetalBase, BaseDrinkOpenable, DrinkVisualsOpenable ]
+ parent: [ DrinkBase, DrinkMetalBase, DrinkOpenableBase, DrinkVisualsOpenable ]
id: DrinkCanBaseFull
+ suffix: Full
components:
- type: SolutionContainerManager
solutions:
# created when taking apart an ied
- type: entity
- parent: [ BaseDrinkOpenableOpen, DrinkColaCan ]
+ parent: [ DrinkOpenableOpenBase, DrinkColaCan ]
id: DrinkColaCanEmpty
suffix: Empty
components:
-# Empty drink containers; different from bottles in that these are intended to be spawned empty
-# When adding new drinks also add to random spawner located in Resources\Prototypes\Entities\Markers\Spawners\Random\Food_Drinks\drinks_soda.yml
+# A cup is a small container used to hold liquids for drinking.[1]
- type: entity
abstract: true
parent: DrinkBase
- type: Tag
tags:
- DrinkCup
+ - type: StaticPrice
+ price: 10
+# A mug is a type of cup.[2]
- type: entity
abstract: true
- parent: DrinkBaseCup
+ parent: [DrinkBaseCup, DrinkGlassBase]
id: DrinkBaseMug
name: mug
description: A mug.
- type: SolutionContainerVisuals
maxFillLevels: 3
fillBaseName: icon-
- - type: PhysicalComposition
- materialComposition:
- Glass: 25
+ - type: StaticPrice
+ price: 10
+
+## Misc Cups
-# Misc Cups
- type: entity
- parent: DrinkBaseCup
+ parent: [DrinkBaseCup, DrinkGoldBase]
id: DrinkGoldenCup
name: golden cup
description: A golden cup.
sprite: Objects/Consumable/Drinks/golden_cup.rsi
- type: StaticPrice
price: 125
- - type: PhysicalComposition
- materialComposition:
- Gold: 100
- type: entity
- parent: DrinkBaseCup
+ parent: [DrinkBaseCup, DrinkGlassBase]
id: DrinkTeacupEmpty
name: teacup
description: A plain white porcelain teacup.
fillBaseName: icon-
- type: entity
- parent: DrinkGlassBase
+ parent: [ DrinkBase, DrinkGlassBase ]
id: DrinkGlassCoupeShaped
name: coupe glass
description: A classic thin neck coupe glass, the icon of fragile labels on crates around the galaxy.
components:
+ - type: SolutionContainerManager
+ solutions:
+ drink:
+ maxVol: 30
- type: Sprite
sprite: Objects/Consumable/Drinks/glass_coupe_shape.rsi
layers:
- state: icon-front
map: [ "enum.SolutionContainerLayers.Overlay" ]
- type: Appearance
- - type: SolutionContainerManager
- solutions:
- drink:
- maxVol: 30
- type: SolutionContainerVisuals
maxFillLevels: 5
fillBaseName: fill
inHandsMaxFillLevels: 1
inHandsFillBaseName: -fill-
+ - type: ExaminableSolution
+ solution: drink
+ - type: FitsInDispenser
+ solution: drink
+ - type: Tag
+ tags:
+ - DrinkGlass
- type: entity
- parent: DrinkBaseCup
+ parent: [DrinkBase, DrinkCardboardBase]
id: DrinkWaterCup
name: water cup
description: A paper water cup.
components:
+ - type: SolutionContainerManager
+ solutions:
+ drink:
+ maxVol: 5 # One sip at a time. No rushing at the water cooler
+ - type: FitsInDispenser
+ solution: drink
- type: Sprite
sprite: Objects/Consumable/Drinks/water_cup.rsi
layers:
sprite: Objects/Consumable/Drinks/mug_red.rsi
## Filled
+# TODO these a material for destruction
- type: entity
parent: DrinkBaseCup
sprite: Objects/Consumable/Drinks/lean.rsi
- type: TrashOnSolutionEmpty
solution: drink
+
+#[1] https://en.wikipedia.org/wiki/Cup
+#[2] https://en.wikipedia.org/wiki/Mug
- type: entity
abstract: true
- parent: DrinkBase
+ parent: [DrinkBase, DrinkOpenableBase, DrinkStrongMetalBase]
id: FlaskBase
components:
- type: SolutionContainerManager
- type: Sprite
state: icon
sprite: Objects/Consumable/Drinks/flask.rsi
- - type: PhysicalComposition
- materialComposition:
- Steel: 300
- type: FitsInDispenser
solution: drink
- type: Openable
- type: entity
- parent: [DrinkVisualsOpenable, DrinkBase]
+ parent: [DrinkBase, DrinkPlasticBase, DrinkVisualsOpenable ]
id: DrinkSpaceGlue
name: space glue tube
description: High performance glue intended for maintenance of extremely complex mechanical equipment. DON'T DRINK!
solution: drink
- type: entity
- parent: [DrinkVisualsOpenable, DrinkBase]
+ parent: [DrinkBase, DrinkPlasticBase, DrinkVisualsOpenable ]
id: DrinkSpaceLube
name: space lube tube
description: High performance lubricant intended for maintenance of extremely complex mechanical equipment.
Quantity: 200
- type: entity
- parent: DrinkGlassBase
+ parent: [DrinkBase, DrinkGlassBase]
id: DrinkJarWhat
name: jar of something
description: You can't really tell what this is.
components:
- - type: Drink
- type: Sprite
sprite: Objects/Consumable/Drinks/jar_what.rsi
+ - type: ExaminableSolution
+ solution: drink
+ - type: FitsInDispenser
+ solution: drink
+ - type: Tag
+ tags:
+ - DrinkGlass
# Mopwata
- type: weightedRandomFillSolution
# Transformable container - normal glass
- type: entity
+ parent: [DrinkBase, DrinkGlassBase]
+ id: DrinkGlass
name: metamorphic glass
description: A metamorphic glass that automagically turns into a glass appropriate for the drink within. There's a sanded off patent number on the bottom.
- parent: DrinkGlassBase
- id: DrinkGlass
components:
- type: Sprite
sprite: Objects/Consumable/Drinks/glass_clear.rsi
metamorphicDefaultSprite:
sprite: Objects/Consumable/Drinks/glass_clear.rsi
state: icon
+ - type: ExaminableSolution
+ solution: drink
+ - type: FitsInDispenser
+ solution: drink
+ - type: Tag
+ tags:
+ - DrinkGlass
- type: TransformableContainer
- type: entity
- parent: DrinkGlassBase
+ parent: [DrinkBase, DrinkGlassBase]
id: DrinkJar
name: jar
description: The hipster's cup.
metamorphicDefaultSprite:
sprite: Objects/Consumable/Drinks/jar.rsi
state: icon
+ - type: ExaminableSolution
+ solution: drink
+ - type: FitsInDispenser
+ solution: drink
+ - type: Tag
+ tags:
+ - DrinkGlass
- type: TransformableContainer
## Filled
+# TODO entities without IconComponent need a metamorphic sprite on the reagent
- type: entity
parent: DrinkGlass
reagents:
- ReagentId: Antifreeze
Quantity: 30
+ - type: Icon
+ sprite: Objects/Consumable/Drinks/antifreeze.rsi
+ state: icon
- type: entity
parent: DrinkGlass
reagents:
- ReagentId: CoconutWater
Quantity: 30
+#TODO - type: Icon
- type: entity
parent: DrinkGlass
- ReagentId: GreenTea
Quantity: 30
- type: Icon
- sprite: Objects/Consumable/Drinks/glass_green.rsi #Placeholder
+ sprite: Objects/Consumable/Drinks/greenteaglass.rsi
state: icon
- type: entity
- ReagentId: IcedGreenTea
Quantity: 30
- type: Icon
- sprite: Objects/Consumable/Drinks/glass_green.rsi #Placeholder
+ sprite: Objects/Consumable/Drinks/icedgreenteaglass.rsi
state: icon
- type: entity
reagents:
- ReagentId: JuiceLime
Quantity: 30
+#TODO Icon
- type: entity
parent: DrinkGlass
state: icon
- type: entity
- parent: DrinkGlassBase
+ parent: DrinkGlass
id: DrinkWaterJug
name: water jug
description: Stay hydrated.
reagents:
- ReagentId: Water
Quantity: 30
- - type: Drink
- - type: Sprite
+ - type: Icon
sprite: Objects/Consumable/Drinks/water.rsi
+ state: icon
- type: entity
parent: DrinkGlass
reagents:
- ReagentId: JuiceWatermelon
Quantity: 30
+ - type: Icon
+ sprite: Objects/Consumable/Drinks/watermelonglass.rsi
+ state: icon
- type: entity
parent: DrinkGlass
- type: entity
- parent: DrinkGlassBase
+ parent: [DrinkBase, DrinkGlassBase]
id: DrinkShotGlass
name: shot glass
description: Perfect for slamming down onto the table angrily.
fillBaseName: fill
inHandsMaxFillLevels: 1
inHandsFillBaseName: -fill-
+ - type: ExaminableSolution
+ solution: drink
+ - type: FitsInDispenser
+ solution: drink
+ - type: Tag
+ tags:
+ - DrinkGlass
- type: entity
parent: DrinkBase
Steel: 75
- type: entity
- parent: DrinkGlassBase
+ parent: [DrinkBase, DrinkGlassBase]
id: DrinkTeapot
name: teapot # short and stout
description: An elegant teapot. It simply oozes class.
Quantity: 100
- type: Sprite
sprite: Objects/Consumable/Drinks/teapot.rsi
+ - type: FitsInDispenser
+ solution: drink
+ - type: Tag
+ tags:
+ - DrinkGlass
- type: entity
id: DrinkCanPack
# Weird empty shakes
- type: entity
- parent: DrinkGlassBase
+ abstract: true
+ parent: [DrinkBase, DrinkGlassBase]
+ id: DrinkShakeBase
+ description: ''
+ components:
+ - type: ExaminableSolution
+ solution: drink
+ - type: FitsInDispenser
+ solution: drink
+ - type: Tag
+ tags:
+ - DrinkGlass
+
+- type: entity
+ parent: DrinkShakeBase
id: DrinkShakeBlue
name: blue milkshake
- description: ''
components:
- - type: Drink
- type: Sprite
sprite: Objects/Consumable/Drinks/shake-blue.rsi
- type: entity
- parent: DrinkGlassBase
+ parent: DrinkShakeBase
id: DrinkShakeEmpty
name: shakeempty
- description: ''
components:
- - type: Drink
- type: Sprite
sprite: Objects/Consumable/Drinks/shake-empty.rsi
- type: entity
- parent: DrinkGlassBase
+ parent: DrinkShakeBase
id: DrinkShakeMeat
name: meat shake
- description: ''
components:
- - type: Drink
- type: Sprite
sprite: Objects/Consumable/Drinks/shake-meat.rsi
- type: entity
- parent: DrinkGlassBase
+ parent: DrinkShakeBase
id: DrinkShakeRobo
name: robo shake
- description: ''
components:
- - type: Drink
- type: Sprite
sprite: Objects/Consumable/Drinks/shake-robo.rsi
- type: entity
- parent: DrinkGlassBase
+ parent: DrinkShakeBase
id: DrinkShakeWhite
name: white shake
- description: ''
components:
- - type: Drink
- type: Sprite
sprite: Objects/Consumable/Drinks/shake-white.rsi
# File for containers like bottles or milk jugs that are empty
+# When used as the first parent, this empties a bottle's reagent and spawns it opened
- type: entity
abstract: true
- parent: [ BaseDrinkOpenableOpen, BaseDrinkEmptyTrash ]
+ parent: [ DrinkOpenableOpenBase, DrinkEmptyTrashBase ]
id: DrinkBottleBaseEmpty
components:
- type: SolutionContainerManager
- type: entity
abstract: true
- parent: [ BaseDrinkOpenableOpen, BaseDrinkEmptyTrash ]
+ parent: [ DrinkOpenableOpenBase, DrinkEmptyTrashBase ]
id: DrinkBottleBaseSmallEmpty
components:
- type: SolutionContainerManager
- type: entity
abstract: true
- parent: [ BaseDrinkOpenableOpen, BaseDrinkEmptyTrash ]
+ parent: [ DrinkOpenableOpenBase, DrinkEmptyTrashBase ]
id: DrinkCartonBaseEmpty
components:
- type: SolutionContainerManager
- type: entity
abstract: true
- parent: [ BaseDrinkOpenableOpen, BaseDrinkEmptyTrash ]
+ parent: [ DrinkOpenableOpenBase, DrinkEmptyTrashBase ]
id: DrinkCartonBaseLargeEmpty
components:
- type: SolutionContainerManager
"y": 32
},
"license": "CC-BY-SA-3.0",
- "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi. Fill levels by Tayrtahn on GitHub.",
+ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks. Fill levels by Tayrtahn on GitHub.",
"states":
[
{