Wall smashing > Wall tearing (#79432)

## About The Pull Request

This PR replaces a bunch of instances of mobs being able to smash walls
by clicking them once to being able to tear walls by standing next to
them for a few seconds while an animation occurs. Wall tearing is a
three-part animation and can be cancelled and resumed at any point from
the most recently completed step so it isn't _exactly_ a single two
second interaction, and is resultingly harder to interrupt.


![dreamseeker_pmnBB9YzNi](https://github.com/tgstation/tgstation/assets/7483112/edca2d02-58f1-499a-a01c-6155ad49a7b2)

Some mobs still destroy walls in a single click, such as Flesh Worms and
Star Gazers. Really whether I replaced this or not was largely down to
vibes.

It also deletes the `tear_walls` element because it was the same as
`wall_tearer` but without the fun visuals.

## Why It's Good For The Game

Deleting walls instantly with a single click is pretty obnoxious. This
method slows it down a _little_ bit but also looks visually cooler and
gives people on the _other_ side of the wall a warning that something is
about to bust through kool-aid man style.

## Changelog

🆑
balance: Gorillas, Seedlings, Gold Grubs, Mooks, Constructs, Ascended
Knock Heretics, Fugu and mobs subject to a Fugu Gland now rip up walls
in a slightly slower but more cinematic way.
/🆑
This commit is contained in:
Jacquerel
2023-11-03 01:52:27 +00:00
committed by GitHub
parent 7e97909899
commit 72c8a02f6c
13 changed files with 14 additions and 62 deletions
@@ -77,7 +77,7 @@
petal_dead = mutable_appearance(icon, "[icon_state]_dead_overlay")
petal_dead.color = petal_color
AddElement(/datum/element/wall_smasher)
AddElement(/datum/element/wall_tearer, allow_reinforced = FALSE)
AddComponent(/datum/component/obeys_commands, seedling_commands)
RegisterSignal(src, COMSIG_HOSTILE_PRE_ATTACKINGTARGET, PROC_REF(pre_attack))
RegisterSignal(src, COMSIG_KB_MOB_DROPITEM_DOWN, PROC_REF(drop_can))