Add supercritical sounds for ALL anomalies (#36425)

* add supercritical sounds for flesh anomaly and shadow anomaly

* fix attribution yml

* use sound collections, add TWO -- count em TWO tech anomaly supercrit sounds.

* add sound for present anomaly

* wrong soundcollection for flesh

* actually add the present anomaly sound...

* add fire anom sound

* add gravity anomaly supercritical sound

* add electric anomaly supercritical sound

* add bluespace anomaly supercritical and explosion sound

* add ice anomaly supercritical sound

* add fluid anomaly supercritical sound

* fix busted link

* typo

* add floral supercritical sound, fix typos

* Add supercritical sounds to injected anomalies

* add rock anomaly supercritical sound

* supercritical sound follows the entity, important for injected anomalies

* make the rock crit rumble a little less subtle at the start

* use CC0 freesound alternatives where available

* New pyro anomaly sound by GonTar

* New sounds by GonTar. Change AnomalyComponent so that you can change the length of supercritical properly in the prototype.

* oopsie, forgot the traps

* use TimeSpan for duration
This commit is contained in:
Quantum-cross
2025-07-17 13:01:37 -04:00
committed by GitHub
parent 535646aefb
commit 17559db1c7
20 changed files with 234 additions and 12 deletions

View File

@@ -62,11 +62,11 @@ public sealed class AnomalySystem : SharedAnomalySystem
{
base.Update(frameTime);
var query = EntityQueryEnumerator<AnomalySupercriticalComponent, SpriteComponent>();
var query = EntityQueryEnumerator<AnomalyComponent, AnomalySupercriticalComponent, SpriteComponent>();
while (query.MoveNext(out var uid, out var super, out var sprite))
while (query.MoveNext(out var uid, out var anomaly, out var super, out var sprite))
{
var completion = 1f - (float)((super.EndTime - _timing.CurTime) / super.SupercriticalDuration);
var completion = 1f - (float) ((super.EndTime - _timing.CurTime) / anomaly.SupercriticalDuration);
var scale = completion * (super.MaxScaleAmount - 1f) + 1f;
_sprite.SetScale((uid, sprite), new Vector2(scale, scale));