Biodegrade dissolves all restraints instead of one single restraint; including grabs (#94135)

## About The Pull Request
@Metekillot 

Continues https://github.com/tgstation/tgstation/pull/92053
https://github.com/tgstation/tgstation/pull/92442
https://github.com/tgstation/tgstation/pull/92911

Biodegrade destroys all restraints instead of one single restraint.

Biodegrade will now dissolve all* restraints (fixes niche use-cases such
as strait jackets, cuffed prisoner shoes, etc).

Biodegrade includes grabs (unless it's another ling): The manhandler
gets splashed acid, dealing some damage (this damage is not that bad);
the damage dealt depends on BIO protection (for reference - the default
security uniform halves the damage). They will also be stunned briefly
to give the ling a short chance to leg it.

## Why It's Good For The Game

Same reasons as Metek's

This change is meant to bring changelings in line with their categorized
"uncontainable" valid salad demarcation.
Biodegrade kinda sucks, and this makes it not-suck. 

Makes biodegrade a more attractive ability for changeling by
significantly increasing its use as a method to escape confinement of
any sort. Hopefully it has the gumption to close up cheesy edge cases as
well.

## Changelog

🆑 ArchBTW, Bisar
balance: Changeling's Biodegrade works against grabs.
balance: Changeling's Biodegrade destroys all restraints instead of one
single restraint.
fix: Changeling's Biodegrade shows the effect when used inside lockers. 
fix: Changeling's Biodegrade properly covers restraint types (cuffed
prisoner shoes, strait jackets, etc).
/🆑

---------

Co-authored-by: tgstation-ci[bot] <179393467+tgstation-ci[bot]@users.noreply.github.com>
Co-authored-by: ArchBTW <230859540+glue0000@users.noreply.github.com>
Co-authored-by: Aki Ito <11748095+ExcessiveUseOfCobblestone@users.noreply.github.com>
This commit is contained in:
archbtw
2025-12-05 19:29:52 -05:00
committed by GitHub
co-authored by tgstation-ci[bot] <179393467+tgstation-ci[bot]@users.noreply.github.com> ArchBTW Aki Ito
parent 0b5d8ead8d
commit 4d32af1508
4 changed files with 115 additions and 97 deletions
+1 -1
View File
@@ -439,7 +439,7 @@
///Get the item on the mob in the storage slot identified by the id passed in
/mob/proc/get_item_by_slot(slot_id)
/mob/proc/get_item_by_slot(slot_id) as /obj/item
return null
/// Gets what slot the item on the mob is held in.