diff --git a/code/game/antagonist/alien/borer.dm b/code/game/antagonist/alien/borer.dm index 9ee29b7a8d..7b378a83cf 100644 --- a/code/game/antagonist/alien/borer.dm +++ b/code/game/antagonist/alien/borer.dm @@ -27,20 +27,23 @@ var/datum/antagonist/xenos/borer/borers player.objectives += new /datum/objective/borer_reproduce() player.objectives += new /datum/objective/escape() -/datum/antagonist/xenos/borer/proc/place_in_host(var/mob/living/simple_animal/borer/borer, var/mob/living/carbon/human/host) - borer.host = host - borer.host_brain.name = host.name - borer.host_brain.real_name = host.real_name - var/obj/item/organ/external/head = host.get_organ("head") - if(head) head.implants += borer - -/datum/antagonist/xenos/borer/proc/get_hosts() - var/list/possible_hosts = list() - for(var/mob/living/carbon/human/H in mob_list) - if(H.stat != 2 && !(H.species.flags & IS_SYNTHETIC) && !H.has_brain_worms()) - possible_hosts |= H - return possible_hosts - /datum/antagonist/xenos/borer/place_mob(var/mob/living/mob) - var/list/possible_hosts = get_hosts() - if(possible_hosts.len) place_in_host(mob, pick(possible_hosts)) + var/mob/living/simple_animal/borer/borer = mob + if(istype(borer)) + var/mob/living/carbon/human/host + for(var/mob/living/carbon/human/H in mob_list) + if(H.stat != 2 && !(H.species.flags & IS_SYNTHETIC) && !H.has_brain_worms()) + host = H + break + if(istype(host)) + var/obj/item/organ/external/head = host.get_organ("head") + if(head) + borer.host = host + head.implants += borer + borer.loc = head + if(!borer.host_brain) + borer.host_brain = new(borer) + borer.host_brain.name = host.name + borer.host_brain.real_name = host.real_name + return + ..() // Place them at a vent if they can't get a host. diff --git a/code/game/antagonist/alien/xenomorph.dm b/code/game/antagonist/alien/xenomorph.dm index 053a9e2600..6552c47680 100644 --- a/code/game/antagonist/alien/xenomorph.dm +++ b/code/game/antagonist/alien/xenomorph.dm @@ -16,7 +16,7 @@ var/datum/antagonist/xenos/xenomorphs spawn_announcement = "Unidentified lifesigns detected coming aboard the station. Secure any exterior access, including ducting and ventilation." spawn_announcement_title = "Lifesign Alert" spawn_announcement_sound = 'sound/AI/aliens.ogg' - spawn_announcement_delay = 400 + spawn_announcement_delay = 5000 /datum/antagonist/xenos/New(var/no_reference) ..() diff --git a/code/game/antagonist/station/loyalist.dm b/code/game/antagonist/station/loyalist.dm index a600bfddec..aad315b4ce 100644 --- a/code/game/antagonist/station/loyalist.dm +++ b/code/game/antagonist/station/loyalist.dm @@ -14,8 +14,6 @@ var/datum/antagonist/loyalists/loyalists victory_feedback_tag = "win - rev heads killed" loss_feedback_tag = "loss - heads killed" flags = 0 - max_antags = 1 - max_antags_round = 1 // Inround loyalists. faction_role_text = "Loyalist" @@ -24,6 +22,7 @@ var/datum/antagonist/loyalists/loyalists faction_welcome = "Preserve NanoTrasen's interests against the traitorous recidivists amongst the crew. Protect the heads of staff with your life." faction_indicator = "loyal" faction_invisible = 1 + restricted_jobs = list("AI", "Cyborg") /datum/antagonist/loyalists/New() ..() diff --git a/code/game/antagonist/station/revolutionary.dm b/code/game/antagonist/station/revolutionary.dm index 56cfdd5b86..a75c373ef9 100644 --- a/code/game/antagonist/station/revolutionary.dm +++ b/code/game/antagonist/station/revolutionary.dm @@ -14,8 +14,6 @@ var/datum/antagonist/revolutionary/revs victory_feedback_tag = "win - heads killed" loss_feedback_tag = "loss - rev heads killed" flags = ANTAG_SUSPICIOUS | ANTAG_VOTABLE - max_antags = 1 - max_antags_round = 1 //Inround revs. faction_role_text = "Revolutionary" diff --git a/code/game/gamemodes/game_mode.dm b/code/game/gamemodes/game_mode.dm index 60507ee41f..a92f072559 100644 --- a/code/game/gamemodes/game_mode.dm +++ b/code/game/gamemodes/game_mode.dm @@ -229,7 +229,7 @@ var/global/list/additional_antag_types = list() var/enemy_count = 0 if(antag_tags && antag_tags.len) for(var/antag_tag in antag_tags) - var/datum/antagonist/antag = all_antag_types + var/datum/antagonist/antag = all_antag_types[antag_tag] if(!antag) continue var/list/potential = list() diff --git a/code/game/gamemodes/revolution/revolution.dm b/code/game/gamemodes/revolution/revolution.dm index f31108a19d..8c57a6cc69 100644 --- a/code/game/gamemodes/revolution/revolution.dm +++ b/code/game/gamemodes/revolution/revolution.dm @@ -3,9 +3,9 @@ config_tag = "revolution" round_description = "Some crewmembers are attempting to start a revolution!" extended_round_description = "Revolutionaries - Remove the heads of staff from power. Convert other crewmembers to your cause using the 'Convert Bourgeoise' verb. Protect your leaders." - required_players = 0 - required_players_secret = 0 - required_enemies = 0 + required_players = 4 + required_players_secret = 15 + required_enemies = 3 auto_recall_shuttle = 1 uplink_welcome = "AntagCorp Uplink Console:" uplink_uses = 10