Files
Bubberstation/code/datums/components
ViktorKoL 13a1cd6d9d Adds several new sound effects for the blood cult (#78714)
## About The Pull Request

A remake of this: https://github.com/tgstation/tgstation/pull/64770.
Adds a new sound effect for when the cult gains its red eyes, for when
their halos appear, and a global sound effect for when the cult begins
to draw a Nar-Sie rune.



https://github.com/tgstation/tgstation/assets/44502667/f9d478a0-5fc6-4c8c-aa1a-16b7f4e86203



https://github.com/tgstation/tgstation/assets/44502667/4dd40ec6-f501-405d-a8ed-f7214f6a6613



https://github.com/tgstation/tgstation/assets/44502667/6ee8962e-fdbb-41a8-8962-cc19cb0ea1b7


I should probably also note that in the process of folder organization,
I moved the blood cult's old antag gain sound effect and renamed it. I
hope it doesn't cause any issues...
## Why It's Good For The Game

All these occasions do not have a sound effect unique to them yet. I
think they deserve it.
## Changelog
🆑
sound: the blood cult's rise to power is now accompanied by several new
sound effects
/🆑
2023-10-11 00:58:02 -07:00
..
2023-08-22 01:26:34 +00:00
2023-08-16 13:04:41 -06:00
2023-09-19 19:07:51 +00:00
2023-10-08 03:04:35 +01:00
2023-08-16 13:04:41 -06:00
2023-07-12 18:52:02 -06:00
2023-10-05 13:20:16 -06:00
2023-08-14 12:39:30 -06:00
2023-09-07 20:25:52 +01:00

Datum Component System (DCS)

Concept

Loosely adapted from /vg/. This is an entity component system for adding behaviours to datums when inheritance doesn't quite cut it. By using signals and events instead of direct inheritance, you can inject behaviours without hacky overloads. It requires a different method of thinking, but is not hard to use correctly. If a behaviour can have application across more than one thing. Make it generic, make it a component. Atom/mob/obj event? Give it a signal, and forward it's arguments with a SendSignal() call. Now every component that want's to can also know about this happening.

HackMD page for an introduction to the system as a whole.

See/Define signals and their arguments in __DEFINES\components.dm