-
Notifications
You must be signed in to change notification settings - Fork 516
Processing Subsystems
processing_objects
has been removed, so use of these APIs is now mandatory.
process()
is now defined at the /datum
level, as such any datum (sub-)type can be made to process with a processing subsystem.
To register an object with a processing subsystem, use START_PROCESSING(the_processing_subsystem, your_object)
, generally you want to use SSprocessing
.
START_PROCESSING(SSprocessing, your_object)
is equivalent to processing_objects += your_object
.
To stop an object processing, use STOP_PROCESSING(the_processing_subsystem, your_object)
.
An object may only be in one processing list at a time, and it may only be in the list once. START_PROCESSING()
and STOP_PROCESSING()
will automatically enforce this for you.
Valid processing lists: SScalamity
, SSdisposals
, SSprocessing
, SSfast_process
, SSdisease
, SSmodifiers
. Generally only SSprocessing
(2 seconds) and SSfast_process
(0.5 seconds) should be used.
A collection of standards and guidelines applied to the codebase.
Documentation regarding common APIs which speed up feature implementation and should be known by all coders.
- Atom Initialization
- Garbage, Queued Deletion, and Destroy
- Callbacks
- Timers
- Lazy Lists
- Overlays
- Processing APIs
- Common Helpers
- Global Listeners
- Singletons
Documentation for less used APIs that are not often needed.
Documentation regarding our implementation of StonedMC (SMC).
Decrepit or unused systems.
- Dynamic Maps (Not to be confused with the newer away mission implementation.)