Files
Bubberstation/code/datums/components
SkyratBot f9ea4be02b [MIRROR] Moffers Crafting Recipe (#26860)
* Moffers Crafting Recipe (#81829)

## About The Pull Request

Adds a crafting recipe to make Moffers clown shoes, using 2 mothroach
hides and 1 pair of clown shoes, to the entertainment section of the
crafting menu. Only the basic clown shoes can be used to make it, so
other clown shoes like meown shoes won't work.

https://github.com/tgstation/tgstation/assets/105574010/527424d7-107b-4a62-aa29-92056be2b136

![Screenshot 2024-03-04
095521](https://github.com/tgstation/tgstation/assets/105574010/ba3b53f4-3ebf-4f32-b61c-734360e00de2)

## Why It's Good For The Game

Creates an additional use for mothroach hides so that they're not only
for making moth plushies, giving another mechanical reason to butcher
mothroaches. This will also allow the clown to psychotically pull the
hide of a mothroach over each of their shoes and parade them around
proudly to the horror of anyone watching.

## Changelog
🆑
add: Added Moffers as a crafting recipe in the entertainment section.
/🆑

* Moffers Crafting Recipe

---------

Co-authored-by: ValuedEmployee <105574010+ValuedEmployee@users.noreply.github.com>
2024-03-13 19:39:19 -04:00
..
2024-02-20 01:00:11 +01:00
2024-03-01 19:05:23 +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