quality passes will continue until i'm satisfied

This commit is contained in:
iaada
2025-07-28 23:34:53 -05:00
parent ae2de02f0e
commit 8b6da7190b
6 changed files with 86 additions and 52 deletions

View File

@@ -37,7 +37,7 @@
enum.TransferAmountUiKey.Key:
type: TransferAmountBoundUserInterface
## Misc
## Misc bases
# This drink is empty trash
- type: entity
@@ -52,7 +52,7 @@
tags:
- Trash
## For drinks with a lid
## Bases for drinks with a lid
# Un-opened
- type: entity
@@ -79,9 +79,9 @@
- type: Sealable
sealed: false
## For visuals
## Bases for visuals
# Basic visualizer for an openable entity, often paired with BaseDrinkOpenable
# Basic visualizer for an openable entity, usually paired with BaseDrinkOpenable
- type: entity
abstract: true
id: DrinkVisualsOpenable
@@ -98,6 +98,52 @@
- state: icon
map: ["enum.OpenableVisuals.Layer"]
# Basic visualizer for an entity with fill levels
- type: entity
abstract: true
id: DrinkVisualsFill
components:
- type: Appearance
- type: Sprite
layers:
- state: icon_empty
- state: fill-1
map: ["enum.SolutionContainerLayers.Fill"]
visible: false
- type: SolutionContainerVisuals
maxFillLevels: 5
fillBaseName: fill-
inHandsMaxFillLevels: 3
inHandsFillBaseName: -fill-
# Layered visualizer for an entity with fill levels
- type: entity
abstract: true
parent: DrinkVisualsFill
id: DrinkVisualsFillOverlay
components:
- type: Sprite
layers:
- state: icon_empty
map: [ "enum.SolutionContainerLayers.Base" ]
- state: fill-1
map: [ "enum.SolutionContainerLayers.Fill" ]
visible: false
- state: icon-front
map: [ "enum.SolutionContainerLayers.Overlay" ]
# Basic visualizer for an entity with fill levels, already filled
- type: entity
abstract: true
parent: DrinkVisualsFill
id: DrinkVisualsFillFilled
components:
- type: Sprite
layers:
- state: icon
- state: fill-5 # this will need to be different with a different maxFillLevels
map: ["enum.SolutionContainerLayers.Fill"]
# Visualizer for an openable entity with fill levels
- type: entity
abstract: true
@@ -112,7 +158,7 @@
False: {state: "icon_empty"}
- type: Sprite
layers:
- state: icon
- state: icon_empty
map: ["enum.OpenableVisuals.Layer"]
- state: fill-1
map: ["enum.SolutionContainerLayers.Fill"]
@@ -131,7 +177,7 @@
components:
- type: Sprite
layers:
- state: icon
- state: icon_empty
map: ["enum.OpenableVisuals.Layer"]
- state: fill-5 # this will need to be different with a different maxFillLevels
map: ["enum.SolutionContainerLayers.Fill"]

View File

@@ -1,4 +1,4 @@
# Material costs to apply to a drink
## Material costs to apply to a drink
# Adding one of these bases as the first parent will override a previous inherited material
# Fragile glass
@@ -11,8 +11,8 @@
damageModifierSet: FlimsyGlass
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger # Overkill threshold
- trigger: # Overkill threshold
!type:DamageTrigger
damage: 200
behaviors:
- !type:DoActsBehavior
@@ -56,8 +56,8 @@
damageModifierSet: FlimsyGlass
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger # Overkill threshold
- trigger: # Overkill threshold
!type:DamageTrigger
damage: 200
behaviors:
- !type:DoActsBehavior
@@ -92,11 +92,11 @@
components:
- type: Damageable
damageContainer: Inorganic
#TODO damageModifierSet:
#TODO damageModifierSet: FlimsyPlastic
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger # Overkill threshold
- trigger: # Overkill threshold
!type:DamageTrigger
damage: 200
behaviors:
- !type:DoActsBehavior
@@ -134,8 +134,8 @@
damageModifierSet: FlimsyWood
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger # Overkill threshold
- trigger: # Overkill threshold
!type:DamageTrigger
damage: 200
behaviors:
- !type:DoActsBehavior
@@ -173,8 +173,8 @@
damageModifierSet: FlimsyMetallic
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger # Overkill threshold
- trigger: # Overkill threshold
!type:DamageTrigger
damage: 200
behaviors:
- !type:DoActsBehavior
@@ -212,8 +212,8 @@
damageModifierSet: Metallic
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger # Overkill threshold
- trigger: # Overkill threshold
!type:DamageTrigger
damage: 200
behaviors:
- !type:DoActsBehavior
@@ -241,7 +241,7 @@
materialComposition:
Steel: 300
# Weak gold
# Flimsy gold
- type: entity
abstract: true
id: DrinkBaseMaterialGold
@@ -251,15 +251,15 @@
damageModifierSet: FlimsyMetallic
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger # Overkill threshold
- trigger: # Overkill threshold
!type:DamageTrigger
damage: 200
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 10 # Gold is very weak
damage: 5 # Gold is very weak
behaviors:
- !type:PlaySoundBehavior
sound:

View File

@@ -13,8 +13,6 @@
- type: SolutionTransfer
canChangeTransferAmount: true
maxTransferAmount: 10
- type: Sprite
state: icon
- type: Tag
tags:
- DrinkCup
@@ -24,7 +22,7 @@
# A mug is a type of cup.[2]
- type: entity
abstract: true
parent: [DrinkBaseCup, DrinkBaseMaterialPorcelain]
parent: [DrinkBaseCup, DrinkBaseMaterialPorcelain] # Should use DrinkVisualsFill, but sprites have no in-hand
id: DrinkBaseMug
name: mug
description: A mug.
@@ -40,11 +38,6 @@
- type: SolutionContainerVisuals
maxFillLevels: 3
fillBaseName: icon-
- type: StaticPrice
price: 10
- type: Tag
tags:
- DrinkCup
## Misc Cups
@@ -60,7 +53,7 @@
price: 125
- type: entity
parent: [DrinkBaseCup, DrinkBaseMaterialPorcelain]
parent: DrinkBaseMug
id: DrinkTeacupEmpty
name: teacup
description: A plain white porcelain teacup.
@@ -72,8 +65,9 @@
sprite: Objects/Consumable/Drinks/teacup.rsi
layers:
- state: icon-0
- map: ["enum.SolutionContainerLayers.Fill"]
state: icon-4
- state: icon-4
map: ["enum.SolutionContainerLayers.Fill"]
visible: false
- type: Appearance
- type: SolutionContainerVisuals
maxFillLevels: 4

View File

@@ -1,5 +1,5 @@
- type: entity
parent: [ DrinkBase, DrinkBaseMaterialPlastic, DrinkBaseOpenable, DrinkVisualsOpenable ]
parent: [ DrinkBase, DrinkBaseMaterialPlastic, DrinkBaseOpenable, DrinkVisualsOpenable ] # Should use DrinkVisualAll, but sprite has no inhand
id: DrinkSpaceGlue
name: space glue tube
description: High performance glue intended for maintenance of extremely complex mechanical equipment. DON'T DRINK!
@@ -34,7 +34,7 @@
solution: drink
- type: entity
parent: [ DrinkBase, DrinkBaseMaterialPlastic, DrinkBaseOpenable, DrinkVisualsOpenable ]
parent: [ DrinkBase, DrinkBaseMaterialPlastic, DrinkBaseOpenable, DrinkVisualsOpenable ] # Should use DrinkVisualAll, but sprite has no inhand
id: DrinkSpaceLube
name: space lube tube
description: High performance lubricant intended for maintenance of extremely complex mechanical equipment.

View File

@@ -12,7 +12,7 @@
- type: Sprite
sprite: Objects/Consumable/Drinks/glass_clear.rsi
layers:
- state: icon
- state: icon # TODO add "icon_empty" state to match "DrinkVisualsFillOverlay"
map: [ "enum.SolutionContainerLayers.Base" ]
- state: fill1
map: [ "enum.SolutionContainerLayers.Fill" ]
@@ -26,7 +26,7 @@
maxVol: 30
- type: SolutionContainerVisuals
maxFillLevels: 9
fillBaseName: fill
fillBaseName: fill # todo rename to "fill-", add in-hands, then add parent "DrinkVisualsFillOverlay"
metamorphic: true
metamorphicDefaultSprite:
sprite: Objects/Consumable/Drinks/glass_clear.rsi

View File

@@ -1,5 +1,5 @@
- type: entity
parent: [DrinkBase, DrinkBaseMaterialGlass]
parent: [DrinkBase, DrinkBaseMaterialGlass, DrinkVisualsFillOverlay]
id: DrinkShotGlass
name: shot glass
description: Perfect for slamming down onto the table angrily.
@@ -13,19 +13,17 @@
- type: Sprite
sprite: Objects/Consumable/Drinks/shotglass.rsi
layers:
- state: icon
- state: icon # TODO add "icon_empty" state to match "DrinkVisualsFillOverlay"
map: [ "enum.SolutionContainerLayers.Base" ]
- state: fill1
map: [ "enum.SolutionContainerLayers.Fill" ]
visible: false
- state: icon-front
map: [ "enum.SolutionContainerLayers.Overlay" ]
- type: Appearance
- type: SolutionContainerVisuals
maxFillLevels: 2
fillBaseName: fill
fillBaseName: fill # TODO rename to "fill-" to match "DrinkVisualsFillOverlay"
inHandsMaxFillLevels: 1
inHandsFillBaseName: -fill-
- type: ExaminableSolution
solution: drink
- type: FitsInDispenser
@@ -161,7 +159,7 @@
- type: SolutionContainerManager
solutions:
drink:
maxVol: 20
maxVol: 20 # 20 might be too much
- type: Item
size: Tiny
- type: SolutionTransfer
@@ -178,7 +176,7 @@
Steel: 20
- type: entity
parent: [DrinkBase, DrinkBaseMaterialStrongMetal]
parent: [DrinkBase, DrinkBaseMaterialStrongMetal, DrinkVisualsFill]
id: Pitcher
name: metal pitcher
description: A stainless steel insulated pitcher. Everyone's best friend in the morning.
@@ -190,17 +188,13 @@
- type: Sprite
sprite: Objects/Consumable/Drinks/pitcher.rsi
layers:
- state: icon
map: ["enum.SolutionContainerLayers.Base"]
- state: fill-6
- state: icon # TODO add "icon_empty" state to match "DrinkVisualsFill"
- state: fill-1
map: ["enum.SolutionContainerLayers.Fill"]
visible: false
- type: Appearance
- type: SolutionContainerVisuals
maxFillLevels: 6
fillBaseName: fill-
inHandsMaxFillLevels: 2
inHandsFillBaseName: -fill-
- type: FitsInDispenser
solution: drink