Largely ported from the work done at Baystation in Baystation12#17460 and later commits.
- Shuttles no longer require a separate area for each location they jump to.
Instead destinations are indicated by landmark objects, which are not necessarily exclusive to that shuttle.
This means that more than one shuttle could use the same docking port (not at the same time of course).
- Enhanced shuttle control computers to use nanoui if they didn't.
- Organizes shuttle datum code a bit better so there is less re-inventing the wheel in subtypes.
- Allows the possibility of shuttles (or destinations) that start on late-loaded maps.
- Deprecate the "extra" shuttle areas that are no longer needed and update shuttle areas in unit tests
This all required a bit of infrastructure improvements.
- ChangeArea proc, for changing the area of a turf.
- Fixed lighting overlays actually being able to be destroyed.
- Added a few utility macros and procs.
- Added "turf translation" procs which are like move_contents_to but more flexible.
(cherry picked from commit c837078105)
* Makes hacking window consider all hands instead of just the active one.
* Makes bottom indicators in hacking window go bold if they changed since the last refresh.
* Changelog
* Mobs can be incorporeal
Prevents step noises, getting shot, etc. Basically living ghosts. Feel free to add more places this should check, but I think this is a majority.
* Fix missing incorporeal floatyness
Refactors head_position into departments_managed and department_accounts, so command secretaries keep command account access (which is presumable why they were marked as a head position) without being told they manage the command department.
* Somewhat cleans up a piece of job code, makes new ID computers not be awful.
* Changes ROLE_ defines to DEPARTMENT_ to be clearer. Backports the new ID computer's assignment section of its UI to the old ID computer.
* Swaps back to southern cross map.
* Removes a block of commented code.
* Nerfs Chameleon Kit Boxes
Because of the way chameleon kits start with items, the boxes start with a ton of storage slots to hold all the items. Sometimes people grab the boxes, dump out the original contents and stuff a ton of stuff into them as a result.
This refactors it so that all the chameleon stuff starts in the backpack instead, so chameleon kit boxes themselves are no longer superboxes
* Unnecessary comma