When the config option for pregame time was added in #6795, the
pregame_timeleft setting was moved out of the do while !setup loop.
If the game does not set up, it would keep decrementing the counter
into the negatives since it was never reset.
* Replaces the shuttle_controller and shuttle process with the shuttles subsystem. Instead of docking ports being initialized by the game ticker, its part of the StonedMC Master init order.
* The main advantage of this is control over the initialization order, as well as letting Master be aware of CPU we're using up with shuttle processing.
* By being part of the Master init order, we reduce the uncertainty about "are objects initialized yet?" which is nice, since shuttle docks break if machines aren't finished initializing!
* Polaris initial plane upstream merge
* POLARIS: Fix RIG visors with new plane system, and material scanner VIS_FULLBRIGHT
* POLARIS: Fix GetFlatIcon so that cameras and id pictures don't show the HUD overlays.
* POLARIS: Adds a 'alter values' proc for plane master ease of tweaking
Setting stuff like colorblindness variety and things.
* Remove NIF reference, fix lighting layer define
* Handle effects above lighting plane
* Moved all layer defines to planes+layers.dm
* Fixed overlays that are supposed to be above lighting to use the PLANE_LIGHTING_ABOVE
* Merge: 3000% human/update_icons() speed improvement
* Merge: Avoid ghosts pointing at things
* Hooks up informing Master the gameticker actually starts and stops the round subsystems will actually fire! What ho!
* We should convert the gameticker as an MC subsystem someday, and probably completely rewrite it while we are at it becuase it is crazy. But this should bridge the gap until then.
Links many map-specific details such as the station name, z-level information, and allowed jobs from global vars to map datum vars, which should help us maintain multiple maps at once in the future, which will be needed for the future Southern Cross.
Note that a config change will be needed to change GENERATE_ASTEROID to GENERATE_MAP, otherwise no changes should be required to continue normal map usage.
To change to a different map, it's suggested to tick the file that ticks all the other needed files, which for the Northern Star is called northern_star.dm.
``/mob/dead/observer`` -> ``/mob/observer/dead``
``/mob/eye`` -> ``/mob/observer/eye``
Reason being that they are similar in that they both don't interact with
the world in any way. Some procs were shared, some checks as well, and
it overall makes more sense this way. Plus, there were no ``/mob/dead``
mobs.
Antagonists are again drafted in attempt_spawn() and all players in the pending list will be spawned (provided they pass sanity checks).
Instead, attempt_spawn() is called in either pre_setup() or post_setup() depending on if the ANTAG_OVERRIDE_JOB flag is set. And all antags have
their spawning finalized in post_setup().
In addition, if game mode setup fails, all pending antagonist players have their special roles cleared.
Antag types with ANTAG_OVERRIDE_JOB are finalized before jobs are handed out, based on the idea that something which replaces a player's job should not need to depend on their assigned job in any way.
Moves the selection of pending antags outside of can_start().
Fixes issue with antag distribution that occurs when a player is a candidate for multiple antagonist types.
setup_economy() was previously called twice, the removed call happened before character creation.
Moves the remaining line to ensure proper setup order.
Axes speed of light and procs that used it (but were not used by anything). More maths too, and max stack amounts, not used anywhere.
Ticks back stuff that was unticked for faster compile, whoops.
Now instead calls the proper round-end proc when finishing the round, allowing admins to interrupt restart if desired.
None of the current end game variants currently use over/underlays, they are now content with coloring space.
On endgame start, the entire world is now updated in a spawn() instead, reducing crippling lag.
Adds support to designate APCs are critical, these are not drained during world end events.
Fixes a couple of potential runtime errors if no escape points have bee mapped in.
People in wheelchairs and mechas can now enter the world end rift.
Cult walls no longer cultify over and over, indefinitely.