total absorption currently held, across every layer
Absorbs up to amount of incoming damage, draining the outermost layer first and
spilling into the next one once a layer empties.
the amount actually absorbed - never more than amount, never more than
total was before the call - so the caller applies amount - absorbed to HP
adds a new outermost layer; a non-positive amount is a no-op rather than an empty layer
Decays every layer by its own decayPerTick, removing any that reach zero or below.
Named advance(turns) like every other turn-scale ticker here (TurnClock, Charges,
Field, AbilityCycle) rather than decay, so one word means one thing across the
framework: advance takes whole turns, update takes dt seconds.
drops every layer at once - a dispel, a fresh encounter starting clean
Staticfrom
how many independent layers are currently held