Implements frenzy mechanics.
Frenzy is usually triggered by chaplain actions, or by being low on blood. It gives you the hulk gene and augments your vision, effectively turning you into a relatively powerful hunter.
To het out of it, you need to consume more blood.
The largest chunk of this rewrite.
Reworks the vampire powers, and makes them completely modular, as with changeling. Also adds a few powers, and so on.
A massive list of TO-DOs remains.
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.
Hand usability checks are moved into `mob/living/carbon/human/put_in_l_hand()` and `put_in_r_hand()` respectively. This changes how `obj/item/attack_hand()` functions slightly.
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.
Because qdel() doesn't delete the src.cable reference immediately, the emote loops for quite a bit until the garbage collector ticks.
I may need to find a bit of a better method for it, we'll see.
Both procs are now generalized, and accept a DBConnection object as an argument. Due to this generalization, all instances of `establish_db_connection()` must be renamed to `establish_db_connection(dbcon)`.
Also added variable `failed_connections` to the definition of DBConnection.
The Vampire gamemode, as ported right now. The gamemode is in, as well
as creating a vampire through the traitor panel. All abilities seem to
function, unable to test enthrall however (though I have a feeling it
will have to be redone). Enthralling someone without a CKey will give
you the correct response, however.
Any abilities having to do with lums will need to be redone. Vamphud as
well.
If looking over this and pointing out errors/fixing is faster than
simply porting it yourself, then feel free to do so!