diff --git a/code/game/gamemodes/intercept_report.dm b/code/game/gamemodes/intercept_report.dm
index 2d1eeb4c2e2..1731e76e01a 100644
--- a/code/game/gamemodes/intercept_report.dm
+++ b/code/game/gamemodes/intercept_report.dm
@@ -58,6 +58,7 @@
/datum/intercept_text/proc/pick_mob()
var/list/dudes = list()
for(var/mob/living/carbon/human/man in world)
+ if (man.mind.special_role == "Syndicate") continue
dudes += man
var/dude = pick(dudes)
return dude
@@ -96,7 +97,7 @@
var/traitor_job
var/prob_right_dude = rand(prob_correct_person_lower, prob_correct_person_higher)
var/prob_right_job = rand(prob_correct_job_lower, prob_correct_job_higher)
- if(prob(prob_right_job))
+ if(prob(prob_right_job) && cult_check_mob(correct_mob))
if (correct_mob)
traitor_job = correct_mob:assigned_role
else
@@ -116,6 +117,14 @@
src.text += "organisation."
src.text += "
However, if this information is acted on without substantial evidence, those responsible will face severe repercussions."
+/datum/intercept_text/proc/cult_check_mob(correct_mob) //ok, this is pretty hacky, but if it works right, people that can't normally be cultists will make the proc return null, which should make the cult report proc not use said person. --NEO
+ var/datum/game_mode/cult/checklist = new /datum/game_mode/cult
+ var/list/ucs = checklist.get_unconvertables()
+ del(checklist)
+ if (correct_mob in ucs) return
+ return 1
+
+
/datum/intercept_text/proc/build_rev(correct_mob)
var/name_1 = pick(src.org_names_1)
var/name_2 = pick(src.org_names_2)
@@ -123,7 +132,7 @@
var/traitor_job
var/prob_right_dude = rand(prob_correct_person_lower, prob_correct_person_higher)
var/prob_right_job = rand(prob_correct_job_lower, prob_correct_job_higher)
- if(prob(prob_right_job))
+ if(prob(prob_right_job) && rev_check_mob(correct_mob))
if (correct_mob)
traitor_job = correct_mob:assigned_role
else
@@ -143,6 +152,13 @@
src.text += "organisation."
src.text += "
However, if this information is acted on without substantial evidence, those responsible will face severe repercussions."
+/datum/intercept_text/proc/rev_check_mob(correct_mob) //ok, this is pretty hacky, but if it works right, people that can't normally be cultists will make the proc return null, which should make the cult report proc not use said person. --NEO
+ var/datum/game_mode/revolution/checklist = new /datum/game_mode/revolution
+ var/list/ucs = checklist.get_unconvertables()
+ del(checklist)
+ if (correct_mob in ucs) return
+ return 1
+
/datum/intercept_text/proc/build_wizard(correct_mob)
var/SWF_desc = pick(SWF_names)