Reverts Antag selection happening before job selection

This commit is contained in:
Remie Richards
2014-10-09 22:57:19 +01:00
parent c55480af16
commit be6c8c54d1
15 changed files with 9 additions and 51 deletions

View File

@@ -81,7 +81,7 @@
var/record_id_num = 1001
/obj/effect/datacore/proc/manifest_inject(var/mob/living/carbon/human/H)
if(H.mind && (H.mind.need_job_assign))
if(H.mind && (H.mind.assigned_role != "MODE"))
var/assignment
if(H.mind.assigned_role)
assignment = H.mind.assigned_role

View File

@@ -37,7 +37,6 @@
var/memory
var/need_job_assign = 1 //Whether the job controller should give them a job
var/assigned_role
var/special_role
@@ -916,6 +915,7 @@
else
current.real_name = "[syndicate_name()] Operative #[ticker.mode.syndicates.len-1]"
special_role = "Syndicate"
assigned_role = "MODE"
current << "<span class='notice'>You are a [syndicate_name()] agent!</span>"
ticker.mode.forge_syndicate_objectives(src)
ticker.mode.greet_syndicate(src)
@@ -1161,6 +1161,7 @@
if(!(src in ticker.mode.wizards))
ticker.mode.wizards += src
special_role = "Wizard"
assigned_role = "MODE"
//ticker.mode.learn_basic_spells(current)
if(!wizardstart.len)
current.loc = pick(latejoin)

View File

@@ -16,7 +16,6 @@ var/list/blob_nodes = list()
recommended_enemies = 1
restricted_jobs = list("Cyborg", "AI")
pre_setup_before_jobs = 1
var/declared = 0

View File

@@ -13,7 +13,6 @@ var/list/possible_changeling_IDs = list("Alpha","Beta","Gamma","Delta","Epsilon"
required_players = 15
required_enemies = 1
recommended_enemies = 4
pre_setup_before_jobs = 1
var/const/prob_int_murder_target = 50 // intercept names the assassination target half the time

View File

@@ -29,7 +29,6 @@
required_players = 20
required_enemies = 6
recommended_enemies = 6
pre_setup_before_jobs = 1
var/finished = 0

View File

@@ -275,11 +275,10 @@ var/round_start_time = 0
/datum/controller/gameticker/proc/equip_characters()
var/captainless=1
for(var/mob/living/carbon/human/player in player_list)
if(!player.mind.need_job_assign)
continue
if(player && player.mind && player.mind.assigned_role)
if(player.mind.assigned_role == "Captain")
captainless=0
if(player.mind.assigned_role != "MODE")
job_master.EquipRank(player, player.mind.assigned_role, 0)
if(captainless)
for(var/mob/M in player_list)

View File

@@ -46,12 +46,6 @@
if(!A_bosses.len || !B_bosses.len)
return 0
//Set a temporary special_role so the job controller doesn't hand out invalid jobs for these antags
for(var/datum/mind/boss_mind in A_bosses)
boss_mind.special_role = "Gang member"
for(var/datum/mind/boss_mind in B_bosses)
boss_mind.special_role = "Gang member"
return 1

View File

@@ -48,7 +48,7 @@
if (malf_ai.len < required_enemies)
return 0
for(var/datum/mind/ai_mind in malf_ai)
ai_mind.need_job_assign = 0
ai_mind.assigned_role = "MODE"
ai_mind.special_role = "malfunctioning AI"//So they actually have a special role/N
log_game("[ai_mind.key] (ckey) has been selected as a malf AI")
return 1

View File

@@ -11,7 +11,6 @@
recommended_enemies = 1
restricted_jobs = list("Cyborg", "AI")
pre_setup_before_jobs = 1
var/carriers_to_make = 1
var/list/carriers = list()

View File

@@ -40,7 +40,7 @@
agent_number--
for(var/datum/mind/synd_mind in syndicates)
synd_mind.need_job_assign = 0
synd_mind.assigned_role = "MODE"
synd_mind.special_role = "Syndicate"//So they actually have a special role/N
log_game("[synd_mind.key] (ckey) has been selected as a nuclear operative")
return 1

View File

@@ -19,7 +19,6 @@
required_players = 20
required_enemies = 3
recommended_enemies = 3
pre_setup_before_jobs = 1
var/finished = 0
var/check_counter = 0

View File

@@ -5,7 +5,6 @@
required_players = 25
required_enemies = 5
recommended_enemies = 8
pre_setup_before_jobs = 1
traitor_name = "double agent"

View File

@@ -15,7 +15,6 @@
required_players = 0
required_enemies = 1
recommended_enemies = 4
pre_setup_before_jobs = 1
var/traitors_possible = 4 //hard limit on traitors if scaling is turned off
var/num_modifier = 0 // Used for gamemodes, that are a child of traitor, that need more than the usual.

View File

@@ -21,7 +21,7 @@
var/datum/mind/wizard = pick(antag_candidates)
wizards += wizard
modePlayer += wizard
wizard.need_job_assign = 0
wizard.assigned_role = "MODE"
wizard.special_role = "Wizard"
if(wizardstart.len == 0)
wizard.current << "<span class='userdanger'>A starting location for you could not be found, please report this bug!</span>"

View File

@@ -46,11 +46,6 @@ var/global/datum/controller/occupations/job_master
if(!job) return 0
if(jobban_isbanned(player, rank)) return 0
if(!job.player_old_enough(player.client)) return 0
if(player.mind.special_role && ticker && ticker.mode)
if(job.title in ticker.mode.restricted_jobs)
return 0
if(!player.mind.need_job_assign)
return 0
var/position_limit = job.total_positions
if(!latejoin)
position_limit = job.spawn_positions
@@ -82,14 +77,6 @@ var/global/datum/controller/occupations/job_master
Debug("FOC non-human failed, Player: [player]")
continue
if(player.mind.special_role && ticker && ticker.mode)
if(job.title in ticker.mode.restricted_jobs)
Debug("FOC player has a special role and this job is blocked from this special role")
continue
if(!player.mind.need_job_assign)
continue
if(player.client.prefs.GetJobDepartment(job, level) & job.flag)
Debug("FOC pass, Player: [player], Level:[level]")
candidates += player
@@ -119,13 +106,6 @@ var/global/datum/controller/occupations/job_master
Debug("GRJ non-human failed, Player: [player]")
continue
if(player.mind.special_role && ticker && ticker.mode)
if(job.title in ticker.mode.restricted_jobs)
Debug("GRJ player has a special role and this job is blocked from this special role")
continue
if(!player.mind.need_job_assign)
continue
if((job.current_positions < job.spawn_positions) || job.spawn_positions == -1)
Debug("GRJ Random job given, Player: [player], Job: [job]")
@@ -282,13 +262,6 @@ var/global/datum/controller/occupations/job_master
Debug("DO non-human failed, Player: [player], Job:[job.title]")
continue
if(player.mind.special_role && ticker && ticker.mode)
if(job.title in ticker.mode.restricted_jobs)
Debug("DO player has a special role and this job is blocked from that special role")
continue
if(!player.mind.need_job_assign)
continue
// If the player wants that job on this level, then try give it to him.
if(player.client.prefs.GetJobDepartment(job, level) & job.flag)
@@ -318,8 +291,6 @@ var/global/datum/controller/occupations/job_master
//Gives the player the stuff he should have with his rank
/datum/controller/occupations/proc/EquipRank(var/mob/living/H, var/rank, var/joined_late = 0)
if(!H.mind.need_job_assign)
return 0
var/datum/job/job = GetJob(rank)