Files
2025-06-29 00:10:41 -04:00

69 lines
2.1 KiB
Plaintext

//////////////////////////////////////////////
// //
// MIDROUND BLOODSUCKER //
// //
//////////////////////////////////////////////
/datum/dynamic_ruleset/midround/from_living/bloodsucker
name = "Vampiric Accident"
config_tag = "Midround Bloodsucker"
midround_type = HEAVY_MIDROUND
preview_antag_datum = /datum/antagonist/bloodsucker
pref_flag = ROLE_VAMPIRICACCIDENT
jobban_flag = ROLE_BLOODSUCKER
blacklisted_roles = BLOODSUCKER_BLACKLISTED_ROLES
weight = 5
repeatable = FALSE
/// List of species that cannot be bloodsuckers
var/list/restricted_species = BLOODSUCKER_RESTRICTED_SPECIES
/datum/dynamic_ruleset/midround/from_living/bloodsucker/is_valid_candidate(mob/candidate, client/candidate_client)
if(!is_station_level(candidate.z))
return FALSE
var/selected_species = candidate_client.prefs?.read_preference(/datum/preference/choiced/species)
if(selected_species in restricted_species)
return FALSE
if(!candidate.mind.valid_bloodsucker_candidate())
return FALSE
return ..()
/datum/dynamic_ruleset/midround/from_living/bloodsucker/assign_role(datum/mind/candidate)
var/datum/antagonist/bloodsucker/suck_datum = candidate.add_antag_datum(/datum/antagonist/bloodsucker)
suck_datum.AdjustUnspentRank(rand(2, 3))
/datum/dynamic_ruleset/midround/from_living/traitor
repeatable = TRUE
/datum/dynamic_ruleset/midround/from_ghosts/blob
repeatable = TRUE
/datum/dynamic_ruleset/midround/from_living/blob
repeatable = TRUE
/datum/dynamic_ruleset/midround/from_ghosts/xenomorph
repeatable = FALSE
/datum/dynamic_ruleset/midround/from_ghosts/nightmare
repeatable = FALSE
/datum/dynamic_ruleset/midround/from_ghosts/abductors
repeatable = FALSE
/datum/dynamic_ruleset/midround/from_ghosts/space_ninja
min_pop = 20
repeatable = FALSE
/datum/dynamic_ruleset/midround/spiders
repeatable = FALSE
/datum/dynamic_ruleset/midround/from_ghosts/revenant
repeatable = FALSE
/datum/dynamic_ruleset/midround/pirates
repeatable = FALSE
/datum/dynamic_ruleset/midround/from_living/obsesed
repeatable = FALSE