Bloodsucker
Vars | |
all_bloodsucker_powers | Static typecache of all bloodsucker powers. |
---|---|
altar_uses | How many times have we used a blood altar |
blood_display | Blood display HUD |
bloodsucker_blood_volume | How much blood we have, starting off at default blood levels. |
bloodsucker_name | Used for assigning your name |
bloodsucker_reputation | Used for assigning your reputation |
bloodsucker_spam_healing | Timer between alerts for Healing messages |
bloodsucker_spam_sol_burn | Timer between alerts for Burn messages |
bloodsucker_title | Used for assigning your title |
bloodsucker_traits | Default Bloodsucker traits |
broke_masquerade | Have we been broken the Masquerade? |
clanpoints | How many clan points you have -> Used in clans in order to assert certain limits // Upgrades and stuff |
clanprogress | How much progress have you done on your clan |
frenzied | If we are currently in a Frenzy |
frenzygrab | Frenzy Grab Martial art given to Bloodsuckers in a Frenzy |
has_task | If we have a task assigned |
humanity_lost | Amount of Humanity lost |
masquerade_infractions | How many Masquerade Infractions do we have? |
max_blood_volume | How much blood we can have at once, increases per level. |
powers | ALL Powers currently owned |
special_vassals | Special vassals I own, to not have double of the same type. |
sunlight_display | Sunlight timer HUD |
vamprank_display | Vampire level display HUD |
vassal_banned_antags | Antagonists that cannot be Vassalized no matter what |
vassals | Vassals under my control. Periodically remove the dead ones. |
Procs | |
AddBloodVolume | |
AmValidAntag | Checks if the target has antag datums and, if so, are they allowed to be Vassalized, or not, or banned. Args: target - The person we check for antag datums. |
BuyPower | Buying powers |
DisableAllPowers | Disables all powers, accounting for torpor |
FinalDeath | Gibs the Bloodsucker, roundremoving them. |
HandleDeath | FINAL DEATH |
HandleHealing | |
LifeTick | Runs from COMSIG_LIVING_LIFE, handles Bloodsucker constant proccesses. |
SelectFirstName | Names |
antag_listing_name | Name shown on antag list |
antag_listing_status | Whatever interesting things happened to the antag admins should know about Include additional information about antag in this part |
apply_innate_effects | Apply innate effects is everything given to the mob When a body is tranferred, this is called on the new mob while on_gain is called ONCE per ANTAG, this is called ONCE per BODY. |
break_masquerade | When a Bloodsucker breaks the Masquerade, they get their HUD icon changed. |
can_make_vassal | |
check_cancel_sunlight | End Sol, if you're the last Bloodsucker |
check_end_torpor | Are we entering Torpor via Sol/Death? Then entering it isnt optional! Checks - Not daylight & Has more than 10 Brute/Burn & not already in Torpor |
check_limbs | Checks if you're in a coffin here, additionally checks for Torpor right below it. |
check_start_sunlight | |
clear_powers_and_stats | Give Bloodsucker Traits No Skittish "People" allowed Clear Disabilities & Organs ##clear_power_and_stats() |
fix_masquerade | This is admin-only of reverting a broken masquerade. |
free_all_vassals | When a Bloodsucker gets FinalDeath, all Vassals are freed - This is a Bloodsucker proc, not a Vassal one. |
get_flavor | Evaluates the conditions of the bloodsucker at the end of each round to pick a flavor message to add |
give_masquerade_infraction | Stats |
handle_feeding | mult: SILENT feed is 1/3 the amount |
handle_sol | Cycle through all vamp antags and check if they're inside a closet. |
make_vassal | First will check if the target can be turned into a Vassal, if so then it will turn them into one, log it, sync their minds, then updates the Rank Args: conversion_target - The person converted. |
on_body_transfer | End Sunlight? (if last Vamp) |
on_gain | Called when you get the antag datum, called only ONCE per antagonist. |
on_removal | Called by the remove_antag_datum() and remove_all_antag_datums() mind procs for the antag datum to handle its own removal and deletion. |
on_sol_end | Called when Sol first ends. |
remove_innate_effects | Remove innate effects is everything given to the mob When a body is tranferred, this is called on the new mob while on_removal is called ONCE per ANTAG, this is called ONCE per BODY. |
remove_vassal | Called by FreeAllVassals() |
sol_near_start | Called when Sol is near starting. |
sol_rank_up | |
update_blood | Makes your blood_volume look like your bloodsucker blood, unless you're Masquerading. |
update_hud | Update Blood Counter + Rank Counter |
Var Details
all_bloodsucker_powers
Static typecache of all bloodsucker powers.
altar_uses
How many times have we used a blood altar
blood_display
Blood display HUD
bloodsucker_blood_volume
How much blood we have, starting off at default blood levels.
bloodsucker_name
Used for assigning your name
bloodsucker_reputation
Used for assigning your reputation
bloodsucker_spam_healing
Timer between alerts for Healing messages
bloodsucker_spam_sol_burn
Timer between alerts for Burn messages
bloodsucker_title
Used for assigning your title
bloodsucker_traits
Default Bloodsucker traits
broke_masquerade
Have we been broken the Masquerade?
clanpoints
How many clan points you have -> Used in clans in order to assert certain limits // Upgrades and stuff
clanprogress
How much progress have you done on your clan
frenzied
If we are currently in a Frenzy
frenzygrab
Frenzy Grab Martial art given to Bloodsuckers in a Frenzy
has_task
If we have a task assigned
humanity_lost
Amount of Humanity lost
masquerade_infractions
How many Masquerade Infractions do we have?
max_blood_volume
How much blood we can have at once, increases per level.
powers
ALL Powers currently owned
special_vassals
Special vassals I own, to not have double of the same type.
sunlight_display
Sunlight timer HUD
vamprank_display
Vampire level display HUD
vassal_banned_antags
Antagonists that cannot be Vassalized no matter what
vassals
Vassals under my control. Periodically remove the dead ones.
Proc Details
AddBloodVolume
AmValidAntag
Checks if the target has antag datums and, if so, are they allowed to be Vassalized, or not, or banned. Args: target - The person we check for antag datums.
BuyPower
Buying powers
DisableAllPowers
Disables all powers, accounting for torpor
FinalDeath
Gibs the Bloodsucker, roundremoving them.
HandleDeath
FINAL DEATH
HandleHealing
Constantly runs on Bloodsucker's LifeTick, and is increased by being in Torpor/Coffins
LifeTick
Runs from COMSIG_LIVING_LIFE, handles Bloodsucker constant proccesses.
SelectFirstName
Names
antag_listing_name
Name shown on antag list
antag_listing_status
Whatever interesting things happened to the antag admins should know about Include additional information about antag in this part
apply_innate_effects
Apply innate effects is everything given to the mob When a body is tranferred, this is called on the new mob while on_gain is called ONCE per ANTAG, this is called ONCE per BODY.
break_masquerade
When a Bloodsucker breaks the Masquerade, they get their HUD icon changed.
can_make_vassal
Checks if the person is allowed to turn into the Bloodsucker's Vassal, ensuring they are a player and valid. If they are a Vassal themselves, will check if their master has broken the Masquerade, to steal them. Args: conversion_target - Person being vassalized
check_cancel_sunlight
End Sol, if you're the last Bloodsucker
check_end_torpor
Are we entering Torpor via Sol/Death? Then entering it isnt optional! Checks - Not daylight & Has more than 10 Brute/Burn & not already in Torpor
check_limbs
Checks if you're in a coffin here, additionally checks for Torpor right below it.
check_start_sunlight
Torpor is what deals with the Bloodsucker falling asleep, their healing, the effects, ect. This is basically what Sol is meant to do to them, but they can also trigger it manually if they wish to heal, as Burn is only healed through Torpor. You cannot manually exit Torpor, it is instead entered/exited by:
Torpor is triggered by:
- Being in a Coffin while Sol is on, dealt with by Sol
- Entering a Coffin with more than 10 combined Brute/Burn damage, dealt with by /closet/crate/coffin/close() [bloodsucker_coffin.dm]
- Death, dealt with by /HandleDeath() Torpor is ended by:
- Having less than 10 Brute damage while OUTSIDE of your Coffin while it isnt Sol.
- Having less than 10 Brute & Burn Combined while INSIDE of your Coffin while it isnt Sol.
- Sol being over, dealt with by /sunlight/process() [bloodsucker_daylight.dm]
Sol is the sunlight, during this period, all Bloodsuckers must be in their coffin, else they burn. Start Sol, called when someone is assigned Bloodsucker
clear_powers_and_stats
Give Bloodsucker Traits No Skittish "People" allowed Clear Disabilities & Organs ##clear_power_and_stats()
Removes all Bloodsucker related Powers/Stats changes, setting them back to pre-Bloodsucker Order of steps and reason why: Remove clan - Clans like Nosferatu give Powers on removal, we have to make sure this is given before removing Powers. Powers - Remove all Powers, so things like Masquerade are off. Species traits, Traits, MaxHealth, Language - Misc stuff, has no priority. Organs - At the bottom to ensure everything that changes them has reverted themselves already. Update Sight - Done after Eyes are regenerated.
fix_masquerade
This is admin-only of reverting a broken masquerade.
free_all_vassals
When a Bloodsucker gets FinalDeath, all Vassals are freed - This is a Bloodsucker proc, not a Vassal one.
get_flavor
Evaluates the conditions of the bloodsucker at the end of each round to pick a flavor message to add
give_masquerade_infraction
Stats
handle_feeding
mult: SILENT feed is 1/3 the amount
handle_sol
Cycle through all vamp antags and check if they're inside a closet.
make_vassal
First will check if the target can be turned into a Vassal, if so then it will turn them into one, log it, sync their minds, then updates the Rank Args: conversion_target - The person converted.
on_body_transfer
End Sunlight? (if last Vamp)
on_gain
Called when you get the antag datum, called only ONCE per antagonist.
on_removal
Called by the remove_antag_datum() and remove_all_antag_datums() mind procs for the antag datum to handle its own removal and deletion.
on_sol_end
Called when Sol first ends.
remove_innate_effects
Remove innate effects is everything given to the mob When a body is tranferred, this is called on the new mob while on_removal is called ONCE per ANTAG, this is called ONCE per BODY.
remove_vassal
Called by FreeAllVassals()
sol_near_start
Called when Sol is near starting.
sol_rank_up
This is used for dealing with the Vampire Clan. This handles Sol for Bloodsuckers, making sure to not have several. None of this should appear in game, we are using it JUST for Sol. All Bloodsuckers should have their individual report. Ranks the Bloodsucker up, called by Sol.
update_blood
Makes your blood_volume look like your bloodsucker blood, unless you're Masquerading.
update_hud
Update Blood Counter + Rank Counter