From 9a09a9fbfa3d9f4baf0bfae5f205ef3004bf77f0 Mon Sep 17 00:00:00 2001 From: iaada Date: Sun, 27 Jul 2025 19:03:30 -0500 Subject: [PATCH] Another quality pass. More descriptive name for base types and give everything a material base. --- .../Catalog/Fills/Lockers/service.yml | 2 +- .../Prototypes/Entities/Debugging/drugs.yml | 2 +- .../Consumable/Drinks/drinks-cartons.yml | 2 +- .../Objects/Consumable/Drinks/drinks_base.yml | 18 ++++- .../Drinks/drinks_base_materials.yml | 81 +++++++++++++++---- .../Drinks/drinks_bottles_glass.yml | 56 +++++++------ .../Drinks/drinks_bottles_plastic.yml | 14 ++-- .../Objects/Consumable/Drinks/drinks_cans.yml | 2 +- .../Objects/Consumable/Drinks/drinks_cups.yml | 43 +++++----- .../Consumable/Drinks/drinks_flasks.yml | 5 +- .../Objects/Consumable/Drinks/drinks_fun.yml | 18 ++--- .../Consumable/Drinks/drinks_metamorphic.yml | 22 ++--- .../Consumable/Drinks/drinks_special.yml | 21 ++--- 13 files changed, 167 insertions(+), 119 deletions(-) diff --git a/Resources/Prototypes/Catalog/Fills/Lockers/service.yml b/Resources/Prototypes/Catalog/Fills/Lockers/service.yml index 85bd52e13d..e486545ce3 100644 --- a/Resources/Prototypes/Catalog/Fills/Lockers/service.yml +++ b/Resources/Prototypes/Catalog/Fills/Lockers/service.yml @@ -17,7 +17,7 @@ - id: DrinkShaker - id: ClothingEyesHudBeer - id: HandLabeler - - id: DrinkBottleBeer + - id: DrinkBeerBottleFull amount: !type:BinomialNumberSelector trials: 3 - !type:AllSelector diff --git a/Resources/Prototypes/Entities/Debugging/drugs.yml b/Resources/Prototypes/Entities/Debugging/drugs.yml index c9e072a14d..473e370625 100644 --- a/Resources/Prototypes/Entities/Debugging/drugs.yml +++ b/Resources/Prototypes/Entities/Debugging/drugs.yml @@ -1,5 +1,5 @@ - type: entity - parent: [DrinkBase, DrinkBaseGlass] + parent: [DrinkBase, DrinkBaseMaterialGlass] id: DrinkMeth name: meth # beer it is. coffee. beer? coff-ee? be-er? c-o... b-e description: Just a whole glass of meth. diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks-cartons.yml b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks-cartons.yml index ee2f4411df..ab7d0c1e30 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks-cartons.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks-cartons.yml @@ -1,6 +1,6 @@ - type: entity abstract: true - parent: [ DrinkBase, DrinkBaseCardboard, DrinkBaseOpenable ] + parent: [ DrinkBase, DrinkBaseMaterialCardboard, DrinkBaseOpenable ] id: DrinkCartonBaseLargeFull suffix: Full components: diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_base.yml b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_base.yml index b79346321c..65befafd08 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_base.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_base.yml @@ -1,6 +1,6 @@ -# When adding new drinks also add to random spawner located in Resources\Prototypes\Entities\Markers\Spawners\Random\Food_Drinks\drinks_soda.yml +# When adding new drinks also add to random spawner located in Resources\Prototypes\Entities\Markers\Spawners\Random\Food_Drinks\ -# A drink is a freely accessible solution like cups, teapots, cans, flasks, bottles, or beakers. +# A drink is an easily and freely accessible solution like cups, teapots, cans, flasks, bottles, or beakers. - type: entity abstract: true parent: BaseItem @@ -111,7 +111,6 @@ True: {state: "icon_open"} False: {state: "icon_empty"} - type: Sprite - sprite: Objects/Consumable/Drinks/alco-bottle.rsi layers: - state: icon map: ["enum.OpenableVisuals.Layer"] @@ -123,3 +122,16 @@ fillBaseName: fill- inHandsMaxFillLevels: 3 inHandsFillBaseName: -fill- + +# Visualizer for an openable entity with fill levels, already filled +- type: entity + abstract: true + parent: DrinkVisualsAll + id: DrinkVisualsAllFilled + components: + - type: Sprite + layers: + - state: icon + map: ["enum.OpenableVisuals.Layer"] + - state: fill-5 # this will need to be different with a different maxFillLevels + map: ["enum.SolutionContainerLayers.Fill"] diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_base_materials.yml b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_base_materials.yml index 1415345312..d09df66b4c 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_base_materials.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_base_materials.yml @@ -1,10 +1,10 @@ # Material costs to apply to a drink -# Adding one of these entities as the first parent will override a previous inherited material +# Adding one of these bases as the first parent will override a previous inherited material # Fragile glass - type: entity abstract: true - id: DrinkBaseGlass + id: DrinkBaseMaterialGlass components: - type: Damageable damageContainer: Inorganic @@ -33,12 +33,11 @@ transferForensics: true - !type:DoActsBehavior acts: [ "Destruction" ] - # so fragile it smashes when thrown - type: DamageOnLand ignoreResistances: true damage: types: - Blunt: 5 + Blunt: 5 # so fragile it smashes when thrown - type: DamageOtherOnHit damage: types: @@ -50,7 +49,7 @@ # Porcelain (like glass but no shard) - type: entity abstract: true - id: DrinkBasePorcelain + id: DrinkBaseMaterialPorcelain components: - type: Damageable damageContainer: Inorganic @@ -73,24 +72,23 @@ - !type:SpillBehavior { } - !type:DoActsBehavior acts: [ "Destruction" ] - # so fragile it smashes when thrown - type: DamageOnLand ignoreResistances: true damage: types: - Blunt: 5 + Blunt: 5 # so fragile it smashes when thrown - type: DamageOtherOnHit damage: types: Blunt: 5 - - type: Tag - tags: - - Recyclable + - type: PhysicalComposition + materialComposition: + Glass: 10 # Trace amounts of glass I guess. Important for overriding inheritance # Fragile plastic - type: entity abstract: true - id: DrinkBasePlastic + id: DrinkBaseMaterialPlastic components: - type: Damageable damageContainer: Inorganic @@ -113,6 +111,15 @@ - !type:SpillBehavior { } - !type:DoActsBehavior acts: [ "Destruction" ] + - type: DamageOnLand + ignoreResistances: true + damage: + types: + Blunt: 1 + - type: DamageOtherOnHit + damage: + types: + Blunt: 2 - type: PhysicalComposition materialComposition: Plastic: 25 @@ -120,7 +127,7 @@ # Fragile cardboard - type: entity abstract: true - id: DrinkBaseCardboard + id: DrinkBaseMaterialCardboard components: - type: Damageable damageContainer: Inorganic @@ -143,6 +150,15 @@ - !type:SpillBehavior { } - !type:DoActsBehavior acts: [ "Destruction" ] + - type: DamageOnLand + ignoreResistances: true + damage: + types: + Blunt: 1 + - type: DamageOtherOnHit + damage: + types: + Blunt: 1 - type: PhysicalComposition materialComposition: Cardboard: 25 @@ -150,7 +166,7 @@ # Weak metal - type: entity abstract: true - id: DrinkBaseMetal + id: DrinkBaseMaterialMetal components: - type: Damageable damageContainer: Inorganic @@ -173,6 +189,15 @@ - !type:SpillBehavior { } - !type:DoActsBehavior acts: [ "Destruction" ] + - type: DamageOnLand + ignoreResistances: true + damage: + types: + Blunt: 1 + - type: DamageOtherOnHit + damage: + types: + Blunt: 5 - type: PhysicalComposition materialComposition: Steel: 25 @@ -180,7 +205,7 @@ # strong metal - type: entity abstract: true - id: DrinkBaseStrongMetal + id: DrinkBaseMaterialStrongMetal components: - type: Damageable damageContainer: Inorganic @@ -203,6 +228,15 @@ - !type:SpillBehavior { } - !type:DoActsBehavior acts: [ "Destruction" ] + - type: DamageOnLand + ignoreResistances: true + damage: + types: + Blunt: 1 + - type: DamageOtherOnHit + damage: + types: + Blunt: 5 - type: PhysicalComposition materialComposition: Steel: 300 @@ -210,7 +244,7 @@ # Weak gold - type: entity abstract: true - id: DrinkBaseGold + id: DrinkBaseMaterialGold components: - type: Damageable damageContainer: Inorganic @@ -225,14 +259,29 @@ acts: [ "Destruction" ] - trigger: !type:DamageTrigger - damage: 10 + damage: 10 # Gold is very weak behaviors: - !type:PlaySoundBehavior sound: collection: MetalBreak # Could use a shinier sound - !type:SpillBehavior { } + - !type:SpawnEntitiesBehavior + spawn: + IngotGold1: + min: 1 + max: 1 + transferForensics: true - !type:DoActsBehavior acts: [ "Destruction" ] + - type: DamageOnLand + ignoreResistances: true + damage: + types: + Blunt: 5 # Don't drop your fancy golden cup! + - type: DamageOtherOnHit + damage: + types: + Blunt: 2 - type: PhysicalComposition materialComposition: Gold: 25 diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_bottles_glass.yml b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_bottles_glass.yml index 7545827275..fa0cd1692c 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_bottles_glass.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_bottles_glass.yml @@ -2,7 +2,7 @@ - type: entity abstract: true - parent: [ DrinkBase, DrinkBaseGlass, DrinkBaseOpenable ] + parent: [ DrinkBase, DrinkBaseMaterialGlass, DrinkBaseOpenable ] id: DrinkBottleGlassBaseFull suffix: Full components: @@ -51,7 +51,7 @@ # Large Glass Bottles - type: entity - parent: [DrinkVisualsAll, DrinkBottleGlassBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottleGlassBaseFull] id: DrinkAbsintheBottleFull name: Jailbreaker Verte description: One sip of this and you just know you're gonna have a good time. @@ -68,7 +68,7 @@ sprite: Objects/Consumable/Drinks/absinthebottle.rsi - type: entity - parent: [DrinkVisualsAll, DrinkBottleGlassBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottleGlassBaseFull] id: DrinkBlueCuracaoBottleFull name: Miss Blue Curaçao description: A fruity, exceptionally azure drink. Does not allow the imbiber to use the fifth magic. @@ -86,9 +86,8 @@ layers: - state: icon_blue map: ["enum.OpenableVisuals.Layer"] - - state: fill-1 + - state: fill-6 map: ["enum.SolutionContainerLayers.Fill"] - visible: false - type: SolutionContainerVisuals maxFillLevels: 6 fillBaseName: fill- @@ -132,7 +131,7 @@ examineTextUnsealed: drink-component-on-examine-is-unsealed-no-cork # tell the player why it can't close - type: entity - parent: [DrinkVisualsAll, DrinkBottleGlassBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottleGlassBaseFull] id: DrinkCognacBottleFull name: cognac bottle description: A sweet and strongly alcoholic drink, made after numerous distillations and years of maturing. You might as well not scream 'SHITCURITY' this time. @@ -149,7 +148,7 @@ sprite: Objects/Consumable/Drinks/cognacbottle.rsi - type: entity - parent: [DrinkVisualsAll, DrinkBottleGlassBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottleGlassBaseFull] id: DrinkGrenadineBottleFull name: Briar Rose grenadine syrup bottle description: Sweet and tangy, a bar syrup used to add color or flavor to drinks. @@ -164,11 +163,16 @@ currentLabel: reagent-name-grenadine - type: Sprite sprite: Objects/Consumable/Drinks/grenadinebottle.rsi + layers: + - state: icon + map: ["enum.OpenableVisuals.Layer"] + - state: fill-6 + map: ["enum.SolutionContainerLayers.Fill"] - type: SolutionContainerVisuals maxFillLevels: 6 - type: entity - parent: [DrinkVisualsAll, DrinkBottleGlassBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottleGlassBaseFull] id: DrinkGinBottleFull name: Griffeater gin description: A bottle of high quality gin, produced in the New London Space Station. @@ -185,7 +189,7 @@ sprite: Objects/Consumable/Drinks/ginbottle.rsi - type: entity - parent: [DrinkVisualsAll, DrinkBottleGlassBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottleGlassBaseFull] id: DrinkGildlagerBottleFull name: Gildlager bottle description: 100 proof cinnamon schnapps, made for alcoholic teen girls on spring break. @@ -219,7 +223,7 @@ sprite: Objects/Consumable/Drinks/coffeeliqueurbottle.rsi - type: entity - parent: [DrinkVisualsAll, DrinkBottleGlassBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottleGlassBaseFull] id: DrinkMelonLiquorBottleFull name: Emeraldine melon liquor description: A bottle of 46 proof Emeraldine melon liquor. Sweet and light. @@ -237,15 +241,14 @@ layers: - state: icon_green map: ["enum.OpenableVisuals.Layer"] - - state: fill-1 + - state: fill-6 map: ["enum.SolutionContainerLayers.Fill"] - visible: false - type: SolutionContainerVisuals maxFillLevels: 6 fillBaseName: fill- - type: entity - parent: [DrinkVisualsAll, DrinkBottleGlassBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottleGlassBaseFull] id: DrinkPatronBottleFull name: Wrapp Artiste Patrón bottle description: Silver laced tequila, served in space night clubs across the galaxy. @@ -281,7 +284,7 @@ - DrinkBottle - type: entity - parent: [DrinkVisualsAll, DrinkBottleGlassBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottleGlassBaseFull] id: DrinkRumBottleFull name: Captain Pete's Cuban spiced rum description: This isn't just rum, oh no. It's practically GRIFF in a bottle. @@ -298,7 +301,7 @@ sprite: Objects/Consumable/Drinks/rumbottle.rsi - type: entity - parent: [DrinkVisualsAll, DrinkBottleGlassBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottleGlassBaseFull] id: DrinkTequilaBottleFull name: Caccavo Guaranteed Quality tequila bottle description: Made from premium petroleum distillates, pure thalidomide and other fine quality ingredients! @@ -313,10 +316,9 @@ currentLabel: reagent-name-tequila - type: Sprite sprite: Objects/Consumable/Drinks/tequillabottle.rsi - - type: Sealable - type: entity - parent: [DrinkVisualsAll, DrinkBottleGlassBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottleGlassBaseFull] id: DrinkVermouthBottleFull name: Goldeneye vermouth bottle description: Sweet, sweet dryness! @@ -331,10 +333,9 @@ currentLabel: reagent-name-vermouth - type: Sprite sprite: Objects/Consumable/Drinks/vermouthbottle.rsi - - type: Sealable - type: entity - parent: [DrinkVisualsAll, DrinkBottleGlassBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottleGlassBaseFull] id: DrinkVodkaBottleFull name: vodka bottle description: Aah, vodka. Prime choice of drink AND fuel by Russians worldwide. @@ -349,10 +350,9 @@ currentLabel: reagent-name-vodka - type: Sprite sprite: Objects/Consumable/Drinks/vodkabottle.rsi - - type: Sealable - type: entity - parent: [DrinkVisualsAll, DrinkBottleGlassBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottleGlassBaseFull] id: DrinkWhiskeyBottleFull name: Uncle Git's Special Reserve description: A premium single-malt whiskey, gently matured inside the tunnels of a nuclear shelter. TUNNEL WHISKEY RULES. @@ -367,7 +367,6 @@ currentLabel: reagent-name-whiskey - type: Sprite sprite: Objects/Consumable/Drinks/whiskeybottle.rsi - - type: Sealable - type: entity parent: [DrinkVisualsOpenable, DrinkBottleGlassBaseFull] @@ -394,7 +393,7 @@ # Extra large bottles - type: entity - parent: [DrinkVisualsAll, DrinkBottleGlassBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottleGlassBaseFull] id: DrinkBeerGrowler # Needs to be renamed DrinkBeerBottleFull name: beer growler # beer it is. coffee. beer? coff-ee? be-er? c-o... b-e description: An alcoholic beverage made from malted grains, hops, yeast, and water. XL growler bottle. @@ -412,13 +411,15 @@ sprite: Objects/Consumable/Drinks/beer.rsi - type: Openable closeable: false + - type: Sealable + examineTextUnsealed: drink-component-on-examine-is-unsealed-no-cork # tell the player why it can't close - type: Tag tags: - Beer - DrinkBottle - type: entity - parent: [DrinkVisualsAll, DrinkBottleGlassBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottleGlassBaseFull] id: DrinkAleBottleFullGrowler name: Magm-Ale growler description: A true dorf's drink of choice. XL growler bottle. @@ -436,11 +437,14 @@ sprite: Objects/Consumable/Drinks/alebottle.rsi - type: Openable closeable: false + - type: Sealable + examineTextUnsealed: drink-component-on-examine-is-unsealed-no-cork # tell the player why it can't close + # Small glass bottles - type: entity - parent: [DrinkVisualsAll, DrinkBottleGlassSmallBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottleGlassSmallBaseFull] id: DrinkBeerBottleFull name: beer bottle # beer it is. coffee. beer? coff-ee? be-er? c-o... b-e description: An alcoholic beverage made from malted grains, hops, yeast, and water. @@ -464,7 +468,7 @@ - Beer - type: entity - parent: [DrinkVisualsAll, DrinkBottleGlassSmallBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottleGlassSmallBaseFull] id: DrinkAleBottleFull name: Magm-Ale bottle description: A true dorf's drink of choice. diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_bottles_plastic.yml b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_bottles_plastic.yml index 7ec62371d9..b875c03df3 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_bottles_plastic.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_bottles_plastic.yml @@ -1,6 +1,6 @@ - type: entity abstract: true - parent: [ DrinkBase, DrinkBasePlastic, DrinkBaseOpenable ] + parent: [ DrinkBase, DrinkBaseMaterialPlastic, DrinkBaseOpenable ] id: DrinkBottlePlasticBaseFull suffix: Full components: @@ -61,7 +61,7 @@ # Small Plastic Bottles - type: entity - parent: [DrinkVisualsAll, DrinkBottlePlasticSmallBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottlePlasticSmallBaseFull] id: DrinkWaterBottleFull name: water bottle description: Simple clean water of unknown origin. You think that maybe you dont want to know it. @@ -80,7 +80,7 @@ # Large Plastic Bottles - type: entity - parent: [DrinkVisualsAll, DrinkBottlePlasticBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottlePlasticBaseFull] id: DrinkColaBottleFull name: Space Cola bottle description: Cola. In spaaace! @@ -97,7 +97,7 @@ sprite: Objects/Consumable/Drinks/colabottle.rsi - type: entity - parent: [DrinkVisualsAll, DrinkBottlePlasticBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottlePlasticBaseFull] id: DrinkSpaceMountainWindBottleFull name: Space Solar Wind bottle description: Blows right through you like a solar wind. @@ -114,7 +114,7 @@ sprite: Objects/Consumable/Drinks/space_mountain_wind_bottle.rsi - type: entity - parent: [DrinkVisualsAll, DrinkBottlePlasticBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottlePlasticBaseFull] id: DrinkSpaceUpBottleFull name: Space-Up bottle description: Tastes like a hull breach in your mouth. @@ -131,7 +131,7 @@ sprite: Objects/Consumable/Drinks/space-up_bottle.rsi - type: entity - parent: [DrinkVisualsAll, DrinkBottlePlasticBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottlePlasticBaseFull] id: DrinkSodaWaterBottleFull name: soda water bottle description: Like water, but angry! @@ -149,7 +149,7 @@ currentLabel: reagent-name-soda-water - type: entity - parent: [DrinkVisualsAll, DrinkBottlePlasticBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottlePlasticBaseFull] id: DrinkTonicWaterBottleFull name: tonic water bottle description: Like soda water, but angrier maybe? Often sweeter. diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cans.yml b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cans.yml index d63636b79e..0318b05c5c 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cans.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cans.yml @@ -1,7 +1,7 @@ # 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: [ DrinkBase, DrinkBaseMetal, DrinkBaseOpenable, DrinkVisualsOpenable ] + parent: [ DrinkBase, DrinkBaseMaterialMetal, DrinkBaseOpenable, DrinkVisualsOpenable ] id: DrinkCanBaseFull suffix: Full components: diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cups.yml b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cups.yml index 923d8670a3..b1867d2600 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cups.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cups.yml @@ -24,7 +24,7 @@ # A mug is a type of cup.[2] - type: entity abstract: true - parent: [DrinkBaseCup, DrinkBasePorcelain] + parent: [DrinkBaseCup, DrinkBaseMaterialPorcelain] id: DrinkBaseMug name: mug description: A mug. @@ -49,7 +49,7 @@ ## Misc Cups - type: entity - parent: [DrinkBaseCup, DrinkBaseGold] + parent: [DrinkBaseCup, DrinkBaseMaterialGold] id: DrinkGoldenCup name: golden cup description: A golden cup. @@ -78,15 +78,11 @@ maxFillLevels: 4 - type: entity - parent: [ DrinkBase, DrinkBaseGlass ] + parent: [ DrinkBaseCup, DrinkBaseMaterialGlass ] 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: @@ -105,15 +101,9 @@ inHandsFillBaseName: -fill- - type: ExaminableSolution solution: drink - - type: FitsInDispenser - solution: drink - - type: Tag - tags: - - DrinkGlass - - Recyclable - type: entity - parent: [DrinkBase, DrinkBaseCardboard] + parent: [DrinkBaseCup, DrinkBaseMaterialCardboard] id: DrinkWaterCup name: water cup description: A paper water cup. @@ -122,21 +112,22 @@ solutions: drink: maxVol: 5 # One sip at a time. No rushing at the water cooler - - type: FitsInDispenser - solution: drink + - type: Item + size: Tiny - type: Sprite sprite: Objects/Consumable/Drinks/water_cup.rsi layers: - state: icon-0 - - map: ["enum.SolutionContainerLayers.Fill"] - state: icon-1 - - type: Appearance - - type: SolutionContainerVisuals + - state: icon-1 + map: ["enum.SolutionContainerLayers.Fill"] + visible: false + - type: SolutionContainerVisuals # TODO this doesn't work maxFillLevels: 1 fillBaseName: icon- - type: Tag tags: - Trash + - DrinkCup - WhitelistChameleon - type: TrashOnSolutionEmpty solution: drink @@ -202,7 +193,7 @@ sprite: Objects/Consumable/Drinks/mug_heart.rsi - type: entity - parent: [DrinkBaseMetal, DrinkBaseMug] + parent: [DrinkBaseMaterialMetal, DrinkBaseMug] id: DrinkMugMetal name: metal mug description: A metal mug. You're not sure which metal. @@ -247,12 +238,12 @@ sprite: Objects/Consumable/Drinks/mug_red.rsi ## Filled -# TODO these need a material for destruction, maybe a better parent - type: entity parent: DrinkBaseMug id: DrinkHotCoco name: hot chocolate + suffix: Full description: A heated drink consisting melted chocolate and heated milk. components: - type: SolutionContainerManager @@ -280,6 +271,7 @@ parent: DrinkBaseMug id: DrinkHotCoffee name: coffee + suffix: Full description: Coffee is a brewed drink prepared from roasted seeds, commonly called coffee beans, of the coffee plant. components: - type: SolutionContainerManager @@ -304,9 +296,10 @@ solution: drink - type: entity - parent: [DrinkBaseCup, DrinkBaseCardboard] + parent: DrinkBaseMug id: DrinkCafeLatte name: cafe latte + suffix: Full description: A nice, strong and tasty beverage while you are reading. components: - type: SolutionContainerManager @@ -332,6 +325,7 @@ - type: entity parent: DrinkTeacupEmpty id: DrinkTeacup + name: tea components: - type: SolutionContainerManager solutions: @@ -346,7 +340,6 @@ parent: DrinkTeacupEmpty id: DrinkGreenTea name: green tea - description: A plain white porcelain teacup. components: - type: SolutionContainerManager solutions: @@ -361,7 +354,7 @@ solution: drink - type: entity - parent: [DrinkBaseCup, DrinkBasePlastic] + parent: [DrinkBaseCup, DrinkBaseMaterialPlastic] id: DrinkLean name: grape juice description: Damn, no fun allowed. diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_flasks.yml b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_flasks.yml index b15a56747a..a41d67fac3 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_flasks.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_flasks.yml @@ -1,6 +1,6 @@ - type: entity abstract: true - parent: [DrinkBase, DrinkBaseStrongMetal, DrinkBaseOpenable] + parent: [DrinkBase, DrinkBaseMaterialStrongMetal, DrinkBaseOpenable] id: FlaskBase components: - type: SolutionContainerManager @@ -92,6 +92,9 @@ components: - type: Sprite sprite: Objects/Consumable/Drinks/flask_old.rsi + - type: Openable # annoying hack + opened: true + closeable: false - type: entity parent: [FlaskBase, DrinkVisualsOpenable] diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_fun.yml b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_fun.yml index 5be5b615f8..bdd83966c6 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_fun.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_fun.yml @@ -1,5 +1,5 @@ - type: entity - parent: [DrinkBase, DrinkBasePlastic, DrinkBaseOpenable, DrinkVisualsOpenable ] + parent: [DrinkBase, DrinkBaseMaterialPlastic, DrinkBaseOpenable, DrinkVisualsOpenable ] id: DrinkSpaceGlue name: space glue tube description: High performance glue intended for maintenance of extremely complex mechanical equipment. DON'T DRINK! @@ -12,9 +12,8 @@ layers: - state: icon map: ["enum.OpenableVisuals.Layer"] - - state: fill1 - map: [ "enum.SolutionContainerLayers.Fill" ] - visible: false + - state: fill6 + map: [ "enum.SolutionContainerLayers.Fill" ] # already has liquid, so no visible: false - state: icon-front map: [ "enum.SolutionContainerLayers.Overlay" ] - type: Glue @@ -35,7 +34,7 @@ solution: drink - type: entity - parent: [DrinkBase, DrinkBasePlastic, DrinkBaseOpenable, DrinkVisualsOpenable ] + parent: [DrinkBase, DrinkBaseMaterialPlastic, DrinkBaseOpenable, DrinkVisualsOpenable ] id: DrinkSpaceLube name: space lube tube description: High performance lubricant intended for maintenance of extremely complex mechanical equipment. @@ -48,9 +47,8 @@ layers: - state: icon map: ["enum.OpenableVisuals.Layer"] - - state: fill1 - map: [ "enum.SolutionContainerLayers.Fill" ] - visible: false + - state: fill6 + map: [ "enum.SolutionContainerLayers.Fill" ] # already has liquid, so no visible: false - state: icon-front map: [ "enum.SolutionContainerLayers.Overlay" ] - type: SolutionContainerManager @@ -90,7 +88,7 @@ Quantity: 200 - type: entity - parent: [DrinkBase, DrinkBaseGlass] + parent: [DrinkBase, DrinkBaseMaterialGlass] id: DrinkJarWhat name: jar of something description: You can't really tell what this is. @@ -153,7 +151,7 @@ - FourteenLoko - type: entity - parent: [DrinkVisualsAll, DrinkBottleGlassSmallBaseFull] + parent: [DrinkVisualsAllFilled, DrinkBottleGlassSmallBaseFull] id: DrinkMopwataBottleRandom name: delicious mopwata description: A foggy brown bottle with a faded label depicting a mop. It comes full of murky... vintage. diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_metamorphic.yml b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_metamorphic.yml index e0ab21e40e..adadea50f4 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_metamorphic.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_metamorphic.yml @@ -4,7 +4,7 @@ # Transformable container - normal glass - type: entity - parent: [DrinkBase, DrinkBaseGlass] + parent: [DrinkBaseCup, DrinkBaseMaterialGlass] 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. @@ -33,15 +33,14 @@ state: icon - type: ExaminableSolution solution: drink - - type: FitsInDispenser - solution: drink - type: Tag tags: - - DrinkGlass + - DrinkCup # Do these tags + - DrinkGlass # even do anything? - type: TransformableContainer - type: entity - parent: [DrinkBase, DrinkBaseGlass] + parent: DrinkGlass id: DrinkJar name: jar description: The hipster's cup. @@ -56,29 +55,18 @@ visible: false - state: icon-front map: [ "enum.SolutionContainerLayers.Overlay" ] - - type: Appearance - type: SolutionContainerManager solutions: drink: maxVol: 50 - type: SolutionContainerVisuals - maxFillLevels: 9 - fillBaseName: fill - metamorphic: true 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 +# TODO IconComponent doesn't seem to work in spawn panel - type: entity parent: DrinkGlass diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_special.yml b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_special.yml index ceea309474..3ac01c1258 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_special.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_special.yml @@ -1,5 +1,5 @@ - type: entity - parent: [DrinkBase, DrinkBaseGlass] + parent: [DrinkBase, DrinkBaseMaterialGlass] id: DrinkShotGlass name: shot glass description: Perfect for slamming down onto the table angrily. @@ -8,6 +8,8 @@ solutions: drink: maxVol: 5 + - type: Item + size: Tiny - type: Sprite sprite: Objects/Consumable/Drinks/shotglass.rsi layers: @@ -33,7 +35,7 @@ - DrinkGlass - type: entity - parent: DrinkBase + parent: [DrinkBase, DrinkBaseMaterialMetal] id: DrinkIceBucket name: ice bucket description: A special bucket of refreshy ice. Prohibited use for challenge with the same name! @@ -52,7 +54,7 @@ Steel: 75 - type: entity - parent: [DrinkBase, DrinkBasePorcelain] + parent: [DrinkBase, DrinkBaseMaterialPorcelain] id: DrinkTeapot name: teapot # short and stout description: An elegant teapot. It simply oozes class. @@ -125,7 +127,7 @@ # Bartender tools - type: entity - parent: DrinkBase + parent: [DrinkBase, DrinkBaseMaterialStrongMetal] id: DrinkShaker name: shaker description: The trusty mixing buddy of the bartender. @@ -151,7 +153,7 @@ - Shake - type: entity - parent: DrinkBase + parent: [DrinkBase, DrinkBaseMaterialMetal] id: DrinkJigger name: jigger description: Like a shaker, but smaller. Used to control the amount of ingredients. @@ -160,6 +162,8 @@ solutions: drink: maxVol: 20 + - type: Item + size: Tiny - type: SolutionTransfer canChangeTransferAmount: true minTransferAmount: 1 @@ -174,7 +178,7 @@ Steel: 20 - type: entity - parent: DrinkBase + parent: [DrinkBase, DrinkBaseMaterialStrongMetal] id: Pitcher name: metal pitcher description: A stainless steel insulated pitcher. Everyone's best friend in the morning. @@ -197,9 +201,6 @@ fillBaseName: fill- inHandsMaxFillLevels: 2 inHandsFillBaseName: -fill- - - type: PhysicalComposition - materialComposition: - Steel: 300 - type: FitsInDispenser solution: drink @@ -207,7 +208,7 @@ - type: entity abstract: true - parent: [DrinkBase, DrinkBaseGlass] + parent: [DrinkBase, DrinkBaseMaterialGlass] id: DrinkShakeBase description: '' components: -- 2.51.2