diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm index 55a119a19ca20..c03c11b4ab5df 100644 --- a/code/modules/admin/topic.dm +++ b/code/modules/admin/topic.dm @@ -55,33 +55,37 @@ return switch(href_list["makeAntag"]) if("traitors") - if(src.makeTraitors()) - message_admins("[key_name_admin(usr)] created traitors.") - log_admin("[key_name(usr)] created traitors.") + var/maxCount = input("Set number of Traitors","Set Traitor Count (max)",1) as num|null + if(src.makeTraitors(maxCount)) + message_admins("[key_name_admin(usr)] created [maxCount] traitor(s).") + log_admin("[key_name(usr)] created [maxCount] traitor(s).") else - message_admins("[key_name_admin(usr)] tried to create traitors. Unfortunately, there were no candidates available.") - log_admin("[key_name(usr)] failed to create traitors.") + message_admins("[key_name_admin(usr)] tried to create [maxCount] traitor(s). Unfortunately, there were no candidates available.") + log_admin("[key_name(usr)] failed to create [maxCount] traitor(s).") if("changelings") - if(src.makeChangelings()) - message_admins("[key_name(usr)] created changelings.") - log_admin("[key_name(usr)] created changelings.") + var/maxCount = input("Set number of Changelings","Set Changeling Count (max)",1) as num|null + if(src.makeChangelings(maxCount)) + message_admins("[key_name(usr)] created [maxCount] changelings.") + log_admin("[key_name(usr)] created [maxCount] changelings.") else - message_admins("[key_name_admin(usr)] tried to create changelings. Unfortunately, there were no candidates available.") - log_admin("[key_name(usr)] failed to create changelings.") + message_admins("[key_name_admin(usr)] tried to create [maxCount] changelings. Unfortunately, there were no candidates available.") + log_admin("[key_name(usr)] failed to create [maxCount] changelings.") if("revs") - if(src.makeRevs()) - message_admins("[key_name(usr)] started a revolution.") - log_admin("[key_name(usr)] started a revolution.") + var/maxCount = input("Set number of Revolutionaries","Set Revolutionaries Count (max)",1) as num|null + if(src.makeRevs(maxCount)) + message_admins("[key_name(usr)] started a revolution with [maxCount] freedom fighters.") + log_admin("[key_name(usr)] started a [maxCount] freedom fighters.") else - message_admins("[key_name_admin(usr)] tried to start a revolution. Unfortunately, there were no candidates available.") - log_admin("[key_name(usr)] failed to start a revolution.") + message_admins("[key_name_admin(usr)] tried to start a revolution with [maxCount] freedom fighters. Unfortunately, there were no candidates available.") + log_admin("[key_name(usr)] failed to start a revolution with [maxCount] freedom fighters.") if("cult") - if(src.makeCult()) - message_admins("[key_name(usr)] started a cult.") - log_admin("[key_name(usr)] started a cult.") + var/maxCount = input("Set number of Cultists","Set Cultist Count (max)",1) as num|null + if(src.makeCult(maxCount)) + message_admins("[key_name(usr)] started a cult with [maxCount] cultists.") + log_admin("[key_name(usr)] started a cult with [maxCount] cultists.") else - message_admins("[key_name_admin(usr)] tried to start a cult. Unfortunately, there were no candidates available.") - log_admin("[key_name(usr)] failed to start a cult.") + message_admins("[key_name_admin(usr)] tried to start a cult with [maxCount] cultists. Unfortunately, there were no candidates available.") + log_admin("[key_name(usr)] failed to start a cult with [maxCount] cultists.") if("wizard") message_admins("[key_name(usr)] is creating a wizard...") if(src.makeWizard()) @@ -92,12 +96,13 @@ log_admin("[key_name(usr)] failed to create a wizard.") if("nukeops") message_admins("[key_name(usr)] is creating a nuke team...") - if(src.makeNukeTeam()) - message_admins("[key_name(usr)] created a nuke team.") - log_admin("[key_name(usr)] created a nuke team.") + var/maxCount = input("Set number of Nuke OPs","Set Nuke OP Count (max)",5) as num|null + if(src.makeNukeTeam(maxCount)) + message_admins("[key_name(usr)] created a nuke team with [maxCount] operatives") + log_admin("[key_name(usr)] created a nuke team with [maxCount] operatives") else - message_admins("[key_name_admin(usr)] tried to create a nuke team. Unfortunately, there were not enough candidates available.") - log_admin("[key_name(usr)] failed to create a nuke team.") + message_admins("[key_name_admin(usr)] tried to create a nuke team with [maxCount] operatives Unfortunately, there were not enough candidates available.") + log_admin("[key_name(usr)] failed to create a nuke team with [maxCount] operatives.") if("ninja") message_admins("[key_name(usr)] spawned a ninja.") log_admin("[key_name(usr)] spawned a ninja.") diff --git a/code/modules/admin/verbs/one_click_antag.dm b/code/modules/admin/verbs/one_click_antag.dm index 5d741f3fb45d0..5e452111fb847 100644 --- a/code/modules/admin/verbs/one_click_antag.dm +++ b/code/modules/admin/verbs/one_click_antag.dm @@ -46,7 +46,7 @@ return !is_banned_from(applicant.ckey, list(targetrole, ROLE_SYNDICATE)) -/datum/admins/proc/makeTraitors() +/datum/admins/proc/makeTraitors(maxCount = 3) var/datum/game_mode/traitor/temp = new if(CONFIG_GET(flag/protect_roles_from_antagonist)) @@ -65,7 +65,7 @@ candidates += applicant if(candidates.len) - var/numTraitors = min(candidates.len, 3) + var/numTraitors = min(candidates.len, maxCount) for(var/i = 0, i