LateInitializeName allows storage items to set their name flexibly
after normal initialization is completed, allowing it to be based on
holder, contents, location, etc.
Also hoisted storage/internal/Destroy to its rightful place.
refactors atom/var/flags to atom_flags and area_flags
moves NOBLOODY, NOBLUDGEON, and PHORONGUARD to item_flags instead of atom_flags
corrects various misapplied flags
* drakes can collect/drop items and use buttons
* add a basic implementation of mob dexterity levels
* trained drake emotes are less visually intrusive
also fixes being able to take anchored items as a drake
also fixes some double messages on drake storage
also fixes animals being able to attack/scratch doors without a cooldown
also adds optional scratch_sound on simple_mob for when scratching a door
* fire alarm & conveyor switch drake interactions
also fix runes for actions
also fix not showing progress for dropping an item
* trained drake button/inventory review tweaks
* animal harness suggestions early return tweak
* Allowing vox to join as survivalists.
* Adding a crash survivor alt title for survivalist.
* Sideporting vox icons from Bay.
* Updating some vox gear and adjusting vox code for planet spawns.
* Attempting to fix up join checking on latejoin links.
* Crash survivor now loads a pod if it can't find one.
* Nerfs vox cold resistance, they now sit between Tesh and humans.
* Add proper custom arrows. (cross)Bows "render" proper arrows over themselves in inventory and on ground. Hardlight bow no longer deletes other arrows on removal.
* Fix subtyping issue.
Add Chitin arrow type.
* Remember to hit save, kids.
* Fixfix. Add true Unga arrow utilizing the Ancient Art of Sharp Rocks.
* atmospheric retention fields
* arf updates
* Update atm_ret_field.dm
* Update circuits.dm
thought I got this one but oops
* Update polaris.dme
totally didn't forget to uncheck testmap
* Update atm_ret_field.dm
* fix a runtime, add examplemap demo area
NB. In some cases we go from a more complex image() to a single icon_state string and I assume this works for every case but do not care to check because of the sheer scale of extra fiddly effort. Buyer beware, not my code.