/datum/game_mode/traitor/vampire name = "traitor+vampire" config_tag = "traitorvamp" traitors_possible = 3 //hard limit on traitors if scaling is turned off protected_jobs = list("Security Officer", "Warden", "Detective", "Head of Security", "Captain", "Blueshield", "Nanotrasen Representative", "Security Pod Pilot", "Magistrate", "Chaplain", "Brig Physician", "Internal Affairs Agent", "Nanotrasen Navy Officer", "Special Operations Officer") restricted_jobs = list("AI", "Cyborg") required_players = 10 required_enemies = 1 // how many of each type are required recommended_enemies = 3 var/protected_species_vampire = list("Machine") /datum/game_mode/traitor/vampire/announce() to_chat(world, "The current game mode is - Traitor+Vampire!") to_chat(world, "There is a Vampire from Space Transylvania on the station along with some syndicate operatives out for their own gain! Do not let the vampire and the traitors succeed!") /datum/game_mode/traitor/vampire/pre_setup() if(config.protect_roles_from_antagonist) restricted_jobs += protected_jobs var/list/datum/mind/possible_vampires = get_players_for_role(ROLE_VAMPIRE) for(var/mob/new_player/player in player_list) if((player.mind in possible_vampires) && (player.client.prefs.species in protected_species_vampire)) possible_vampires -= player.mind if(possible_vampires.len > 0) var/datum/mind/vampire = pick(possible_vampires) vampires += vampire modePlayer += vampires var/datum/mindslaves/slaved = new() slaved.masters += vampire vampire.som = slaved //we MIGT want to mindslave someone vampire.restricted_roles = restricted_jobs return ..() else return 0 /datum/game_mode/traitor/vampire/post_setup() for(var/datum/mind/vampire in vampires) grant_vampire_powers(vampire.current) vampire.special_role = "Vampire" forge_vampire_objectives(vampire) greet_vampire(vampire) ..()