* Fixes SQL saving of hex numbers
* Removes completed TODO-MERGE notes
* Changes one instance of Galactic Common to Ceti Basic
* Renames instances of blind.layer to blind.invisibility (as is proper)
* Fixes the SQL schema some more
* Implements pAI saving
Undoes baymerge's changes to visible messages and fixes our previous implementation that i wrote.
Ours is much better all around.
With the changes baymerge made, they added an additional view call, and some 700 show_message calls to objects, for every single message, its absurdly wasteful.
As far as i'm aware there is no current use case for showing visible messages to objects. If there ever is a need we can implement an efficient solution with a global list of listeners
Fixes the APC in the cargo warehouse being unpowered
Fixes two runtime errors i reported
Fixes inflatable doors being unresponsive due to a sleep. Seperating the opening code off into a spawned child process has made it much more responsive
Adds pointing at things with alt+rightclick uasing some hacky code wizardry, thanks to kaiochao on the byond forums.
Also adds simple spam control to pointing, and changes the point verbs from using View, to Range, which is mildly faster
Also adds the ability to alt+click to eject your ID from PDAs and many computers. Anything to save on laggy rightclicks
bugfix: "LOOC, visible messages and visible emotes now work properly for contained mobs, including PAIs in card form, and any kind of held anima/nymph/drone"
bugfix: "MAJOR USABILITY FIX: Distant ghosts no longer see emotes from NPC mobs, like squeaking mice and clacking crabs. Ghost sight will now only show emotes from distant players, turning it on is now useful."
tweak: "LOOC Colour changed to an older one."
Fixes#526Fixes#202
bugfix: "Attempting to grab or pull bee swarms no longer works"
bugfix: "Fixed bee swarms still flying around when dead and appearing to be unkillable."
tweak: "Bees now take double damage from fire."
tweak: "Thick material clothing now protects against beestings."
tweak: "Beekeeping crate is no longer contraband in cargo."
changes:
rscadd: "Respawn timers are now tracked individually for playing as animals (mice), small synthetics (drones and pAIs) and crew (everything else). This means you can now play as a mouse or drone while waiting to respawn as a full crewmember.".
tweak: "You can now spawn as a drone immediately upon joining as an observer, without having to wait ten minutes. There is still a cooldown between respawning as a drone if you just died as one."
tweak: "Slightly improved the error messages if you try to respawn when you've not waited long enough."
In addition, unlisted changes:
The admin verb 'Allow player to respawn' now sets all three respawn timers
Respawn times are now centralised in setup #defines, for easier editing in future
Nonliving mobs will no longer attempt to ghost when deleted. A comment in mob.dm explains this change
Vaurca filtration bit organ added. When destroyed or removed, oxygen becomes poisonous to the Vaurca.
Vaurca lungs have been made organic.
Vaurca take 3x toxin damage, as a result of their rather alien biology.
Vaurca lose additional blood when an opportunity to lose blood presents itself, due to their open-circulatory system.
Vaurca organs are no longer all robotic, except for the neural socket and filtration bit.
Vaurca organ surgery is now possible.
Updates code to be 510 compile compatible.
Also introduces the new updates to the GOON processScheduler, which should make for better gameplay and less lag. Specially on high population.
Rewrite's Mahzel's SQL character and preference saving.
Introduces easy config switching between the new and old system, with no troubles at all.
Also introduces better logging for DBQuery/proc/parseArguments(), should something go wrong. And classes SQL query errors as full on error snow, as opposed to debug data.
Makes a mob/proc/can_use_hand(), which determines whether or not a mob can use a given hand.
Redefined in human.dm to check a hand's status and usability.
Transfer vote delay is counted from vote end, so it doesn't conflict with invalid or cancelled votes. Or other votes.
TRANSFER_TIMEOUT added as a config option, default value is 2 hours. No transfer votes before 2 hours.
Transfer votes before 3 hour mark require 2/3rds majority to pass again. Credit to SoundScopes for the original snippet.
Buckling now returns fully buckled if you're restrained, otherwise partially buckled.
Wraps incapacitated(INCAPACITATION_DISABLED) in a proc call to ensure there's is only one place to alter in the future.
Fixes a Stat() runtime that occasionally occur if the client was logged out when the sleep() was done sleeping.
Fixes delays when using alt+Turf click.
Makes the alt+Turf click panel only update when viewed instead. Seems like the better performance fix option in general.
Makes the alt+Turf click panel always use the "Turf" name, consistency.
Removes a non-utilized config setting.
Adds a config setting to set the respawn timer, defaults to 30 minutes as today.
Makes the MayRespawn() proc utilize this config setting. Makes more uses of MayRespawn() check the respawn delay.