mirror of
https://github.com/fulpstation/fulpstation.git
synced 2025-12-10 01:57:01 +00:00
Reverts Antag selection happening before job selection
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -29,7 +29,6 @@
|
||||
required_players = 20
|
||||
required_enemies = 6
|
||||
recommended_enemies = 6
|
||||
pre_setup_before_jobs = 1
|
||||
|
||||
|
||||
var/finished = 0
|
||||
|
||||
@@ -275,12 +275,11 @@ 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
|
||||
job_master.EquipRank(player, player.mind.assigned_role, 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)
|
||||
if(!istype(M,/mob/new_player))
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
@@ -491,4 +490,4 @@
|
||||
text += "</font>"
|
||||
text += "<br>"
|
||||
|
||||
world << text
|
||||
world << text
|
||||
|
||||
@@ -5,7 +5,6 @@
|
||||
required_players = 25
|
||||
required_enemies = 5
|
||||
recommended_enemies = 8
|
||||
pre_setup_before_jobs = 1
|
||||
|
||||
traitor_name = "double agent"
|
||||
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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>"
|
||||
|
||||
@@ -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)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user