Fix damagestatevisualizer (#8879)

This commit is contained in:
metalgearsloth
2022-06-16 17:56:00 +10:00
committed by GitHub
parent d63dbf2e28
commit e9fc7594b0
11 changed files with 169 additions and 167 deletions

View File

@@ -31,9 +31,11 @@ public sealed class DamageStateVisualizerSystem : VisualizerSystem<DamageStateVi
}
// Brain no worky rn so this was just easier.
foreach (var layer in sprite.AllLayers)
foreach (var key in new []{ DamageStateVisualLayers.Base, DamageStateVisualLayers.BaseUnshaded })
{
sprite.LayerSetVisible(layer, false);
if (!sprite.LayerMapTryGet(key, out _)) continue;
sprite.LayerSetVisible(key, false);
}
foreach (var (key, state) in layers)

View File

@@ -7,7 +7,7 @@ public sealed class DamageStateVisualsComponent : Component
{
public int? OriginalDrawDepth;
[DataField("states")] public Dictionary<DamageState, Dictionary<string, string>> States = new();
[DataField("states")] public Dictionary<DamageState, Dictionary<DamageStateVisualLayers, string>> States = new();
/// <summary>
/// Should noRot be turned off when crit / dead.

View File

@@ -32,11 +32,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: bat
Base: bat
Critical:
enum.DamageStateVisualLayers.Base: dead
Base: dead
Dead:
enum.DamageStateVisualLayers.Base: dead
Base: dead
- type: Butcherable
spawned:
- id: FoodMeat
@@ -103,11 +103,11 @@
rotate: true
states:
Alive:
enum.DamageStateVisualLayers.Base: 0
Base: 0
Critical:
enum.DamageStateVisualLayers.Base: dead
Base: dead
Dead:
enum.DamageStateVisualLayers.Base: dead
Base: dead
- type: Tag
tags:
- Bee
@@ -162,11 +162,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: chicken-0
Base: chicken-0
Critical:
enum.DamageStateVisualLayers.Base: dead-0
Base: dead-0
Dead:
enum.DamageStateVisualLayers.Base: dead-0
Base: dead-0
- type: Butcherable
spawned:
- id: FoodMeatChicken
@@ -196,11 +196,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: duck-0
Base: duck-0
Critical:
enum.DamageStateVisualLayers.Base: dead-0
Base: dead-0
Dead:
enum.DamageStateVisualLayers.Base: dead-0
Base: dead-0
- type: Butcherable
spawned:
- id: FoodMeatDuck
@@ -230,11 +230,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: duck-1
Base: duck-1
Critical:
enum.DamageStateVisualLayers.Base: dead-1
Base: dead-1
Dead:
enum.DamageStateVisualLayers.Base: dead-1
Base: dead-1
- type: Butcherable
spawned:
- id: FoodMeatDuck
@@ -264,11 +264,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: duck-2
Base: duck-2
Critical:
enum.DamageStateVisualLayers.Base: dead-2
Base: dead-2
Dead:
enum.DamageStateVisualLayers.Base: dead-2
Base: dead-2
- type: Butcherable
spawned:
- id: FoodMeatDuck
@@ -327,11 +327,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: butterfly
Base: butterfly
Critical:
enum.DamageStateVisualLayers.Base: dead
Base: dead
Dead:
enum.DamageStateVisualLayers.Base: dead
Base: dead
- type: Bloodstream
bloodMaxVolume: 0.1
- type: NoSlip
@@ -363,11 +363,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: cow
Base: cow
Critical:
enum.DamageStateVisualLayers.Base: dead
Base: dead
Dead:
enum.DamageStateVisualLayers.Base: dead
Base: dead
- type: SolutionContainerManager
solutions:
udder:
@@ -423,11 +423,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: crab
Base: crab
Critical:
enum.DamageStateVisualLayers.Base: dead
Base: dead
Dead:
enum.DamageStateVisualLayers.Base: dead
Base: dead
- type: Butcherable
spawned:
- id: FoodMeatCrab
@@ -455,11 +455,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: goat
Base: goat
Critical:
enum.DamageStateVisualLayers.Base: dead
Base: dead
Dead:
enum.DamageStateVisualLayers.Base: dead
Base: dead
- type: SolutionContainerManager
solutions:
udder:
@@ -503,11 +503,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: goose
Base: goose
Critical:
enum.DamageStateVisualLayers.Base: dead
Base: dead
Dead:
enum.DamageStateVisualLayers.Base: dead
Base: dead
- type: Butcherable
spawned:
- id: FoodMeatChicken
@@ -549,11 +549,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: crawling
Base: crawling
Critical:
enum.DamageStateVisualLayers.Base: dead
Base: dead
Dead:
enum.DamageStateVisualLayers.Base: dead
Base: dead
- type: Butcherable
spawned:
- id: FoodMeat
@@ -592,12 +592,12 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: kangaroo
Base: kangaroo
# SKIPPY NO!
Critical:
enum.DamageStateVisualLayers.Base: kangaroo-dead
Base: kangaroo-dead
Dead:
enum.DamageStateVisualLayers.Base: kangaroo-dead
Base: kangaroo-dead
- type: Puller
- type: entity
@@ -618,11 +618,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: kangaroo-boxing
Base: kangaroo-boxing
Critical:
enum.DamageStateVisualLayers.Base: kangaroo-boxing-dead
Base: kangaroo-boxing-dead
Dead:
enum.DamageStateVisualLayers.Base: kangaroo-boxing-dead
Base: kangaroo-boxing-dead
- type: MeleeWeapon
range: 1.5
arcwidth: 0
@@ -671,11 +671,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: monkey
Base: monkey
Critical:
enum.DamageStateVisualLayers.Base: dead
Base: dead
Dead:
enum.DamageStateVisualLayers.Base: dead
Base: dead
- type: Appearance
visuals:
- type: FireVisualizer
@@ -703,10 +703,10 @@
speechSounds: Squeak
- type: Sprite
drawdepth: SmallMobs
sprite: Mobs/Animals/mouse.rsi
layers:
- map: ["enum.DamageStateVisualLayers.Base"]
state: mouse-0
sprite: Mobs/Animals/mouse.rsi
- type: Clothing
size: 5
quickEquip: false
@@ -737,11 +737,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: mouse-0
Base: mouse-0
Critical:
enum.DamageStateVisualLayers.Base: dead-0
Base: dead-0
Dead:
enum.DamageStateVisualLayers.Base: splat-0
Base: splat-0
- type: Food
- type: Hunger
baseDecayRate: 0.5 # I'm very hungry! Give me. The cheese.
@@ -814,11 +814,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: mouse-1
Base: mouse-1
Critical:
enum.DamageStateVisualLayers.Base: dead-1
Base: dead-1
Dead:
enum.DamageStateVisualLayers.Base: splat-1
Base: splat-1
- type: Bloodstream
bloodMaxVolume: 50
- type: DiseaseCarrier #Why doesn't this save if it's only on the parent wtf
@@ -840,11 +840,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: mouse-1
Base: mouse-1
Critical:
enum.DamageStateVisualLayers.Base: dead-1
Base: dead-1
Dead:
enum.DamageStateVisualLayers.Base: splat-1
Base: splat-1
- type: Bloodstream
bloodMaxVolume: 50
- type: DiseaseCarrier
@@ -880,11 +880,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: lizard
Base: lizard
Critical:
enum.DamageStateVisualLayers.Base: dead
Base: dead
Dead:
enum.DamageStateVisualLayers.Base: dead
Base: dead
- type: Butcherable
spawned:
- id: FoodMeat
@@ -931,11 +931,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: slug
Base: slug
Critical:
enum.DamageStateVisualLayers.Base: dead
Base: dead
Dead:
enum.DamageStateVisualLayers.Base: dead
Base: dead
- type: Butcherable
spawned:
- id: FoodMeat
@@ -977,11 +977,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: frog
Base: frog
Critical:
enum.DamageStateVisualLayers.Base: dead
Base: dead
Dead:
enum.DamageStateVisualLayers.Base: dead
Base: dead
- type: Butcherable
spawned:
- id: FoodMeat
@@ -1026,11 +1026,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: parrot
Base: parrot
Critical:
enum.DamageStateVisualLayers.Base: dead
Base: dead
Dead:
enum.DamageStateVisualLayers.Base: dead
Base: dead
- type: Butcherable
spawned:
- id: FoodMeat
@@ -1072,11 +1072,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: penguin
Base: penguin
Critical:
enum.DamageStateVisualLayers.Base: penguin_dead
Base: penguin_dead
Dead:
enum.DamageStateVisualLayers.Base: penguin_dead
Base: penguin_dead
- type: Butcherable
spawned:
- id: FoodMeatPenguin
@@ -1124,11 +1124,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: penguin
Base: penguin
Critical:
enum.DamageStateVisualLayers.Base: dead
Base: dead
Dead:
enum.DamageStateVisualLayers.Base: dead
Base: dead
- type: Butcherable
spawned:
- id: FoodMeatPenguin
@@ -1181,7 +1181,7 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: snake
Base: snake
- type: Appearance
visuals:
- type: RotationVisualizer
@@ -1232,11 +1232,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: tarantula
Base: tarantula
Critical:
enum.DamageStateVisualLayers.Base: tarantula_dead
Base: tarantula_dead
Dead:
enum.DamageStateVisualLayers.Base: tarantula_dead
Base: tarantula_dead
- type: Butcherable
spawned:
- id: FoodMeatSpider
@@ -1299,11 +1299,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: possum
Base: possum
Critical:
enum.DamageStateVisualLayers.Base: possum_dead
Base: possum_dead
Dead:
enum.DamageStateVisualLayers.Base: possum_dead
Base: possum_dead
- type: Butcherable
spawned:
- id: FoodMeat
@@ -1358,11 +1358,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: raccoon
Base: raccoon
Critical:
enum.DamageStateVisualLayers.Base: raccoon_dead
Base: raccoon_dead
Dead:
enum.DamageStateVisualLayers.Base: raccoon_dead
Base: raccoon_dead
- type: Butcherable
spawned:
- id: FoodMeat
@@ -1417,11 +1417,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: fox
Base: fox
Critical:
enum.DamageStateVisualLayers.Base: fox_dead
Base: fox_dead
Dead:
enum.DamageStateVisualLayers.Base: fox_dead
Base: fox_dead
- type: Butcherable
spawned:
- id: FoodMeat

View File

@@ -36,11 +36,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: bear
Base: bear
Critical:
enum.DamageStateVisualLayers.Base: bear_dead
Base: bear_dead
Dead:
enum.DamageStateVisualLayers.Base: bear_dead
Base: bear_dead
- type: Butcherable
spawned:
- id: FoodMeatBear

View File

@@ -43,11 +43,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: alive
Base: alive
Critical:
enum.DamageStateVisualLayers.Base: crit
Base: crit
Dead:
enum.DamageStateVisualLayers.Base: dead
Base: dead
- type: Butcherable
spawned:
- id: FoodMeatFish

View File

@@ -27,11 +27,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: corgi
Base: corgi
Critical:
enum.DamageStateVisualLayers.Base: corgi_dead
Base: corgi_dead
Dead:
enum.DamageStateVisualLayers.Base: corgi_dead
Base: corgi_dead
- type: Appearance
- type: Butcherable
spawned:
@@ -67,11 +67,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: narsian
Base: narsian
Critical:
enum.DamageStateVisualLayers.Base: narsian_dead
Base: narsian_dead
Dead:
enum.DamageStateVisualLayers.Base: narsian_dead
Base: narsian_dead
- type: MeleeWeapon
range: 1.5
arcwidth: 0
@@ -134,11 +134,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: ian
Base: ian
Critical:
enum.DamageStateVisualLayers.Base: ian_dead
Base: ian_dead
Dead:
enum.DamageStateVisualLayers.Base: ian_dead
Base: ian_dead
- type: Grammar
attributes:
proper: true
@@ -164,11 +164,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: old_ian
Base: old_ian
Critical:
enum.DamageStateVisualLayers.Base: old_ian_dead
Base: old_ian_dead
Dead:
enum.DamageStateVisualLayers.Base: old_ian_dead
Base: old_ian_dead
- type: Grammar
attributes:
proper: true
@@ -190,11 +190,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: lisa
Base: lisa
Critical:
enum.DamageStateVisualLayers.Base: lisa_dead
Base: lisa_dead
Dead:
enum.DamageStateVisualLayers.Base: lisa_dead
Base: lisa_dead
- type: Grammar
attributes:
proper: true
@@ -216,11 +216,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: puppy
Base: puppy
Critical:
enum.DamageStateVisualLayers.Base: puppy_dead
Base: puppy_dead
Dead:
enum.DamageStateVisualLayers.Base: puppy_dead
Base: puppy_dead
- type: Grammar
attributes:
gender: epicene
@@ -252,11 +252,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: cat
Base: cat
Critical:
enum.DamageStateVisualLayers.Base: cat_dead
Base: cat_dead
Dead:
enum.DamageStateVisualLayers.Base: cat_dead
Base: cat_dead
- type: Butcherable
spawned:
- id: FoodMeat
@@ -299,11 +299,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: cat2
Base: cat2
Critical:
enum.DamageStateVisualLayers.Base: cat2_dead
Base: cat2_dead
Dead:
enum.DamageStateVisualLayers.Base: cat2_dead
Base: cat2_dead
- type: Grammar
attributes:
gender: epicene
@@ -334,11 +334,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: spacecat
Base: spacecat
Critical:
enum.DamageStateVisualLayers.Base: spacecat_dead
Base: spacecat_dead
Dead:
enum.DamageStateVisualLayers.Base: spacecat_dead
Base: spacecat_dead
- type: InteractionPopup
successChance: 0.7
interactSuccessString: petting-success-space-cat
@@ -365,11 +365,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: caracal_flop
Base: caracal_flop
Critical:
enum.DamageStateVisualLayers.Base: caracal_dead
Base: caracal_dead
Dead:
enum.DamageStateVisualLayers.Base: caracal_dead
Base: caracal_dead
- type: Grammar
attributes:
gender: epicene
@@ -414,11 +414,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: sloth
Base: sloth
Critical:
enum.DamageStateVisualLayers.Base: sloth_dead
Base: sloth_dead
Dead:
enum.DamageStateVisualLayers.Base: sloth_dead
Base: sloth_dead
- type: Butcherable
spawned:
- id: FoodMeat
@@ -460,11 +460,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: ferret
Base: ferret
Critical:
enum.DamageStateVisualLayers.Base: ferret_dead
Base: ferret_dead
Dead:
enum.DamageStateVisualLayers.Base: ferret_dead
Base: ferret_dead
- type: Butcherable
spawned:
- id: FoodMeat
@@ -517,11 +517,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: bingus
Base: bingus
Critical:
enum.DamageStateVisualLayers.Base: bingus_dead
Base: bingus_dead
Dead:
enum.DamageStateVisualLayers.Base: bingus_dead
Base: bingus_dead
- type: Butcherable
spawned:
- id: FoodMeat
@@ -563,11 +563,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: mcgriff
Base: mcgriff
Critical:
enum.DamageStateVisualLayers.Base: mcgriff_dead
Base: mcgriff_dead
Dead:
enum.DamageStateVisualLayers.Base: mcgriff_dead
Base: mcgriff_dead
- type: Butcherable
spawned:
- id: FoodMeat
@@ -601,11 +601,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: paperwork
Base: paperwork
Critical:
enum.DamageStateVisualLayers.Base: paperwork_dead
Base: paperwork_dead
Dead:
enum.DamageStateVisualLayers.Base: paperwork_dead
Base: paperwork_dead
- type: Butcherable
spawned:
- id: FoodMeat
@@ -646,11 +646,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: walter
Base: walter
Critical:
enum.DamageStateVisualLayers.Base: walter_dead
Base: walter_dead
Dead:
enum.DamageStateVisualLayers.Base: walter_dead
Base: walter_dead
- type: Butcherable
spawned:
- id: FoodMeat

View File

@@ -55,11 +55,11 @@
rotate: true
states:
Alive:
enum.DamageStateVisualLayers.Base: regalrat
Base: regalrat
Critical:
enum.DamageStateVisualLayers.Base: dead
Base: dead
Dead:
enum.DamageStateVisualLayers.Base: dead
Base: dead
- type: Puller
- type: GhostTakeoverAvailable
makeSentient: true
@@ -165,11 +165,11 @@
rotate: true
states:
Alive:
enum.DamageStateVisualLayers.Base: mouse-3
Base: mouse-3
Critical:
enum.DamageStateVisualLayers.Base: dead-3
Base: dead-3
Dead:
enum.DamageStateVisualLayers.Base: splat-3
Base: splat-3
- type: Puller
- type: DiseaseCarrier
carrierDiseases:

View File

@@ -41,9 +41,9 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: alive
Base: alive
Dead:
enum.DamageStateVisualLayers.Base: dead
Base: dead
- type: Butcherable
spawned:
- id: FoodMeatXeno

View File

@@ -64,11 +64,11 @@
rotate: true
states:
Alive:
enum.DamageStateVisualLayers.Base: running
Base: running
Critical:
enum.DamageStateVisualLayers.Base: crit
Base: crit
Dead:
enum.DamageStateVisualLayers.Base: dead
Base: dead
- type: Puller
- type: Butcherable
butcheringType: Spike
@@ -111,11 +111,11 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: purple_snake
Base: purple_snake
Critical:
enum.DamageStateVisualLayers.Base: dead_purple_snake
Base: dead_purple_snake
Dead:
enum.DamageStateVisualLayers.Base: dead_purple_snake
Base: dead_purple_snake
- type: Grammar
attributes:
proper: true
@@ -165,10 +165,10 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: small_purple_snake
Base: small_purple_snake
Critical:
enum.DamageStateVisualLayers.Base: dead_small_purple_snake
Base: dead_small_purple_snake
Dead:
enum.DamageStateVisualLayers.Base: dead_small_purple_snake
Base: dead_small_purple_snake
- type: SolutionTransfer
maxTransferAmount: 1

View File

@@ -34,13 +34,13 @@
- type: DamageStateVisuals
states:
Alive:
enum.DamageStateVisualLayers.Base: alive
enum.DamageStateVisualLayers.BaseUnshaded: alive-unshaded
Base: alive
BaseUnshaded: alive-unshaded
Critical:
enum.DamageStateVisualLayers.Base: crit
Base: crit
Dead:
enum.DamageStateVisualLayers.Base: dead
enum.DamageStateVisualLayers.BaseUnshaded: dead-unshaded
Base: dead
BaseUnshaded: dead-unshaded
- type: Physics
bodyType: KinematicController
- type: Fixtures

View File

@@ -218,7 +218,7 @@
rotate: true
states:
Alive:
enum.DamageStateVisualLayers.Base: onestar_boss
Base: onestar_boss
Dead:
enum.DamageStateVisualLayers.Base: onestar_boss_wrecked
Base: onestar_boss_wrecked
- type: CombatMode