Files
Bubberstation/code/datums/components
Ryll Ryll beff318999 Adds a bunch of new achievements (#48094)
About The Pull Request

Now that achievements are open for adding again, adds 7 new misc achievements-

    Disk, Please!: As a nuclear operative, hold up the captain with a loaded rocket launcher. The captain must be conscious for it to count!
    My Watchlist Status is Not Important: Get reported to security and medical staff by displaying antisocial tendencies in a video game.
    I Was a Teenage Anarchist: Get killed by a vending machine falling on you.
    Mister Sandman: Kill someone by botching surgery while they're asleep
    A Bowl-d New World: Die to a toilet
    How Do I Switch Hands???: Hit yourself idiot
    One Lean, Mean, Cleaning Machine: Gaze upon a fully promoted cleanbot

Why It's Good For The Game

Adds more fun things to do for the gamer cred that aren't just killing things on lavaland
Changelog

cl Ryll/Shaps
add: A bunch of new achievements have been added! To name a few, there are achievements for holding up the captain with a rocket launcher as a nuclear operative, dying to inanimate objects, dying in a toilet, and getting watchlisted! Go do some dumb stuff!
/cl
2019-12-11 14:36:31 +13:00
..
2019-06-19 22:07:57 +02:00
2019-09-22 03:03:45 -07:00
2019-06-19 22:07:57 +02:00
2019-10-27 16:30:30 -04:00
2019-06-19 22:07:57 +02:00
2019-10-09 01:50:16 -07:00
2019-10-24 18:21:42 -07:00
2019-06-19 22:07:57 +02:00
2019-12-10 20:52:13 +13:00
2019-08-21 11:50:38 +12:00
2019-10-05 13:40:40 -04:00
2019-10-13 16:46:25 +13:00
2019-10-13 14:36:43 +03:00
2019-08-03 22:19:03 -07:00
2019-12-10 20:52:13 +13: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.

See this thread for an introduction to the system as a whole.

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