Multiple Consular/Representative Framework (#17853)

* auto-blacklisting for consulars

* proper blacklist list

* changelog

* oops

* corprep

* Update code/game/jobs/job/job.dm

Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>

* roundstart spawn checks

* Update code/game/jobs/job/job.dm

Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>

* Update code/game/jobs/job/job.dm

Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>

---------

Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
This commit is contained in:
RustingWithYou
2023-12-06 00:37:01 +13:00
committed by GitHub
parent e5ca74c95e
commit 90c883f3d2
6 changed files with 90 additions and 6 deletions
+8 -6
View File
@@ -97,6 +97,8 @@ SUBSYSTEM_DEF(jobs)
return FALSE
if(jobban_isbanned(player, rank))
return FALSE
if(!player.IsJobAvailable(rank))
return FALSE
if(!(player.client.prefs.GetPlayerAltTitle(job) in player.client.prefs.GetValidTitles(job)))
to_chat(player, "<span class='warning'>Your character is too young!</span>")
@@ -111,6 +113,7 @@ SUBSYSTEM_DEF(jobs)
player.mind.role_alt_title = GetPlayerAltTitle(player, rank)
unassigned -= player
job.current_positions++
job.pre_spawn(player)
return TRUE
Debug("AR has failed, Player: [player], Rank: [rank]")
return FALSE
@@ -119,7 +122,6 @@ SUBSYSTEM_DEF(jobs)
var/datum/job/job = GetJob(rank)
if(!istype(job))
return
job.current_positions--
/datum/controller/subsystem/jobs/proc/FindOccupationCandidates(datum/job/job, level, flag)
@@ -327,7 +329,7 @@ SUBSYSTEM_DEF(jobs)
Debug("ER/([H]): Equipping custom loadout.")
job.pre_equip(H)
job.setup_account(H)
job.after_spawn(H)
EquipCustom(H, job, H.client.prefs, custom_equip_leftovers, spawn_in_storage, custom_equip_slots)
job.equip(H)
@@ -635,10 +637,10 @@ SUBSYSTEM_DEF(jobs)
//Handle job slot/tater cleanup.
if (H.mind)
var/job = H.mind.assigned_role
FreeRole(job)
var/role = H.mind.assigned_role
var/datum/job/job = GetJob(H.mind.assigned_role)
job.on_despawn(H)
FreeRole(role)
if(H.mind.objectives.len)
qdel(H.mind.objectives)
H.mind.special_role = null