Ported from TG: Object armors are no longer defined in (unique) lists but rather datums that can be cached depending on their armor values.
Add LAZYSET define to lazily initialize a list then assigning a key to a value
Add alldirs2 global which is the same as alldirs except diagonals go first
Optimize mob memory by making alerts list lazy
Optimize obj/machinery memory by making use_log and settagwhitelist lists lazy
Optimize atom memory by not creating hud_list list for all atoms
Optimize turf memory by not creating footstep_sounds list for all turfs
Clean up code where possible
* Handlers converted, now to fix 3532 compile errors
* 3532 compile fixes later, got runtimes on startup
* Well the server loads now atleast
* Take 2
* Oops
Includes a refactor for gun turrets (merged into portable turrets), hostile simple_animal behaviour, spells (sounds have been added) and poi_list items.
* Initial Checkin
- Creates two new admin-only jobs, "Nanotrasen Navy Officer", and
"Special Operations Officer". The former is for IC investigations by
admins of situations on the Cyberiad, and spawns in the admin room. The
latter is for leading/overwatching ERT teams, and spawns at the ERT
office.
- Neither of these jobs are accessible to normal players, either on
join, in preferences, or as a random job.
- When they are spawned, no announcement is made, and they do not show
up on the crew manifest.
- In other news, the "select equipment" debug verb has also been
adjusted so that NT Navy Officers get the same equipment either way.
* Fixes teleporter on admin station so that admins can use it to teleport directly to bridge
* Fixes CC jobs not always displaying CC HUD icon for sechuds
* Adds an implant that dusts someone on their death
* Tweaks
Changes:
- CC officers now spawn with an internals box in their backpacks, like
everyone else.
- CC officers now get dust and death alarm implanters in their backpacks
on spawn, rather than automatically having the implants in their bodies.
This enables admins to test things on admin station without worrying
about dusting or having their deaths broadcast.
- Dust implants no longer provide death alarm functionality.
- Dust implants no longer process().
- Dust implants are now based on explosive implants, and can be manually
activated via deathgasp.
- CC officers now spawn with CC headsets that are named 'centcom
headset'.
* Deletes CC encryption key
* Switches to using imp_in.dust()
This commit overhauls the global.dm file, global_lists.dm file, and
defines.dm file into a tree system based on -tg-.
All defines have been split and distributed in code/__DEFINES/
Everything from global.dm and global_lists.dm has been split and
distributed in code/_globalvars
The _compile_options.dm file contains anything that absolutely, 100%, must
be initialized before world.dm.
Name definitions have been moved to code/_globalvars/lists/names.dm.
Other things to note
- All instances of something.z == 2/1/3/5 have been replaced with easily
configurable defines, labeled ZLEVEL_. The map include file can
override these by defining custom ones in it's file, as it is at the
top of the tree.
This commit adds the spacecube system from -tg-. The spacecube system
allows for predicatably random space layouts- it is randomized every
round, but the transitions stay consistant for that round, therefore
making it possible to 'map' space, or explore in teams.