mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-14 02:43:16 +00:00
## About The Pull Request Basically all of the heavy lifting was done in #72919, but we do a few key things here that I wasn't able to do then because it was just fucking massive. Player Facing Changes: * hear_blind arg is now a default state and must be specifically overridden. Pretty much every mob that wasn't a pAI or alien was lacking this, so let's toss it in as a default now. Let me know if the generic message I put in for /mob/living sucks and we can go from there. Code Side Changes: * suicide.dm now only contains code pertinent to the suicide verb, and all subtype proc-overrides have been moved to an appropriate file pertinent to that subtype. * suicide.dm has also been organized a bit more to aid the previous change. * There is only one suicide verb now, implemented on /mob/living. All the verb does is invoke the handle_suicide() proc, which does all of the lifting. * Leaning into *mumble mumble* object-oriented philosophy, the message we send to the world on suicide is handled on subtype procs, rather than be in the huge fuck-off message tree I implemented in the earlier PR. It definitely makes the visible_message() proc not hard to read IMO. This also means that we can take up a less footprint when we re-use certain suicide messages (i.e. Silicon), which is nifty too. i'm probably forgetting something but that's all of the big ones ## Why It's Good For The Game There is now a very, very common framework for how suicide works across all living mobs, and it's much easier to override how suicide is handled. Certain subtypes do their own bullshit thing, but it's quite easy to account for this on that case-by-case basis. The overall code takes up a much less footprint that just makes it look nicer. ## Changelog 🆑 qol: Some mob suicides now have a message that shows to blind people or people that didn't actually witness the suicide, pretty cool. /🆑