diff --git a/code/__DEFINES/antagonists.dm b/code/__DEFINES/antagonists.dm
new file mode 100644
index 00000000000..c82404fd002
--- /dev/null
+++ b/code/__DEFINES/antagonists.dm
@@ -0,0 +1,14 @@
+#define NUKE_RESULT_FLUKE 0
+#define NUKE_RESULT_NUKE_WIN 1
+#define NUKE_RESULT_CREW_WIN 2
+#define NUKE_RESULT_CREW_WIN_SYNDIES_DEAD 3
+#define NUKE_RESULT_DISK_LOST 4
+#define NUKE_RESULT_DISK_STOLEN 5
+#define NUKE_RESULT_NOSURVIVORS 6
+#define NUKE_RESULT_WRONG_STATION 7
+#define NUKE_RESULT_WRONG_STATION_DEAD 8
+
+#define APPRENTICE_DESTRUCTION "destruction"
+#define APPRENTICE_BLUESPACE "bluespace"
+#define APPRENTICE_ROBELESS "robeless"
+#define APPRENTICE_HEALING "healing"
\ No newline at end of file
diff --git a/code/game/gamemodes/miniantags/abduction/abduction.dm b/code/game/gamemodes/miniantags/abduction/abduction.dm
deleted file mode 100644
index cb8c51fd834..00000000000
--- a/code/game/gamemodes/miniantags/abduction/abduction.dm
+++ /dev/null
@@ -1,37 +0,0 @@
-/datum/game_mode
- var/list/datum/mind/abductors = list()
-
-// LANDMARKS
-/obj/effect/landmark/abductor
- var/team_number = 1
-
-/obj/effect/landmark/abductor/agent
- icon_state = "abductor_agent"
-/obj/effect/landmark/abductor/scientist
- icon_state = "abductor"
-
-// OBJECTIVES
-/datum/objective/experiment
- target_amount = 6
-
-/datum/objective/experiment/New()
- explanation_text = "Experiment on [target_amount] humans."
-
-/datum/objective/experiment/check_completion()
- for(var/obj/machinery/abductor/experiment/E in GLOB.machines)
- if(!istype(team, /datum/team/abductor_team))
- return FALSE
- var/datum/team/abductor_team/T = team
- if(E.team_number == T.team_number)
- return E.points >= target_amount
- return FALSE
-
-/datum/game_mode/proc/update_abductor_icons_added(datum/mind/alien_mind)
- var/datum/atom_hud/antag/hud = GLOB.huds[ANTAG_HUD_ABDUCTOR]
- hud.join_hud(alien_mind.current)
- set_antag_hud(alien_mind.current, ((alien_mind in abductors) ? "abductor" : "abductee"))
-
-/datum/game_mode/proc/update_abductor_icons_removed(datum/mind/alien_mind)
- var/datum/atom_hud/antag/hud = GLOB.huds[ANTAG_HUD_ABDUCTOR]
- hud.leave_hud(alien_mind.current)
- set_antag_hud(alien_mind.current, null)
\ No newline at end of file
diff --git a/code/game/gamemodes/miniantags/readme.txt b/code/game/gamemodes/miniantags/readme.txt
deleted file mode 100644
index 8ade34bf2e0..00000000000
--- a/code/game/gamemodes/miniantags/readme.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-This folder contains all "mini-antagonists" - antagonists that can still spice up the round but aren't enough to be a roundtype in their own right.
-Currently, that list consists of:
- -Abductors
- -Swarmers
- -Prophets of sin
- -The Jungle Fever virus (infected monkey bites human, human becomes another infected monkey)
- -Morphs
- -Sintouched crewmembers
- -Slaughter demons
- -Umbras (formerly revenants)
-Please update this if you add another mini-antagonist.
diff --git a/code/game/gamemodes/miniantags/monkey/monkey.dm b/code/game/gamemodes/monkey/monkey.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/monkey/monkey.dm
rename to code/game/gamemodes/monkey/monkey.dm
diff --git a/code/game/gamemodes/nuclear/nuclear.dm b/code/game/gamemodes/nuclear/nuclear.dm
index f131046cacb..5451de3d5c2 100644
--- a/code/game/gamemodes/nuclear/nuclear.dm
+++ b/code/game/gamemodes/nuclear/nuclear.dm
@@ -52,7 +52,7 @@
return ..()
/datum/game_mode/proc/are_operatives_dead()
- for(var/datum/mind/operative_mind in get_antagonists(/datum/antagonist/nukeop))
+ for(var/datum/mind/operative_mind in get_antag_minds(/datum/antagonist/nukeop))
if(ishuman(operative_mind.current) && (operative_mind.current.stat != DEAD))
return FALSE
return TRUE
diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm
index 4b147e94463..81e52c35111 100644
--- a/code/game/gamemodes/objective.dm
+++ b/code/game/gamemodes/objective.dm
@@ -687,7 +687,7 @@ GLOBAL_LIST_EMPTY(possible_items_special)
if("Chief Medical Officer")
department_string = "medical"
- var/list/lings = get_antagonists(/datum/antagonist/changeling,TRUE)
+ var/list/lings = get_antag_minds(/datum/antagonist/changeling,TRUE)
var/ling_count = lings.len
for(var/datum/mind/M in SSticker.minds)
@@ -715,7 +715,7 @@ GLOBAL_LIST_EMPTY(possible_items_special)
//Needed heads is between min_lings and the maximum possible amount of command roles
//So at the time of writing, rand(3,6), it's also capped by the amount of lings there are
//Because you can't fill 6 head roles with 3 lings
- var/list/lings = get_antagonists(/datum/antagonist/changeling,TRUE)
+ var/list/lings = get_antag_minds(/datum/antagonist/changeling,TRUE)
var/needed_heads = rand(min_lings,GLOB.command_positions.len)
needed_heads = min(lings.len,needed_heads)
@@ -792,7 +792,7 @@ GLOBAL_LIST_EMPTY(possible_items_special)
//Check each staff member has been replaced, by cross referencing changeling minds, changeling current dna, the staff minds and their original DNA names
var/success = 0
changelings:
- for(var/datum/mind/changeling in get_antagonists(/datum/antagonist/changeling,TRUE))
+ for(var/datum/mind/changeling in get_antag_minds(/datum/antagonist/changeling,TRUE))
if(success >= department_minds.len) //We did it, stop here!
return TRUE
if(ishuman(changeling.current))
diff --git a/code/game/machinery/computer/telecrystalconsoles.dm b/code/game/machinery/computer/telecrystalconsoles.dm
index 08210bf7067..283232f9910 100644
--- a/code/game/machinery/computer/telecrystalconsoles.dm
+++ b/code/game/machinery/computer/telecrystalconsoles.dm
@@ -154,7 +154,7 @@ GLOBAL_LIST_INIT(possible_uplinker_IDs, list("Alfa","Bravo","Charlie","Delta","E
/obj/machinery/computer/telecrystals/boss/proc/getDangerous()//This scales the TC assigned with the round population.
..()
- var/list/nukeops = get_antagonists(/datum/antagonist/nukeop)
+ var/list/nukeops = get_antag_minds(/datum/antagonist/nukeop)
var/danger = GLOB.joined_player_list.len - nukeops.len
danger = CEILING(danger, 10)
scaleTC(danger)
diff --git a/code/datums/antagonists/antag_datum.dm b/code/modules/antagonists/_common/antag_datum.dm
similarity index 96%
rename from code/datums/antagonists/antag_datum.dm
rename to code/modules/antagonists/_common/antag_datum.dm
index 6140dc67978..7d090bfd636 100644
--- a/code/datums/antagonists/antag_datum.dm
+++ b/code/modules/antagonists/_common/antag_datum.dm
@@ -201,15 +201,6 @@ GLOBAL_LIST_EMPTY(antagonists)
return
antag_memory = new_memo
-//Should probably be on ticker or job ss ?
-/proc/get_antagonists(antag_type,specific = FALSE)
- . = list()
- for(var/datum/antagonist/A in GLOB.antagonists)
- if(!A.owner)
- continue
- if(!antag_type || !specific && istype(A,antag_type) || specific && A.type == antag_type)
- . += A.owner
-
//This datum will autofill the name with special_role
//Used as placeholder for minor antagonists, please create proper datums for these
/datum/antagonist/auto_custom
diff --git a/code/modules/antagonists/_common/antag_helpers.dm b/code/modules/antagonists/_common/antag_helpers.dm
new file mode 100644
index 00000000000..d99920b9e21
--- /dev/null
+++ b/code/modules/antagonists/_common/antag_helpers.dm
@@ -0,0 +1,19 @@
+//Returns MINDS of the assigned antags of given type/subtypes
+/proc/get_antag_minds(antag_type,specific = FALSE)
+ . = list()
+ for(var/datum/antagonist/A in GLOB.antagonists)
+ if(!A.owner)
+ continue
+ if(!antag_type || !specific && istype(A,antag_type) || specific && A.type == antag_type)
+ . += A.owner
+
+//Get all teams [of type team_type]
+/proc/get_all_teams(team_type)
+ . = list()
+ for(var/V in GLOB.antagonists)
+ var/datum/antagonist/A = V
+ if(!A.owner)
+ continue
+ var/datum/team/T = A.get_team()
+ if(!team_type || istype(T,team_type))
+ . |= T
\ No newline at end of file
diff --git a/code/game/gamemodes/antag_hud.dm b/code/modules/antagonists/_common/antag_hud.dm
similarity index 100%
rename from code/game/gamemodes/antag_hud.dm
rename to code/modules/antagonists/_common/antag_hud.dm
diff --git a/code/game/gamemodes/antag_spawner.dm b/code/modules/antagonists/_common/antag_spawner.dm
similarity index 100%
rename from code/game/gamemodes/antag_spawner.dm
rename to code/modules/antagonists/_common/antag_spawner.dm
diff --git a/code/game/gamemodes/antag_team.dm b/code/modules/antagonists/_common/antag_team.dm
similarity index 74%
rename from code/game/gamemodes/antag_team.dm
rename to code/modules/antagonists/_common/antag_team.dm
index 56ca7c76e22..c458b5a9fb6 100644
--- a/code/game/gamemodes/antag_team.dm
+++ b/code/modules/antagonists/_common/antag_team.dm
@@ -32,15 +32,3 @@
report += printplayerlist(members)
return report.Join("
")
-
-//Get all teams [of type team_type]
-//TODO move these to some antag helpers file with get_antagonists
-/proc/get_all_teams(team_type)
- . = list()
- for(var/V in GLOB.antagonists)
- var/datum/antagonist/A = V
- if(!A.owner)
- continue
- var/datum/team/T = A.get_team()
- if(!team_type || istype(T,team_type))
- . |= T
diff --git a/code/game/gamemodes/miniantags/abduction/abductee_objectives.dm b/code/modules/antagonists/abductor/abductee/abductee_objectives.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/abduction/abductee_objectives.dm
rename to code/modules/antagonists/abductor/abductee/abductee_objectives.dm
diff --git a/code/datums/antagonists/abductor.dm b/code/modules/antagonists/abductor/abductor.dm
similarity index 81%
rename from code/datums/antagonists/abductor.dm
rename to code/modules/antagonists/abductor/abductor.dm
index fde8d0059b6..35264af67c4 100644
--- a/code/datums/antagonists/abductor.dm
+++ b/code/modules/antagonists/abductor/abductor.dm
@@ -40,7 +40,6 @@
return team
/datum/antagonist/abductor/on_gain()
- SSticker.mode.abductors += owner
owner.special_role = "[name] [sub_role]"
owner.assigned_role = "[name] [sub_role]"
owner.objectives += team.objectives
@@ -48,7 +47,6 @@
return ..()
/datum/antagonist/abductor/on_removal()
- SSticker.mode.abductors -= owner
owner.objectives -= team.objectives
if(owner.current)
to_chat(owner.current,"You are no longer the [owner.special_role]!")
@@ -74,7 +72,7 @@
H.forceMove(LM.loc)
break
- SSticker.mode.update_abductor_icons_added(owner)
+ update_abductor_icons_added(owner,"abductor")
/datum/antagonist/abductor/scientist/finalize_abductor()
..()
@@ -176,7 +174,43 @@
owner.objectives += objectives
/datum/antagonist/abductee/apply_innate_effects(mob/living/mob_override)
- SSticker.mode.update_abductor_icons_added(mob_override ? mob_override.mind : owner)
+ update_abductor_icons_added(mob_override ? mob_override.mind : owner,"abductee")
/datum/antagonist/abductee/remove_innate_effects(mob/living/mob_override)
- SSticker.mode.update_abductor_icons_removed(mob_override ? mob_override.mind : owner)
\ No newline at end of file
+ update_abductor_icons_removed(mob_override ? mob_override.mind : owner)
+
+
+// LANDMARKS
+/obj/effect/landmark/abductor
+ var/team_number = 1
+
+/obj/effect/landmark/abductor/agent
+ icon_state = "abductor_agent"
+/obj/effect/landmark/abductor/scientist
+ icon_state = "abductor"
+
+// OBJECTIVES
+/datum/objective/experiment
+ target_amount = 6
+
+/datum/objective/experiment/New()
+ explanation_text = "Experiment on [target_amount] humans."
+
+/datum/objective/experiment/check_completion()
+ for(var/obj/machinery/abductor/experiment/E in GLOB.machines)
+ if(!istype(team, /datum/team/abductor_team))
+ return FALSE
+ var/datum/team/abductor_team/T = team
+ if(E.team_number == T.team_number)
+ return E.points >= target_amount
+ return FALSE
+
+/datum/antagonist/proc/update_abductor_icons_added(datum/mind/alien_mind,hud_type)
+ var/datum/atom_hud/antag/hud = GLOB.huds[ANTAG_HUD_ABDUCTOR]
+ hud.join_hud(alien_mind.current)
+ set_antag_hud(alien_mind.current, hud_type)
+
+/datum/antagonist/proc/update_abductor_icons_removed(datum/mind/alien_mind)
+ var/datum/atom_hud/antag/hud = GLOB.huds[ANTAG_HUD_ABDUCTOR]
+ hud.leave_hud(alien_mind.current)
+ set_antag_hud(alien_mind.current, null)
\ No newline at end of file
diff --git a/code/game/gamemodes/miniantags/abduction/abduction_gear.dm b/code/modules/antagonists/abductor/equipment/abduction_gear.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/abduction/abduction_gear.dm
rename to code/modules/antagonists/abductor/equipment/abduction_gear.dm
diff --git a/code/game/gamemodes/miniantags/abduction/abduction_outfits.dm b/code/modules/antagonists/abductor/equipment/abduction_outfits.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/abduction/abduction_outfits.dm
rename to code/modules/antagonists/abductor/equipment/abduction_outfits.dm
diff --git a/code/game/gamemodes/miniantags/abduction/abduction_surgery.dm b/code/modules/antagonists/abductor/equipment/abduction_surgery.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/abduction/abduction_surgery.dm
rename to code/modules/antagonists/abductor/equipment/abduction_surgery.dm
diff --git a/code/game/gamemodes/miniantags/abduction/gland.dm b/code/modules/antagonists/abductor/equipment/gland.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/abduction/gland.dm
rename to code/modules/antagonists/abductor/equipment/gland.dm
diff --git a/code/game/gamemodes/miniantags/abduction/machinery/camera.dm b/code/modules/antagonists/abductor/machinery/camera.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/abduction/machinery/camera.dm
rename to code/modules/antagonists/abductor/machinery/camera.dm
diff --git a/code/game/gamemodes/miniantags/abduction/machinery/console.dm b/code/modules/antagonists/abductor/machinery/console.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/abduction/machinery/console.dm
rename to code/modules/antagonists/abductor/machinery/console.dm
diff --git a/code/game/gamemodes/miniantags/abduction/machinery/dispenser.dm b/code/modules/antagonists/abductor/machinery/dispenser.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/abduction/machinery/dispenser.dm
rename to code/modules/antagonists/abductor/machinery/dispenser.dm
diff --git a/code/game/gamemodes/miniantags/abduction/machinery/experiment.dm b/code/modules/antagonists/abductor/machinery/experiment.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/abduction/machinery/experiment.dm
rename to code/modules/antagonists/abductor/machinery/experiment.dm
diff --git a/code/game/gamemodes/miniantags/abduction/machinery/pad.dm b/code/modules/antagonists/abductor/machinery/pad.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/abduction/machinery/pad.dm
rename to code/modules/antagonists/abductor/machinery/pad.dm
diff --git a/code/datums/antagonists/blob.dm b/code/modules/antagonists/blob/blob.dm
similarity index 100%
rename from code/datums/antagonists/blob.dm
rename to code/modules/antagonists/blob/blob.dm
diff --git a/code/game/gamemodes/blob/blob_report.dm b/code/modules/antagonists/blob/blob/blob_report.dm
similarity index 100%
rename from code/game/gamemodes/blob/blob_report.dm
rename to code/modules/antagonists/blob/blob/blob_report.dm
diff --git a/code/game/gamemodes/blob/blobs/blob_mobs.dm b/code/modules/antagonists/blob/blob/blobs/blob_mobs.dm
similarity index 100%
rename from code/game/gamemodes/blob/blobs/blob_mobs.dm
rename to code/modules/antagonists/blob/blob/blobs/blob_mobs.dm
diff --git a/code/game/gamemodes/blob/blobs/core.dm b/code/modules/antagonists/blob/blob/blobs/core.dm
similarity index 100%
rename from code/game/gamemodes/blob/blobs/core.dm
rename to code/modules/antagonists/blob/blob/blobs/core.dm
diff --git a/code/game/gamemodes/blob/blobs/factory.dm b/code/modules/antagonists/blob/blob/blobs/factory.dm
similarity index 100%
rename from code/game/gamemodes/blob/blobs/factory.dm
rename to code/modules/antagonists/blob/blob/blobs/factory.dm
diff --git a/code/game/gamemodes/blob/blobs/node.dm b/code/modules/antagonists/blob/blob/blobs/node.dm
similarity index 100%
rename from code/game/gamemodes/blob/blobs/node.dm
rename to code/modules/antagonists/blob/blob/blobs/node.dm
diff --git a/code/game/gamemodes/blob/blobs/resource.dm b/code/modules/antagonists/blob/blob/blobs/resource.dm
similarity index 100%
rename from code/game/gamemodes/blob/blobs/resource.dm
rename to code/modules/antagonists/blob/blob/blobs/resource.dm
diff --git a/code/game/gamemodes/blob/blobs/shield.dm b/code/modules/antagonists/blob/blob/blobs/shield.dm
similarity index 100%
rename from code/game/gamemodes/blob/blobs/shield.dm
rename to code/modules/antagonists/blob/blob/blobs/shield.dm
diff --git a/code/game/gamemodes/blob/overmind.dm b/code/modules/antagonists/blob/blob/overmind.dm
similarity index 100%
rename from code/game/gamemodes/blob/overmind.dm
rename to code/modules/antagonists/blob/blob/overmind.dm
diff --git a/code/game/gamemodes/blob/powers.dm b/code/modules/antagonists/blob/blob/powers.dm
similarity index 100%
rename from code/game/gamemodes/blob/powers.dm
rename to code/modules/antagonists/blob/blob/powers.dm
diff --git a/code/game/gamemodes/blob/theblob.dm b/code/modules/antagonists/blob/blob/theblob.dm
similarity index 100%
rename from code/game/gamemodes/blob/theblob.dm
rename to code/modules/antagonists/blob/blob/theblob.dm
diff --git a/code/datums/antagonists/brother.dm b/code/modules/antagonists/brother/brother.dm
similarity index 100%
rename from code/datums/antagonists/brother.dm
rename to code/modules/antagonists/brother/brother.dm
diff --git a/code/game/gamemodes/changeling/cellular_emporium.dm b/code/modules/antagonists/changeling/cellular_emporium.dm
similarity index 100%
rename from code/game/gamemodes/changeling/cellular_emporium.dm
rename to code/modules/antagonists/changeling/cellular_emporium.dm
diff --git a/code/datums/antagonists/changeling.dm b/code/modules/antagonists/changeling/changeling.dm
similarity index 100%
rename from code/datums/antagonists/changeling.dm
rename to code/modules/antagonists/changeling/changeling.dm
diff --git a/code/game/gamemodes/changeling/changeling_power.dm b/code/modules/antagonists/changeling/changeling_power.dm
similarity index 100%
rename from code/game/gamemodes/changeling/changeling_power.dm
rename to code/modules/antagonists/changeling/changeling_power.dm
diff --git a/code/game/gamemodes/changeling/powers/absorb.dm b/code/modules/antagonists/changeling/powers/absorb.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/absorb.dm
rename to code/modules/antagonists/changeling/powers/absorb.dm
diff --git a/code/game/gamemodes/changeling/powers/adrenaline.dm b/code/modules/antagonists/changeling/powers/adrenaline.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/adrenaline.dm
rename to code/modules/antagonists/changeling/powers/adrenaline.dm
diff --git a/code/game/gamemodes/changeling/powers/augmented_eyesight.dm b/code/modules/antagonists/changeling/powers/augmented_eyesight.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/augmented_eyesight.dm
rename to code/modules/antagonists/changeling/powers/augmented_eyesight.dm
diff --git a/code/game/gamemodes/changeling/powers/biodegrade.dm b/code/modules/antagonists/changeling/powers/biodegrade.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/biodegrade.dm
rename to code/modules/antagonists/changeling/powers/biodegrade.dm
diff --git a/code/game/gamemodes/changeling/powers/chameleon_skin.dm b/code/modules/antagonists/changeling/powers/chameleon_skin.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/chameleon_skin.dm
rename to code/modules/antagonists/changeling/powers/chameleon_skin.dm
diff --git a/code/game/gamemodes/changeling/powers/digitalcamo.dm b/code/modules/antagonists/changeling/powers/digitalcamo.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/digitalcamo.dm
rename to code/modules/antagonists/changeling/powers/digitalcamo.dm
diff --git a/code/game/gamemodes/changeling/powers/fakedeath.dm b/code/modules/antagonists/changeling/powers/fakedeath.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/fakedeath.dm
rename to code/modules/antagonists/changeling/powers/fakedeath.dm
diff --git a/code/game/gamemodes/changeling/powers/fleshmend.dm b/code/modules/antagonists/changeling/powers/fleshmend.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/fleshmend.dm
rename to code/modules/antagonists/changeling/powers/fleshmend.dm
diff --git a/code/game/gamemodes/changeling/powers/headcrab.dm b/code/modules/antagonists/changeling/powers/headcrab.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/headcrab.dm
rename to code/modules/antagonists/changeling/powers/headcrab.dm
diff --git a/code/game/gamemodes/changeling/powers/hivemind.dm b/code/modules/antagonists/changeling/powers/hivemind.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/hivemind.dm
rename to code/modules/antagonists/changeling/powers/hivemind.dm
diff --git a/code/game/gamemodes/changeling/powers/humanform.dm b/code/modules/antagonists/changeling/powers/humanform.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/humanform.dm
rename to code/modules/antagonists/changeling/powers/humanform.dm
diff --git a/code/game/gamemodes/changeling/powers/lesserform.dm b/code/modules/antagonists/changeling/powers/lesserform.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/lesserform.dm
rename to code/modules/antagonists/changeling/powers/lesserform.dm
diff --git a/code/game/gamemodes/changeling/powers/linglink.dm b/code/modules/antagonists/changeling/powers/linglink.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/linglink.dm
rename to code/modules/antagonists/changeling/powers/linglink.dm
diff --git a/code/game/gamemodes/changeling/powers/mimic_voice.dm b/code/modules/antagonists/changeling/powers/mimic_voice.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/mimic_voice.dm
rename to code/modules/antagonists/changeling/powers/mimic_voice.dm
diff --git a/code/game/gamemodes/changeling/powers/mutations.dm b/code/modules/antagonists/changeling/powers/mutations.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/mutations.dm
rename to code/modules/antagonists/changeling/powers/mutations.dm
diff --git a/code/game/gamemodes/changeling/powers/panacea.dm b/code/modules/antagonists/changeling/powers/panacea.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/panacea.dm
rename to code/modules/antagonists/changeling/powers/panacea.dm
diff --git a/code/game/gamemodes/changeling/powers/regenerate.dm b/code/modules/antagonists/changeling/powers/regenerate.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/regenerate.dm
rename to code/modules/antagonists/changeling/powers/regenerate.dm
diff --git a/code/game/gamemodes/changeling/powers/revive.dm b/code/modules/antagonists/changeling/powers/revive.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/revive.dm
rename to code/modules/antagonists/changeling/powers/revive.dm
diff --git a/code/game/gamemodes/changeling/powers/shriek.dm b/code/modules/antagonists/changeling/powers/shriek.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/shriek.dm
rename to code/modules/antagonists/changeling/powers/shriek.dm
diff --git a/code/game/gamemodes/changeling/powers/spiders.dm b/code/modules/antagonists/changeling/powers/spiders.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/spiders.dm
rename to code/modules/antagonists/changeling/powers/spiders.dm
diff --git a/code/game/gamemodes/changeling/powers/strained_muscles.dm b/code/modules/antagonists/changeling/powers/strained_muscles.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/strained_muscles.dm
rename to code/modules/antagonists/changeling/powers/strained_muscles.dm
diff --git a/code/game/gamemodes/changeling/powers/tiny_prick.dm b/code/modules/antagonists/changeling/powers/tiny_prick.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/tiny_prick.dm
rename to code/modules/antagonists/changeling/powers/tiny_prick.dm
diff --git a/code/game/gamemodes/changeling/powers/transform.dm b/code/modules/antagonists/changeling/powers/transform.dm
similarity index 100%
rename from code/game/gamemodes/changeling/powers/transform.dm
rename to code/modules/antagonists/changeling/powers/transform.dm
diff --git a/code/game/gamemodes/clock_cult/clock_effect.dm b/code/modules/antagonists/clockcult/clock_effect.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_effect.dm
rename to code/modules/antagonists/clockcult/clock_effect.dm
diff --git a/code/game/gamemodes/clock_cult/clock_effects/city_of_cogs_rift.dm b/code/modules/antagonists/clockcult/clock_effects/city_of_cogs_rift.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_effects/city_of_cogs_rift.dm
rename to code/modules/antagonists/clockcult/clock_effects/city_of_cogs_rift.dm
diff --git a/code/game/gamemodes/clock_cult/clock_effects/clock_overlay.dm b/code/modules/antagonists/clockcult/clock_effects/clock_overlay.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_effects/clock_overlay.dm
rename to code/modules/antagonists/clockcult/clock_effects/clock_overlay.dm
diff --git a/code/game/gamemodes/clock_cult/clock_effects/clock_sigils.dm b/code/modules/antagonists/clockcult/clock_effects/clock_sigils.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_effects/clock_sigils.dm
rename to code/modules/antagonists/clockcult/clock_effects/clock_sigils.dm
diff --git a/code/game/gamemodes/clock_cult/clock_effects/general_markers.dm b/code/modules/antagonists/clockcult/clock_effects/general_markers.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_effects/general_markers.dm
rename to code/modules/antagonists/clockcult/clock_effects/general_markers.dm
diff --git a/code/game/gamemodes/clock_cult/clock_effects/servant_blocker.dm b/code/modules/antagonists/clockcult/clock_effects/servant_blocker.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_effects/servant_blocker.dm
rename to code/modules/antagonists/clockcult/clock_effects/servant_blocker.dm
diff --git a/code/game/gamemodes/clock_cult/clock_effects/spatial_gateway.dm b/code/modules/antagonists/clockcult/clock_effects/spatial_gateway.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_effects/spatial_gateway.dm
rename to code/modules/antagonists/clockcult/clock_effects/spatial_gateway.dm
diff --git a/code/game/gamemodes/clock_cult/clock_helpers/clock_powerdrain.dm b/code/modules/antagonists/clockcult/clock_helpers/clock_powerdrain.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_helpers/clock_powerdrain.dm
rename to code/modules/antagonists/clockcult/clock_helpers/clock_powerdrain.dm
diff --git a/code/game/gamemodes/clock_cult/clock_helpers/component_helpers.dm b/code/modules/antagonists/clockcult/clock_helpers/component_helpers.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_helpers/component_helpers.dm
rename to code/modules/antagonists/clockcult/clock_helpers/component_helpers.dm
diff --git a/code/game/gamemodes/clock_cult/clock_helpers/fabrication_helpers.dm b/code/modules/antagonists/clockcult/clock_helpers/fabrication_helpers.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_helpers/fabrication_helpers.dm
rename to code/modules/antagonists/clockcult/clock_helpers/fabrication_helpers.dm
diff --git a/code/game/gamemodes/clock_cult/clock_helpers/hierophant_network.dm b/code/modules/antagonists/clockcult/clock_helpers/hierophant_network.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_helpers/hierophant_network.dm
rename to code/modules/antagonists/clockcult/clock_helpers/hierophant_network.dm
diff --git a/code/game/gamemodes/clock_cult/clock_helpers/power_helpers.dm b/code/modules/antagonists/clockcult/clock_helpers/power_helpers.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_helpers/power_helpers.dm
rename to code/modules/antagonists/clockcult/clock_helpers/power_helpers.dm
diff --git a/code/game/gamemodes/clock_cult/clock_helpers/ratvarian_language.dm b/code/modules/antagonists/clockcult/clock_helpers/ratvarian_language.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_helpers/ratvarian_language.dm
rename to code/modules/antagonists/clockcult/clock_helpers/ratvarian_language.dm
diff --git a/code/game/gamemodes/clock_cult/clock_helpers/scripture_checks.dm b/code/modules/antagonists/clockcult/clock_helpers/scripture_checks.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_helpers/scripture_checks.dm
rename to code/modules/antagonists/clockcult/clock_helpers/scripture_checks.dm
diff --git a/code/game/gamemodes/clock_cult/clock_helpers/slab_abilities.dm b/code/modules/antagonists/clockcult/clock_helpers/slab_abilities.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_helpers/slab_abilities.dm
rename to code/modules/antagonists/clockcult/clock_helpers/slab_abilities.dm
diff --git a/code/game/gamemodes/clock_cult/clock_item.dm b/code/modules/antagonists/clockcult/clock_item.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_item.dm
rename to code/modules/antagonists/clockcult/clock_item.dm
diff --git a/code/game/gamemodes/clock_cult/clock_items/clock_components.dm b/code/modules/antagonists/clockcult/clock_items/clock_components.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_items/clock_components.dm
rename to code/modules/antagonists/clockcult/clock_items/clock_components.dm
diff --git a/code/game/gamemodes/clock_cult/clock_items/clock_weapons/_call_weapon.dm b/code/modules/antagonists/clockcult/clock_items/clock_weapons/_call_weapon.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_items/clock_weapons/_call_weapon.dm
rename to code/modules/antagonists/clockcult/clock_items/clock_weapons/_call_weapon.dm
diff --git a/code/game/gamemodes/clock_cult/clock_items/clock_weapons/ratvarian_spear.dm b/code/modules/antagonists/clockcult/clock_items/clock_weapons/ratvarian_spear.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_items/clock_weapons/ratvarian_spear.dm
rename to code/modules/antagonists/clockcult/clock_items/clock_weapons/ratvarian_spear.dm
diff --git a/code/game/gamemodes/clock_cult/clock_items/clockwork_armor.dm b/code/modules/antagonists/clockcult/clock_items/clockwork_armor.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_items/clockwork_armor.dm
rename to code/modules/antagonists/clockcult/clock_items/clockwork_armor.dm
diff --git a/code/game/gamemodes/clock_cult/clock_items/clockwork_slab.dm b/code/modules/antagonists/clockcult/clock_items/clockwork_slab.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_items/clockwork_slab.dm
rename to code/modules/antagonists/clockcult/clock_items/clockwork_slab.dm
diff --git a/code/game/gamemodes/clock_cult/clock_items/clockwork_weaponry.dm b/code/modules/antagonists/clockcult/clock_items/clockwork_weaponry.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_items/clockwork_weaponry.dm
rename to code/modules/antagonists/clockcult/clock_items/clockwork_weaponry.dm
diff --git a/code/game/gamemodes/clock_cult/clock_items/construct_chassis.dm b/code/modules/antagonists/clockcult/clock_items/construct_chassis.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_items/construct_chassis.dm
rename to code/modules/antagonists/clockcult/clock_items/construct_chassis.dm
diff --git a/code/game/gamemodes/clock_cult/clock_items/integration_cog.dm b/code/modules/antagonists/clockcult/clock_items/integration_cog.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_items/integration_cog.dm
rename to code/modules/antagonists/clockcult/clock_items/integration_cog.dm
diff --git a/code/game/gamemodes/clock_cult/clock_items/judicial_visor.dm b/code/modules/antagonists/clockcult/clock_items/judicial_visor.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_items/judicial_visor.dm
rename to code/modules/antagonists/clockcult/clock_items/judicial_visor.dm
diff --git a/code/game/gamemodes/clock_cult/clock_items/replica_fabricator.dm b/code/modules/antagonists/clockcult/clock_items/replica_fabricator.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_items/replica_fabricator.dm
rename to code/modules/antagonists/clockcult/clock_items/replica_fabricator.dm
diff --git a/code/game/gamemodes/clock_cult/clock_items/soul_vessel.dm b/code/modules/antagonists/clockcult/clock_items/soul_vessel.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_items/soul_vessel.dm
rename to code/modules/antagonists/clockcult/clock_items/soul_vessel.dm
diff --git a/code/game/gamemodes/clock_cult/clock_items/wraith_spectacles.dm b/code/modules/antagonists/clockcult/clock_items/wraith_spectacles.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_items/wraith_spectacles.dm
rename to code/modules/antagonists/clockcult/clock_items/wraith_spectacles.dm
diff --git a/code/game/gamemodes/clock_cult/clock_mobs.dm b/code/modules/antagonists/clockcult/clock_mobs.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_mobs.dm
rename to code/modules/antagonists/clockcult/clock_mobs.dm
diff --git a/code/game/gamemodes/clock_cult/clock_mobs/_eminence.dm b/code/modules/antagonists/clockcult/clock_mobs/_eminence.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_mobs/_eminence.dm
rename to code/modules/antagonists/clockcult/clock_mobs/_eminence.dm
diff --git a/code/game/gamemodes/clock_cult/clock_mobs/clockwork_marauder.dm b/code/modules/antagonists/clockcult/clock_mobs/clockwork_marauder.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_mobs/clockwork_marauder.dm
rename to code/modules/antagonists/clockcult/clock_mobs/clockwork_marauder.dm
diff --git a/code/game/gamemodes/clock_cult/clock_scripture.dm b/code/modules/antagonists/clockcult/clock_scripture.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_scripture.dm
rename to code/modules/antagonists/clockcult/clock_scripture.dm
diff --git a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_applications.dm b/code/modules/antagonists/clockcult/clock_scriptures/scripture_applications.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_scriptures/scripture_applications.dm
rename to code/modules/antagonists/clockcult/clock_scriptures/scripture_applications.dm
diff --git a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_cyborg.dm b/code/modules/antagonists/clockcult/clock_scriptures/scripture_cyborg.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_scriptures/scripture_cyborg.dm
rename to code/modules/antagonists/clockcult/clock_scriptures/scripture_cyborg.dm
diff --git a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_drivers.dm b/code/modules/antagonists/clockcult/clock_scriptures/scripture_drivers.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_scriptures/scripture_drivers.dm
rename to code/modules/antagonists/clockcult/clock_scriptures/scripture_drivers.dm
diff --git a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_scripts.dm b/code/modules/antagonists/clockcult/clock_scriptures/scripture_scripts.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_scriptures/scripture_scripts.dm
rename to code/modules/antagonists/clockcult/clock_scriptures/scripture_scripts.dm
diff --git a/code/game/gamemodes/clock_cult/clock_structure.dm b/code/modules/antagonists/clockcult/clock_structure.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_structure.dm
rename to code/modules/antagonists/clockcult/clock_structure.dm
diff --git a/code/game/gamemodes/clock_cult/clock_structures/_trap_object.dm b/code/modules/antagonists/clockcult/clock_structures/_trap_object.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_structures/_trap_object.dm
rename to code/modules/antagonists/clockcult/clock_structures/_trap_object.dm
diff --git a/code/game/gamemodes/clock_cult/clock_structures/ark_of_the_clockwork_justicar.dm b/code/modules/antagonists/clockcult/clock_structures/ark_of_the_clockwork_justicar.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_structures/ark_of_the_clockwork_justicar.dm
rename to code/modules/antagonists/clockcult/clock_structures/ark_of_the_clockwork_justicar.dm
diff --git a/code/game/gamemodes/clock_cult/clock_structures/clockwork_obelisk.dm b/code/modules/antagonists/clockcult/clock_structures/clockwork_obelisk.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_structures/clockwork_obelisk.dm
rename to code/modules/antagonists/clockcult/clock_structures/clockwork_obelisk.dm
diff --git a/code/game/gamemodes/clock_cult/clock_structures/eminence_spire.dm b/code/modules/antagonists/clockcult/clock_structures/eminence_spire.dm
similarity index 94%
rename from code/game/gamemodes/clock_cult/clock_structures/eminence_spire.dm
rename to code/modules/antagonists/clockcult/clock_structures/eminence_spire.dm
index ef035234d00..753a82fccb3 100644
--- a/code/game/gamemodes/clock_cult/clock_structures/eminence_spire.dm
+++ b/code/modules/antagonists/clockcult/clock_structures/eminence_spire.dm
@@ -46,10 +46,12 @@
if(!IsAdminGhost(user))
return
- var/datum/antagonist/clockcult/random_cultist = locate() in get_antagonists(/datum/antagonist/clockcult) //if theres no cultists new team without eminence will be created anyway.
- if(random_cultist && random_cultist.clock_team && random_cultist.clock_team.eminence)
- to_chat(user, "There's already an Eminence - too late!")
- return
+ var/datum/mind/rando = locate() in get_antag_minds(/datum/antagonist/clockcult) //if theres no cultists new team without eminence will be created anyway.
+ if(rando)
+ var/datum/antagonist/clockcult/random_cultist = rando.has_antag_datum(/datum/antagonist/clockcult)
+ if(random_cultist && random_cultist.clock_team && random_cultist.clock_team.eminence)
+ to_chat(user, "There's already an Eminence - too late!")
+ return
if(!GLOB.servants_active)
to_chat(user, "The Ark must be active first!")
return
diff --git a/code/game/gamemodes/clock_cult/clock_structures/heralds_beacon.dm b/code/modules/antagonists/clockcult/clock_structures/heralds_beacon.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_structures/heralds_beacon.dm
rename to code/modules/antagonists/clockcult/clock_structures/heralds_beacon.dm
diff --git a/code/game/gamemodes/clock_cult/clock_structures/mania_motor.dm b/code/modules/antagonists/clockcult/clock_structures/mania_motor.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_structures/mania_motor.dm
rename to code/modules/antagonists/clockcult/clock_structures/mania_motor.dm
diff --git a/code/game/gamemodes/clock_cult/clock_structures/ocular_warden.dm b/code/modules/antagonists/clockcult/clock_structures/ocular_warden.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_structures/ocular_warden.dm
rename to code/modules/antagonists/clockcult/clock_structures/ocular_warden.dm
diff --git a/code/game/gamemodes/clock_cult/clock_structures/ratvar_the_clockwork_justicar.dm b/code/modules/antagonists/clockcult/clock_structures/ratvar_the_clockwork_justicar.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_structures/ratvar_the_clockwork_justicar.dm
rename to code/modules/antagonists/clockcult/clock_structures/ratvar_the_clockwork_justicar.dm
diff --git a/code/game/gamemodes/clock_cult/clock_structures/stargazer.dm b/code/modules/antagonists/clockcult/clock_structures/stargazer.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_structures/stargazer.dm
rename to code/modules/antagonists/clockcult/clock_structures/stargazer.dm
diff --git a/code/game/gamemodes/clock_cult/clock_structures/taunting_trail.dm b/code/modules/antagonists/clockcult/clock_structures/taunting_trail.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_structures/taunting_trail.dm
rename to code/modules/antagonists/clockcult/clock_structures/taunting_trail.dm
diff --git a/code/game/gamemodes/clock_cult/clock_structures/trap_triggers/lever.dm b/code/modules/antagonists/clockcult/clock_structures/trap_triggers/lever.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_structures/trap_triggers/lever.dm
rename to code/modules/antagonists/clockcult/clock_structures/trap_triggers/lever.dm
diff --git a/code/game/gamemodes/clock_cult/clock_structures/trap_triggers/pressure_sensor.dm b/code/modules/antagonists/clockcult/clock_structures/trap_triggers/pressure_sensor.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_structures/trap_triggers/pressure_sensor.dm
rename to code/modules/antagonists/clockcult/clock_structures/trap_triggers/pressure_sensor.dm
diff --git a/code/game/gamemodes/clock_cult/clock_structures/trap_triggers/repeater.dm b/code/modules/antagonists/clockcult/clock_structures/trap_triggers/repeater.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_structures/trap_triggers/repeater.dm
rename to code/modules/antagonists/clockcult/clock_structures/trap_triggers/repeater.dm
diff --git a/code/game/gamemodes/clock_cult/clock_structures/traps/brass_skewer.dm b/code/modules/antagonists/clockcult/clock_structures/traps/brass_skewer.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_structures/traps/brass_skewer.dm
rename to code/modules/antagonists/clockcult/clock_structures/traps/brass_skewer.dm
diff --git a/code/game/gamemodes/clock_cult/clock_structures/traps/steam_vent.dm b/code/modules/antagonists/clockcult/clock_structures/traps/steam_vent.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_structures/traps/steam_vent.dm
rename to code/modules/antagonists/clockcult/clock_structures/traps/steam_vent.dm
diff --git a/code/game/gamemodes/clock_cult/clock_structures/wall_gear.dm b/code/modules/antagonists/clockcult/clock_structures/wall_gear.dm
similarity index 100%
rename from code/game/gamemodes/clock_cult/clock_structures/wall_gear.dm
rename to code/modules/antagonists/clockcult/clock_structures/wall_gear.dm
diff --git a/code/datums/antagonists/clockcult.dm b/code/modules/antagonists/clockcult/clockcult.dm
similarity index 100%
rename from code/datums/antagonists/clockcult.dm
rename to code/modules/antagonists/clockcult/clockcult.dm
diff --git a/code/datums/antagonists/cult.dm b/code/modules/antagonists/cult/cult.dm
similarity index 100%
rename from code/datums/antagonists/cult.dm
rename to code/modules/antagonists/cult/cult.dm
diff --git a/code/game/gamemodes/cult/cult_comms.dm b/code/modules/antagonists/cult/cult_comms.dm
similarity index 100%
rename from code/game/gamemodes/cult/cult_comms.dm
rename to code/modules/antagonists/cult/cult_comms.dm
diff --git a/code/game/gamemodes/cult/cult_items.dm b/code/modules/antagonists/cult/cult_items.dm
similarity index 100%
rename from code/game/gamemodes/cult/cult_items.dm
rename to code/modules/antagonists/cult/cult_items.dm
diff --git a/code/game/gamemodes/cult/cult_structures.dm b/code/modules/antagonists/cult/cult_structures.dm
similarity index 100%
rename from code/game/gamemodes/cult/cult_structures.dm
rename to code/modules/antagonists/cult/cult_structures.dm
diff --git a/code/game/gamemodes/cult/ritual.dm b/code/modules/antagonists/cult/ritual.dm
similarity index 100%
rename from code/game/gamemodes/cult/ritual.dm
rename to code/modules/antagonists/cult/ritual.dm
diff --git a/code/game/gamemodes/cult/rune_spawn_action.dm b/code/modules/antagonists/cult/rune_spawn_action.dm
similarity index 100%
rename from code/game/gamemodes/cult/rune_spawn_action.dm
rename to code/modules/antagonists/cult/rune_spawn_action.dm
diff --git a/code/game/gamemodes/cult/runes.dm b/code/modules/antagonists/cult/runes.dm
similarity index 100%
rename from code/game/gamemodes/cult/runes.dm
rename to code/modules/antagonists/cult/runes.dm
diff --git a/code/game/gamemodes/cult/supply.dm b/code/modules/antagonists/cult/supply.dm
similarity index 100%
rename from code/game/gamemodes/cult/supply.dm
rename to code/modules/antagonists/cult/supply.dm
diff --git a/code/game/gamemodes/cult/talisman.dm b/code/modules/antagonists/cult/talisman.dm
similarity index 100%
rename from code/game/gamemodes/cult/talisman.dm
rename to code/modules/antagonists/cult/talisman.dm
diff --git a/code/datums/antagonists/devil.dm b/code/modules/antagonists/devil/devil.dm
similarity index 100%
rename from code/datums/antagonists/devil.dm
rename to code/modules/antagonists/devil/devil.dm
diff --git a/code/game/gamemodes/devil/devil.dm b/code/modules/antagonists/devil/devil_helpers.dm
similarity index 100%
rename from code/game/gamemodes/devil/devil.dm
rename to code/modules/antagonists/devil/devil_helpers.dm
diff --git a/code/game/gamemodes/devil/imp/imp.dm b/code/modules/antagonists/devil/imp/imp.dm
similarity index 100%
rename from code/game/gamemodes/devil/imp/imp.dm
rename to code/modules/antagonists/devil/imp/imp.dm
diff --git a/code/game/gamemodes/miniantags/sintouched/objectives.dm b/code/modules/antagonists/devil/sintouched/objectives.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/sintouched/objectives.dm
rename to code/modules/antagonists/devil/sintouched/objectives.dm
diff --git a/code/game/gamemodes/devil/true_devil/_true_devil.dm b/code/modules/antagonists/devil/true_devil/_true_devil.dm
similarity index 100%
rename from code/game/gamemodes/devil/true_devil/_true_devil.dm
rename to code/modules/antagonists/devil/true_devil/_true_devil.dm
diff --git a/code/game/gamemodes/devil/true_devil/inventory.dm b/code/modules/antagonists/devil/true_devil/inventory.dm
similarity index 100%
rename from code/game/gamemodes/devil/true_devil/inventory.dm
rename to code/modules/antagonists/devil/true_devil/inventory.dm
diff --git a/code/datums/antagonists/monkey.dm b/code/modules/antagonists/monkey/monkey.dm
similarity index 98%
rename from code/datums/antagonists/monkey.dm
rename to code/modules/antagonists/monkey/monkey.dm
index 25e80f6afb6..196adf5c22f 100644
--- a/code/datums/antagonists/monkey.dm
+++ b/code/modules/antagonists/monkey/monkey.dm
@@ -202,8 +202,8 @@
if(MONKEYS_DIED)
parts += "Monkey Major Defeat!"
parts += "All the monkeys died, and Jungle Fever was wiped out!"
- var/list/leaders = get_antagonists(/datum/antagonist/monkey/leader, TRUE)
- var/list/monkeys = get_antagonists(/datum/antagonist/monkey, TRUE)
+ var/list/leaders = get_antag_minds(/datum/antagonist/monkey/leader, TRUE)
+ var/list/monkeys = get_antag_minds(/datum/antagonist/monkey, TRUE)
if(LAZYLEN(leaders))
parts += ""
diff --git a/code/game/gamemodes/miniantags/morph/morph.dm b/code/modules/antagonists/morph/morph.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/morph/morph.dm
rename to code/modules/antagonists/morph/morph.dm
diff --git a/code/datums/antagonists/ninja.dm b/code/modules/antagonists/ninja/ninja.dm
similarity index 100%
rename from code/datums/antagonists/ninja.dm
rename to code/modules/antagonists/ninja/ninja.dm
diff --git a/code/game/gamemodes/nuclear/nuclear_challenge.dm b/code/modules/antagonists/nukeop/equipment/nuclear_challenge.dm
similarity index 100%
rename from code/game/gamemodes/nuclear/nuclear_challenge.dm
rename to code/modules/antagonists/nukeop/equipment/nuclear_challenge.dm
diff --git a/code/game/gamemodes/nuclear/nuclearbomb.dm b/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm
similarity index 100%
rename from code/game/gamemodes/nuclear/nuclearbomb.dm
rename to code/modules/antagonists/nukeop/equipment/nuclearbomb.dm
diff --git a/code/game/gamemodes/nuclear/pinpointer.dm b/code/modules/antagonists/nukeop/equipment/pinpointer.dm
similarity index 95%
rename from code/game/gamemodes/nuclear/pinpointer.dm
rename to code/modules/antagonists/nukeop/equipment/pinpointer.dm
index 70477292947..1d7855d3730 100644
--- a/code/game/gamemodes/nuclear/pinpointer.dm
+++ b/code/modules/antagonists/nukeop/equipment/pinpointer.dm
@@ -71,7 +71,7 @@
target = null
var/list/possible_targets = list()
var/turf/here = get_turf(src)
- for(var/V in get_antagonists(/datum/antagonist/nukeop))
+ for(var/V in get_antag_minds(/datum/antagonist/nukeop))
var/datum/mind/M = V
if(ishuman(M.current) && M.current.stat != DEAD)
possible_targets |= M.current
diff --git a/code/datums/antagonists/nukeop.dm b/code/modules/antagonists/nukeop/nukeop.dm
similarity index 97%
rename from code/datums/antagonists/nukeop.dm
rename to code/modules/antagonists/nukeop/nukeop.dm
index 843b142c08a..8401dc8cedc 100644
--- a/code/datums/antagonists/nukeop.dm
+++ b/code/modules/antagonists/nukeop/nukeop.dm
@@ -1,13 +1,3 @@
-#define NUKE_RESULT_FLUKE 0
-#define NUKE_RESULT_NUKE_WIN 1
-#define NUKE_RESULT_CREW_WIN 2
-#define NUKE_RESULT_CREW_WIN_SYNDIES_DEAD 3
-#define NUKE_RESULT_DISK_LOST 4
-#define NUKE_RESULT_DISK_STOLEN 5
-#define NUKE_RESULT_NOSURVIVORS 6
-#define NUKE_RESULT_WRONG_STATION 7
-#define NUKE_RESULT_WRONG_STATION_DEAD 8
-
/datum/antagonist/nukeop
name = "Nuclear Operative"
roundend_category = "syndicate operatives" //just in case
diff --git a/code/datums/antagonists/pirate.dm b/code/modules/antagonists/pirate/pirate.dm
similarity index 100%
rename from code/datums/antagonists/pirate.dm
rename to code/modules/antagonists/pirate/pirate.dm
diff --git a/code/game/gamemodes/miniantags/revenant/revenant.dm b/code/modules/antagonists/revenant/revenant.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/revenant/revenant.dm
rename to code/modules/antagonists/revenant/revenant.dm
diff --git a/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm b/code/modules/antagonists/revenant/revenant_abilities.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/revenant/revenant_abilities.dm
rename to code/modules/antagonists/revenant/revenant_abilities.dm
diff --git a/code/game/gamemodes/miniantags/revenant/revenant_blight.dm b/code/modules/antagonists/revenant/revenant_blight.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/revenant/revenant_blight.dm
rename to code/modules/antagonists/revenant/revenant_blight.dm
diff --git a/code/game/gamemodes/miniantags/revenant/revenant_spawn_event.dm b/code/modules/antagonists/revenant/revenant_spawn_event.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/revenant/revenant_spawn_event.dm
rename to code/modules/antagonists/revenant/revenant_spawn_event.dm
diff --git a/code/datums/antagonists/revolution.dm b/code/modules/antagonists/revolution/revolution.dm
similarity index 98%
rename from code/datums/antagonists/revolution.dm
rename to code/modules/antagonists/revolution/revolution.dm
index 1e81987e92d..5c89fe24cf5 100644
--- a/code/datums/antagonists/revolution.dm
+++ b/code/modules/antagonists/revolution/revolution.dm
@@ -315,8 +315,8 @@
var/list/targets = list()
- var/list/datum/mind/headrevs = get_antagonists(/datum/antagonist/rev/head)
- var/list/datum/mind/revs = get_antagonists(/datum/antagonist/rev,TRUE)
+ var/list/datum/mind/headrevs = get_antag_minds(/datum/antagonist/rev/head)
+ var/list/datum/mind/revs = get_antag_minds(/datum/antagonist/rev,TRUE)
if(headrevs.len)
var/list/headrev_part = list()
headrev_part += ""
diff --git a/code/game/gamemodes/miniantags/slaughter/slaughter.dm b/code/modules/antagonists/slaughter/slaughter.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/slaughter/slaughter.dm
rename to code/modules/antagonists/slaughter/slaughter.dm
diff --git a/code/game/gamemodes/miniantags/slaughter/slaughterevent.dm b/code/modules/antagonists/slaughter/slaughterevent.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/slaughter/slaughterevent.dm
rename to code/modules/antagonists/slaughter/slaughterevent.dm
diff --git a/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm b/code/modules/antagonists/swarmer/swarmer.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/bot_swarm/swarmer.dm
rename to code/modules/antagonists/swarmer/swarmer.dm
diff --git a/code/game/gamemodes/miniantags/bot_swarm/swarmer_event.dm b/code/modules/antagonists/swarmer/swarmer_event.dm
similarity index 100%
rename from code/game/gamemodes/miniantags/bot_swarm/swarmer_event.dm
rename to code/modules/antagonists/swarmer/swarmer_event.dm
diff --git a/code/datums/antagonists/internal_affairs.dm b/code/modules/antagonists/traitor/IAA/internal_affairs.dm
similarity index 100%
rename from code/datums/antagonists/internal_affairs.dm
rename to code/modules/antagonists/traitor/IAA/internal_affairs.dm
diff --git a/code/datums/antagonists/datum_traitor.dm b/code/modules/antagonists/traitor/datum_traitor.dm
similarity index 100%
rename from code/datums/antagonists/datum_traitor.dm
rename to code/modules/antagonists/traitor/datum_traitor.dm
diff --git a/code/game/gamemodes/malfunction/Malf_Modules.dm b/code/modules/antagonists/traitor/equipment/Malf_Modules.dm
similarity index 100%
rename from code/game/gamemodes/malfunction/Malf_Modules.dm
rename to code/modules/antagonists/traitor/equipment/Malf_Modules.dm
diff --git a/code/game/gamemodes/wizard/artefact.dm b/code/modules/antagonists/wizard/equipment/artefact.dm
similarity index 100%
rename from code/game/gamemodes/wizard/artefact.dm
rename to code/modules/antagonists/wizard/equipment/artefact.dm
diff --git a/code/game/gamemodes/wizard/soulstone.dm b/code/modules/antagonists/wizard/equipment/soulstone.dm
similarity index 100%
rename from code/game/gamemodes/wizard/soulstone.dm
rename to code/modules/antagonists/wizard/equipment/soulstone.dm
diff --git a/code/game/gamemodes/wizard/spellbook.dm b/code/modules/antagonists/wizard/equipment/spellbook.dm
similarity index 100%
rename from code/game/gamemodes/wizard/spellbook.dm
rename to code/modules/antagonists/wizard/equipment/spellbook.dm
diff --git a/code/datums/antagonists/wizard.dm b/code/modules/antagonists/wizard/wizard.dm
similarity index 98%
rename from code/datums/antagonists/wizard.dm
rename to code/modules/antagonists/wizard/wizard.dm
index c4f029e5e3b..e447fc46aa4 100644
--- a/code/datums/antagonists/wizard.dm
+++ b/code/modules/antagonists/wizard/wizard.dm
@@ -1,8 +1,3 @@
-#define APPRENTICE_DESTRUCTION "destruction"
-#define APPRENTICE_BLUESPACE "bluespace"
-#define APPRENTICE_ROBELESS "robeless"
-#define APPRENTICE_HEALING "healing"
-
/datum/antagonist/wizard
name = "Space Wizard"
roundend_category = "wizards/witches"
diff --git a/code/modules/mob/mob_helpers.dm b/code/modules/mob/mob_helpers.dm
index 999a6090eb8..0295d4f7fa9 100644
--- a/code/modules/mob/mob_helpers.dm
+++ b/code/modules/mob/mob_helpers.dm
@@ -372,9 +372,6 @@ It's fairly easy to fix if dealing with single letters but not so much with comp
if("monkey")
if(M.viruses && (locate(/datum/disease/transformation/jungle_fever) in M.viruses))
return 2
- if("abductor")
- if(M.mind in SSticker.mode.abductors)
- return 2
return TRUE
if(M.mind && LAZYLEN(M.mind.antag_datums)) //they have an antag datum!
return TRUE
diff --git a/tgstation.dme b/tgstation.dme
index 194b4fd4169..5a66f0ea5d8 100755
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -20,6 +20,7 @@
#include "code\__DEFINES\_tick.dm"
#include "code\__DEFINES\access.dm"
#include "code\__DEFINES\admin.dm"
+#include "code\__DEFINES\antagonists.dm"
#include "code\__DEFINES\atmospherics.dm"
#include "code\__DEFINES\atom_hud.dm"
#include "code\__DEFINES\callbacks.dm"
@@ -284,22 +285,6 @@
#include "code\datums\actions\beam_rifle.dm"
#include "code\datums\actions\flightsuit.dm"
#include "code\datums\actions\ninja.dm"
-#include "code\datums\antagonists\abductor.dm"
-#include "code\datums\antagonists\antag_datum.dm"
-#include "code\datums\antagonists\blob.dm"
-#include "code\datums\antagonists\brother.dm"
-#include "code\datums\antagonists\changeling.dm"
-#include "code\datums\antagonists\clockcult.dm"
-#include "code\datums\antagonists\cult.dm"
-#include "code\datums\antagonists\datum_traitor.dm"
-#include "code\datums\antagonists\devil.dm"
-#include "code\datums\antagonists\internal_affairs.dm"
-#include "code\datums\antagonists\monkey.dm"
-#include "code\datums\antagonists\ninja.dm"
-#include "code\datums\antagonists\nukeop.dm"
-#include "code\datums\antagonists\pirate.dm"
-#include "code\datums\antagonists\revolution.dm"
-#include "code\datums\antagonists\wizard.dm"
#include "code\datums\brain_damage\brain_trauma.dm"
#include "code\datums\brain_damage\imaginary_friend.dm"
#include "code\datums\brain_damage\mild.dm"
@@ -458,161 +443,30 @@
#include "code\game\area\areas\ruins\lavaland.dm"
#include "code\game\area\areas\ruins\space.dm"
#include "code\game\area\areas\ruins\templates.dm"
-#include "code\game\gamemodes\antag_hud.dm"
-#include "code\game\gamemodes\antag_spawner.dm"
-#include "code\game\gamemodes\antag_team.dm"
#include "code\game\gamemodes\events.dm"
#include "code\game\gamemodes\game_mode.dm"
#include "code\game\gamemodes\objective.dm"
#include "code\game\gamemodes\objective_items.dm"
-#include "code\game\gamemodes\blob\blob_report.dm"
-#include "code\game\gamemodes\blob\overmind.dm"
-#include "code\game\gamemodes\blob\powers.dm"
-#include "code\game\gamemodes\blob\theblob.dm"
-#include "code\game\gamemodes\blob\blobs\blob_mobs.dm"
-#include "code\game\gamemodes\blob\blobs\core.dm"
-#include "code\game\gamemodes\blob\blobs\factory.dm"
-#include "code\game\gamemodes\blob\blobs\node.dm"
-#include "code\game\gamemodes\blob\blobs\resource.dm"
-#include "code\game\gamemodes\blob\blobs\shield.dm"
#include "code\game\gamemodes\brother\traitor_bro.dm"
-#include "code\game\gamemodes\changeling\cellular_emporium.dm"
#include "code\game\gamemodes\changeling\changeling.dm"
-#include "code\game\gamemodes\changeling\changeling_power.dm"
#include "code\game\gamemodes\changeling\traitor_chan.dm"
-#include "code\game\gamemodes\changeling\powers\absorb.dm"
-#include "code\game\gamemodes\changeling\powers\adrenaline.dm"
-#include "code\game\gamemodes\changeling\powers\augmented_eyesight.dm"
-#include "code\game\gamemodes\changeling\powers\biodegrade.dm"
-#include "code\game\gamemodes\changeling\powers\chameleon_skin.dm"
-#include "code\game\gamemodes\changeling\powers\digitalcamo.dm"
-#include "code\game\gamemodes\changeling\powers\fakedeath.dm"
-#include "code\game\gamemodes\changeling\powers\fleshmend.dm"
-#include "code\game\gamemodes\changeling\powers\headcrab.dm"
-#include "code\game\gamemodes\changeling\powers\hivemind.dm"
-#include "code\game\gamemodes\changeling\powers\humanform.dm"
-#include "code\game\gamemodes\changeling\powers\lesserform.dm"
-#include "code\game\gamemodes\changeling\powers\linglink.dm"
-#include "code\game\gamemodes\changeling\powers\mimic_voice.dm"
-#include "code\game\gamemodes\changeling\powers\mutations.dm"
-#include "code\game\gamemodes\changeling\powers\panacea.dm"
-#include "code\game\gamemodes\changeling\powers\regenerate.dm"
-#include "code\game\gamemodes\changeling\powers\revive.dm"
-#include "code\game\gamemodes\changeling\powers\shriek.dm"
-#include "code\game\gamemodes\changeling\powers\spiders.dm"
-#include "code\game\gamemodes\changeling\powers\strained_muscles.dm"
-#include "code\game\gamemodes\changeling\powers\tiny_prick.dm"
-#include "code\game\gamemodes\changeling\powers\transform.dm"
#include "code\game\gamemodes\clock_cult\clock_cult.dm"
-#include "code\game\gamemodes\clock_cult\clock_effect.dm"
-#include "code\game\gamemodes\clock_cult\clock_item.dm"
-#include "code\game\gamemodes\clock_cult\clock_mobs.dm"
-#include "code\game\gamemodes\clock_cult\clock_scripture.dm"
-#include "code\game\gamemodes\clock_cult\clock_structure.dm"
-#include "code\game\gamemodes\clock_cult\clock_effects\city_of_cogs_rift.dm"
-#include "code\game\gamemodes\clock_cult\clock_effects\clock_overlay.dm"
-#include "code\game\gamemodes\clock_cult\clock_effects\clock_sigils.dm"
-#include "code\game\gamemodes\clock_cult\clock_effects\general_markers.dm"
-#include "code\game\gamemodes\clock_cult\clock_effects\servant_blocker.dm"
-#include "code\game\gamemodes\clock_cult\clock_effects\spatial_gateway.dm"
-#include "code\game\gamemodes\clock_cult\clock_helpers\clock_powerdrain.dm"
-#include "code\game\gamemodes\clock_cult\clock_helpers\component_helpers.dm"
-#include "code\game\gamemodes\clock_cult\clock_helpers\fabrication_helpers.dm"
-#include "code\game\gamemodes\clock_cult\clock_helpers\hierophant_network.dm"
-#include "code\game\gamemodes\clock_cult\clock_helpers\power_helpers.dm"
-#include "code\game\gamemodes\clock_cult\clock_helpers\ratvarian_language.dm"
-#include "code\game\gamemodes\clock_cult\clock_helpers\scripture_checks.dm"
-#include "code\game\gamemodes\clock_cult\clock_helpers\slab_abilities.dm"
-#include "code\game\gamemodes\clock_cult\clock_items\clock_components.dm"
-#include "code\game\gamemodes\clock_cult\clock_items\clockwork_armor.dm"
-#include "code\game\gamemodes\clock_cult\clock_items\clockwork_slab.dm"
-#include "code\game\gamemodes\clock_cult\clock_items\clockwork_weaponry.dm"
-#include "code\game\gamemodes\clock_cult\clock_items\construct_chassis.dm"
-#include "code\game\gamemodes\clock_cult\clock_items\integration_cog.dm"
-#include "code\game\gamemodes\clock_cult\clock_items\judicial_visor.dm"
-#include "code\game\gamemodes\clock_cult\clock_items\replica_fabricator.dm"
-#include "code\game\gamemodes\clock_cult\clock_items\soul_vessel.dm"
-#include "code\game\gamemodes\clock_cult\clock_items\wraith_spectacles.dm"
-#include "code\game\gamemodes\clock_cult\clock_items\clock_weapons\_call_weapon.dm"
-#include "code\game\gamemodes\clock_cult\clock_items\clock_weapons\ratvarian_spear.dm"
-#include "code\game\gamemodes\clock_cult\clock_mobs\_eminence.dm"
-#include "code\game\gamemodes\clock_cult\clock_mobs\clockwork_marauder.dm"
-#include "code\game\gamemodes\clock_cult\clock_scriptures\scripture_applications.dm"
-#include "code\game\gamemodes\clock_cult\clock_scriptures\scripture_cyborg.dm"
-#include "code\game\gamemodes\clock_cult\clock_scriptures\scripture_drivers.dm"
-#include "code\game\gamemodes\clock_cult\clock_scriptures\scripture_scripts.dm"
-#include "code\game\gamemodes\clock_cult\clock_structures\_trap_object.dm"
-#include "code\game\gamemodes\clock_cult\clock_structures\ark_of_the_clockwork_justicar.dm"
-#include "code\game\gamemodes\clock_cult\clock_structures\clockwork_obelisk.dm"
-#include "code\game\gamemodes\clock_cult\clock_structures\eminence_spire.dm"
-#include "code\game\gamemodes\clock_cult\clock_structures\heralds_beacon.dm"
-#include "code\game\gamemodes\clock_cult\clock_structures\mania_motor.dm"
-#include "code\game\gamemodes\clock_cult\clock_structures\ocular_warden.dm"
-#include "code\game\gamemodes\clock_cult\clock_structures\ratvar_the_clockwork_justicar.dm"
-#include "code\game\gamemodes\clock_cult\clock_structures\stargazer.dm"
-#include "code\game\gamemodes\clock_cult\clock_structures\taunting_trail.dm"
-#include "code\game\gamemodes\clock_cult\clock_structures\wall_gear.dm"
-#include "code\game\gamemodes\clock_cult\clock_structures\trap_triggers\lever.dm"
-#include "code\game\gamemodes\clock_cult\clock_structures\trap_triggers\pressure_sensor.dm"
-#include "code\game\gamemodes\clock_cult\clock_structures\trap_triggers\repeater.dm"
-#include "code\game\gamemodes\clock_cult\clock_structures\traps\brass_skewer.dm"
-#include "code\game\gamemodes\clock_cult\clock_structures\traps\steam_vent.dm"
#include "code\game\gamemodes\cult\cult.dm"
-#include "code\game\gamemodes\cult\cult_comms.dm"
-#include "code\game\gamemodes\cult\cult_items.dm"
-#include "code\game\gamemodes\cult\cult_structures.dm"
-#include "code\game\gamemodes\cult\ritual.dm"
-#include "code\game\gamemodes\cult\rune_spawn_action.dm"
-#include "code\game\gamemodes\cult\runes.dm"
-#include "code\game\gamemodes\cult\supply.dm"
-#include "code\game\gamemodes\cult\talisman.dm"
-#include "code\game\gamemodes\devil\devil.dm"
#include "code\game\gamemodes\devil\devil_game_mode.dm"
#include "code\game\gamemodes\devil\game_mode.dm"
#include "code\game\gamemodes\devil\objectives.dm"
#include "code\game\gamemodes\devil\devil agent\devil_agent.dm"
-#include "code\game\gamemodes\devil\imp\imp.dm"
-#include "code\game\gamemodes\devil\true_devil\_true_devil.dm"
-#include "code\game\gamemodes\devil\true_devil\inventory.dm"
#include "code\game\gamemodes\extended\extended.dm"
-#include "code\game\gamemodes\malfunction\Malf_Modules.dm"
#include "code\game\gamemodes\meteor\meteor.dm"
#include "code\game\gamemodes\meteor\meteors.dm"
-#include "code\game\gamemodes\miniantags\abduction\abductee_objectives.dm"
-#include "code\game\gamemodes\miniantags\abduction\abduction.dm"
-#include "code\game\gamemodes\miniantags\abduction\abduction_gear.dm"
-#include "code\game\gamemodes\miniantags\abduction\abduction_outfits.dm"
-#include "code\game\gamemodes\miniantags\abduction\abduction_surgery.dm"
-#include "code\game\gamemodes\miniantags\abduction\gland.dm"
-#include "code\game\gamemodes\miniantags\abduction\machinery\camera.dm"
-#include "code\game\gamemodes\miniantags\abduction\machinery\console.dm"
-#include "code\game\gamemodes\miniantags\abduction\machinery\dispenser.dm"
-#include "code\game\gamemodes\miniantags\abduction\machinery\experiment.dm"
-#include "code\game\gamemodes\miniantags\abduction\machinery\pad.dm"
-#include "code\game\gamemodes\miniantags\bot_swarm\swarmer.dm"
-#include "code\game\gamemodes\miniantags\bot_swarm\swarmer_event.dm"
-#include "code\game\gamemodes\miniantags\monkey\monkey.dm"
-#include "code\game\gamemodes\miniantags\morph\morph.dm"
-#include "code\game\gamemodes\miniantags\revenant\revenant.dm"
-#include "code\game\gamemodes\miniantags\revenant\revenant_abilities.dm"
-#include "code\game\gamemodes\miniantags\revenant\revenant_blight.dm"
-#include "code\game\gamemodes\miniantags\revenant\revenant_spawn_event.dm"
-#include "code\game\gamemodes\miniantags\sintouched\objectives.dm"
-#include "code\game\gamemodes\miniantags\slaughter\slaughter.dm"
-#include "code\game\gamemodes\miniantags\slaughter\slaughterevent.dm"
+#include "code\game\gamemodes\monkey\monkey.dm"
#include "code\game\gamemodes\nuclear\nuclear.dm"
-#include "code\game\gamemodes\nuclear\nuclear_challenge.dm"
-#include "code\game\gamemodes\nuclear\nuclearbomb.dm"
-#include "code\game\gamemodes\nuclear\pinpointer.dm"
#include "code\game\gamemodes\revolution\revolution.dm"
#include "code\game\gamemodes\sandbox\airlock_maker.dm"
#include "code\game\gamemodes\sandbox\h_sandbox.dm"
#include "code\game\gamemodes\sandbox\sandbox.dm"
#include "code\game\gamemodes\traitor\double_agents.dm"
#include "code\game\gamemodes\traitor\traitor.dm"
-#include "code\game\gamemodes\wizard\artefact.dm"
-#include "code\game\gamemodes\wizard\soulstone.dm"
-#include "code\game\gamemodes\wizard\spellbook.dm"
#include "code\game\gamemodes\wizard\wizard.dm"
#include "code\game\machinery\_machinery.dm"
#include "code\game\machinery\ai_slipper.dm"
@@ -1174,6 +1028,153 @@
#include "code\modules\admin\verbs\SDQL2\SDQL_2.dm"
#include "code\modules\admin\verbs\SDQL2\SDQL_2_parser.dm"
#include "code\modules\admin\verbs\SDQL2\SDQL_2_wrappers.dm"
+#include "code\modules\antagonists\_common\antag_datum.dm"
+#include "code\modules\antagonists\_common\antag_helpers.dm"
+#include "code\modules\antagonists\_common\antag_hud.dm"
+#include "code\modules\antagonists\_common\antag_spawner.dm"
+#include "code\modules\antagonists\_common\antag_team.dm"
+#include "code\modules\antagonists\abductor\abductor.dm"
+#include "code\modules\antagonists\abductor\abductee\abductee_objectives.dm"
+#include "code\modules\antagonists\abductor\equipment\abduction_gear.dm"
+#include "code\modules\antagonists\abductor\equipment\abduction_outfits.dm"
+#include "code\modules\antagonists\abductor\equipment\abduction_surgery.dm"
+#include "code\modules\antagonists\abductor\equipment\gland.dm"
+#include "code\modules\antagonists\abductor\machinery\camera.dm"
+#include "code\modules\antagonists\abductor\machinery\console.dm"
+#include "code\modules\antagonists\abductor\machinery\dispenser.dm"
+#include "code\modules\antagonists\abductor\machinery\experiment.dm"
+#include "code\modules\antagonists\abductor\machinery\pad.dm"
+#include "code\modules\antagonists\blob\blob.dm"
+#include "code\modules\antagonists\blob\blob\blob_report.dm"
+#include "code\modules\antagonists\blob\blob\overmind.dm"
+#include "code\modules\antagonists\blob\blob\powers.dm"
+#include "code\modules\antagonists\blob\blob\theblob.dm"
+#include "code\modules\antagonists\blob\blob\blobs\blob_mobs.dm"
+#include "code\modules\antagonists\blob\blob\blobs\core.dm"
+#include "code\modules\antagonists\blob\blob\blobs\factory.dm"
+#include "code\modules\antagonists\blob\blob\blobs\node.dm"
+#include "code\modules\antagonists\blob\blob\blobs\resource.dm"
+#include "code\modules\antagonists\blob\blob\blobs\shield.dm"
+#include "code\modules\antagonists\brother\brother.dm"
+#include "code\modules\antagonists\changeling\cellular_emporium.dm"
+#include "code\modules\antagonists\changeling\changeling.dm"
+#include "code\modules\antagonists\changeling\changeling_power.dm"
+#include "code\modules\antagonists\changeling\powers\absorb.dm"
+#include "code\modules\antagonists\changeling\powers\adrenaline.dm"
+#include "code\modules\antagonists\changeling\powers\augmented_eyesight.dm"
+#include "code\modules\antagonists\changeling\powers\biodegrade.dm"
+#include "code\modules\antagonists\changeling\powers\chameleon_skin.dm"
+#include "code\modules\antagonists\changeling\powers\digitalcamo.dm"
+#include "code\modules\antagonists\changeling\powers\fakedeath.dm"
+#include "code\modules\antagonists\changeling\powers\fleshmend.dm"
+#include "code\modules\antagonists\changeling\powers\headcrab.dm"
+#include "code\modules\antagonists\changeling\powers\hivemind.dm"
+#include "code\modules\antagonists\changeling\powers\humanform.dm"
+#include "code\modules\antagonists\changeling\powers\lesserform.dm"
+#include "code\modules\antagonists\changeling\powers\linglink.dm"
+#include "code\modules\antagonists\changeling\powers\mimic_voice.dm"
+#include "code\modules\antagonists\changeling\powers\mutations.dm"
+#include "code\modules\antagonists\changeling\powers\panacea.dm"
+#include "code\modules\antagonists\changeling\powers\regenerate.dm"
+#include "code\modules\antagonists\changeling\powers\revive.dm"
+#include "code\modules\antagonists\changeling\powers\shriek.dm"
+#include "code\modules\antagonists\changeling\powers\spiders.dm"
+#include "code\modules\antagonists\changeling\powers\strained_muscles.dm"
+#include "code\modules\antagonists\changeling\powers\tiny_prick.dm"
+#include "code\modules\antagonists\changeling\powers\transform.dm"
+#include "code\modules\antagonists\clockcult\clock_effect.dm"
+#include "code\modules\antagonists\clockcult\clock_item.dm"
+#include "code\modules\antagonists\clockcult\clock_mobs.dm"
+#include "code\modules\antagonists\clockcult\clock_scripture.dm"
+#include "code\modules\antagonists\clockcult\clock_structure.dm"
+#include "code\modules\antagonists\clockcult\clockcult.dm"
+#include "code\modules\antagonists\clockcult\clock_effects\city_of_cogs_rift.dm"
+#include "code\modules\antagonists\clockcult\clock_effects\clock_overlay.dm"
+#include "code\modules\antagonists\clockcult\clock_effects\clock_sigils.dm"
+#include "code\modules\antagonists\clockcult\clock_effects\general_markers.dm"
+#include "code\modules\antagonists\clockcult\clock_effects\servant_blocker.dm"
+#include "code\modules\antagonists\clockcult\clock_effects\spatial_gateway.dm"
+#include "code\modules\antagonists\clockcult\clock_helpers\clock_powerdrain.dm"
+#include "code\modules\antagonists\clockcult\clock_helpers\component_helpers.dm"
+#include "code\modules\antagonists\clockcult\clock_helpers\fabrication_helpers.dm"
+#include "code\modules\antagonists\clockcult\clock_helpers\hierophant_network.dm"
+#include "code\modules\antagonists\clockcult\clock_helpers\power_helpers.dm"
+#include "code\modules\antagonists\clockcult\clock_helpers\ratvarian_language.dm"
+#include "code\modules\antagonists\clockcult\clock_helpers\scripture_checks.dm"
+#include "code\modules\antagonists\clockcult\clock_helpers\slab_abilities.dm"
+#include "code\modules\antagonists\clockcult\clock_items\clock_components.dm"
+#include "code\modules\antagonists\clockcult\clock_items\clockwork_armor.dm"
+#include "code\modules\antagonists\clockcult\clock_items\clockwork_slab.dm"
+#include "code\modules\antagonists\clockcult\clock_items\clockwork_weaponry.dm"
+#include "code\modules\antagonists\clockcult\clock_items\construct_chassis.dm"
+#include "code\modules\antagonists\clockcult\clock_items\integration_cog.dm"
+#include "code\modules\antagonists\clockcult\clock_items\judicial_visor.dm"
+#include "code\modules\antagonists\clockcult\clock_items\replica_fabricator.dm"
+#include "code\modules\antagonists\clockcult\clock_items\soul_vessel.dm"
+#include "code\modules\antagonists\clockcult\clock_items\wraith_spectacles.dm"
+#include "code\modules\antagonists\clockcult\clock_items\clock_weapons\_call_weapon.dm"
+#include "code\modules\antagonists\clockcult\clock_items\clock_weapons\ratvarian_spear.dm"
+#include "code\modules\antagonists\clockcult\clock_mobs\_eminence.dm"
+#include "code\modules\antagonists\clockcult\clock_mobs\clockwork_marauder.dm"
+#include "code\modules\antagonists\clockcult\clock_scriptures\scripture_applications.dm"
+#include "code\modules\antagonists\clockcult\clock_scriptures\scripture_cyborg.dm"
+#include "code\modules\antagonists\clockcult\clock_scriptures\scripture_drivers.dm"
+#include "code\modules\antagonists\clockcult\clock_scriptures\scripture_scripts.dm"
+#include "code\modules\antagonists\clockcult\clock_structures\_trap_object.dm"
+#include "code\modules\antagonists\clockcult\clock_structures\ark_of_the_clockwork_justicar.dm"
+#include "code\modules\antagonists\clockcult\clock_structures\clockwork_obelisk.dm"
+#include "code\modules\antagonists\clockcult\clock_structures\eminence_spire.dm"
+#include "code\modules\antagonists\clockcult\clock_structures\heralds_beacon.dm"
+#include "code\modules\antagonists\clockcult\clock_structures\mania_motor.dm"
+#include "code\modules\antagonists\clockcult\clock_structures\ocular_warden.dm"
+#include "code\modules\antagonists\clockcult\clock_structures\ratvar_the_clockwork_justicar.dm"
+#include "code\modules\antagonists\clockcult\clock_structures\stargazer.dm"
+#include "code\modules\antagonists\clockcult\clock_structures\taunting_trail.dm"
+#include "code\modules\antagonists\clockcult\clock_structures\wall_gear.dm"
+#include "code\modules\antagonists\clockcult\clock_structures\trap_triggers\lever.dm"
+#include "code\modules\antagonists\clockcult\clock_structures\trap_triggers\pressure_sensor.dm"
+#include "code\modules\antagonists\clockcult\clock_structures\trap_triggers\repeater.dm"
+#include "code\modules\antagonists\clockcult\clock_structures\traps\brass_skewer.dm"
+#include "code\modules\antagonists\clockcult\clock_structures\traps\steam_vent.dm"
+#include "code\modules\antagonists\cult\cult.dm"
+#include "code\modules\antagonists\cult\cult_comms.dm"
+#include "code\modules\antagonists\cult\cult_items.dm"
+#include "code\modules\antagonists\cult\cult_structures.dm"
+#include "code\modules\antagonists\cult\ritual.dm"
+#include "code\modules\antagonists\cult\rune_spawn_action.dm"
+#include "code\modules\antagonists\cult\runes.dm"
+#include "code\modules\antagonists\cult\supply.dm"
+#include "code\modules\antagonists\cult\talisman.dm"
+#include "code\modules\antagonists\devil\devil.dm"
+#include "code\modules\antagonists\devil\devil_helpers.dm"
+#include "code\modules\antagonists\devil\imp\imp.dm"
+#include "code\modules\antagonists\devil\sintouched\objectives.dm"
+#include "code\modules\antagonists\devil\true_devil\_true_devil.dm"
+#include "code\modules\antagonists\devil\true_devil\inventory.dm"
+#include "code\modules\antagonists\monkey\monkey.dm"
+#include "code\modules\antagonists\morph\morph.dm"
+#include "code\modules\antagonists\ninja\ninja.dm"
+#include "code\modules\antagonists\nukeop\nukeop.dm"
+#include "code\modules\antagonists\nukeop\equipment\nuclear_challenge.dm"
+#include "code\modules\antagonists\nukeop\equipment\nuclearbomb.dm"
+#include "code\modules\antagonists\nukeop\equipment\pinpointer.dm"
+#include "code\modules\antagonists\pirate\pirate.dm"
+#include "code\modules\antagonists\revenant\revenant.dm"
+#include "code\modules\antagonists\revenant\revenant_abilities.dm"
+#include "code\modules\antagonists\revenant\revenant_blight.dm"
+#include "code\modules\antagonists\revenant\revenant_spawn_event.dm"
+#include "code\modules\antagonists\revolution\revolution.dm"
+#include "code\modules\antagonists\slaughter\slaughter.dm"
+#include "code\modules\antagonists\slaughter\slaughterevent.dm"
+#include "code\modules\antagonists\swarmer\swarmer.dm"
+#include "code\modules\antagonists\swarmer\swarmer_event.dm"
+#include "code\modules\antagonists\traitor\datum_traitor.dm"
+#include "code\modules\antagonists\traitor\equipment\Malf_Modules.dm"
+#include "code\modules\antagonists\traitor\IAA\internal_affairs.dm"
+#include "code\modules\antagonists\wizard\wizard.dm"
+#include "code\modules\antagonists\wizard\equipment\artefact.dm"
+#include "code\modules\antagonists\wizard\equipment\soulstone.dm"
+#include "code\modules\antagonists\wizard\equipment\spellbook.dm"
#include "code\modules\assembly\assembly.dm"
#include "code\modules\assembly\bomb.dm"
#include "code\modules\assembly\doorcontrol.dm"