mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-25 06:00:16 +01:00
Fixes additional ai's spawning. (#43915)
* Fixes ai/cyborg job passing through human preview * Also in the future. * bleh
This commit is contained in:
@@ -17,6 +17,8 @@
|
||||
var/do_special_check = TRUE
|
||||
|
||||
/datum/job/ai/equip(mob/living/carbon/human/H, visualsOnly, announce, latejoin, datum/outfit/outfit_override, client/preference_source = null)
|
||||
if(visualsOnly)
|
||||
CRASH("dynamic preview is unsupported")
|
||||
. = H.AIize(latejoin,preference_source)
|
||||
|
||||
/datum/job/ai/after_spawn(mob/H, mob/M, latejoin)
|
||||
|
||||
@@ -15,6 +15,8 @@
|
||||
display_order = JOB_DISPLAY_ORDER_CYBORG
|
||||
|
||||
/datum/job/cyborg/equip(mob/living/carbon/human/H, visualsOnly = FALSE, announce = TRUE, latejoin = FALSE, datum/outfit/outfit_override = null, client/preference_source = null)
|
||||
if(visualsOnly)
|
||||
CRASH("dynamic preview is unsupported")
|
||||
return H.Robotize(FALSE, latejoin)
|
||||
|
||||
/datum/job/cyborg/after_spawn(mob/living/silicon/robot/R, mob/M)
|
||||
|
||||
@@ -21,20 +21,6 @@
|
||||
age = rand(AGE_MIN,AGE_MAX)
|
||||
|
||||
/datum/preferences/proc/update_preview_icon()
|
||||
// Silicons only need a very basic preview since there is no customization for them.
|
||||
var/datum/job/J = SSjob.GetJobType(/datum/job/ai)
|
||||
if(job_preferences[J.title] == JP_HIGH)
|
||||
parent.show_character_previews(image('icons/mob/ai.dmi', icon_state = resolve_ai_icon(preferred_ai_core_display), dir = SOUTH))
|
||||
return
|
||||
J = SSjob.GetJobType(/datum/job/cyborg)
|
||||
if(job_preferences[J.title] == JP_HIGH)
|
||||
parent.show_character_previews(image('icons/mob/robots.dmi', icon_state = "robot", dir = SOUTH))
|
||||
return
|
||||
|
||||
// Set up the dummy for its photoshoot
|
||||
var/mob/living/carbon/human/dummy/mannequin = generate_or_wait_for_human_dummy(DUMMY_HUMAN_SLOT_PREFERENCES)
|
||||
copy_to(mannequin)
|
||||
|
||||
// Determine what job is marked as 'High' priority, and dress them up as such.
|
||||
var/datum/job/previewJob
|
||||
var/highest_pref = 0
|
||||
@@ -43,9 +29,23 @@
|
||||
previewJob = SSjob.GetJob(job)
|
||||
highest_pref = job_preferences[job]
|
||||
|
||||
if(previewJob)
|
||||
// Silicons only need a very basic preview since there is no customization for them.
|
||||
if(istype(previewJob,/datum/job/ai))
|
||||
parent.show_character_previews(image('icons/mob/ai.dmi', icon_state = resolve_ai_icon(preferred_ai_core_display), dir = SOUTH))
|
||||
return
|
||||
if(istype(previewJob,/datum/job/cyborg))
|
||||
parent.show_character_previews(image('icons/mob/robots.dmi', icon_state = "robot", dir = SOUTH))
|
||||
return
|
||||
|
||||
// Set up the dummy for its photoshoot
|
||||
var/mob/living/carbon/human/dummy/mannequin = generate_or_wait_for_human_dummy(DUMMY_HUMAN_SLOT_PREFERENCES)
|
||||
copy_to(mannequin)
|
||||
|
||||
if(previewJob)
|
||||
mannequin.job = previewJob.title
|
||||
previewJob.equip(mannequin, TRUE, preference_source = parent)
|
||||
|
||||
COMPILE_OVERLAYS(mannequin)
|
||||
parent.show_character_previews(new /mutable_appearance(mannequin))
|
||||
unset_busy_human_dummy(DUMMY_HUMAN_SLOT_PREFERENCES)
|
||||
|
||||
Reference in New Issue
Block a user