mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-13 03:33:21 +00:00
44 lines
1.5 KiB
Plaintext
44 lines
1.5 KiB
Plaintext
/datum/game_mode/traitor/changeling
|
|
name = "traitor+changeling"
|
|
config_tag = "traitorchan"
|
|
traitors_possible = 3 //hard limit on traitors if scaling is turned off
|
|
restricted_jobs = list("AI", "Cyborg")
|
|
required_players = 3
|
|
required_players_secret = 10
|
|
required_enemies = 2
|
|
recommended_enemies = 3
|
|
|
|
/datum/game_mode/traitor/changeling/announce()
|
|
world << "<B>The current game mode is - Traitor+Changeling!</B>"
|
|
world << "<B>There is an alien creature on the station along with some foreign operatives out for their own gain! Do not let the changeling and the traitors succeed!</B>"
|
|
|
|
|
|
/datum/game_mode/traitor/changeling/pre_setup()
|
|
if(config.protect_roles_from_antagonist)
|
|
restricted_jobs += protected_jobs
|
|
|
|
var/list/datum/mind/possible_changelings = get_players_for_role(BE_CHANGELING)
|
|
|
|
for(var/datum/mind/player in possible_changelings)
|
|
for(var/job in restricted_jobs)//Removing robots from the list
|
|
if(player.assigned_role == job)
|
|
possible_changelings -= player
|
|
|
|
if(possible_changelings.len>0)
|
|
var/datum/mind/changeling = pick(possible_changelings)
|
|
//possible_changelings-=changeling
|
|
changelings += changeling
|
|
modePlayer += changelings
|
|
return ..()
|
|
else
|
|
return 0
|
|
|
|
/datum/game_mode/traitor/changeling/post_setup()
|
|
for(var/datum/mind/changeling in changelings)
|
|
grant_changeling_powers(changeling.current)
|
|
changeling.special_role = "Changeling"
|
|
if(!config.objectives_disabled)
|
|
forge_changeling_objectives(changeling)
|
|
greet_changeling(changeling)
|
|
..()
|
|
return |