diff --git a/code/_globalvars/lists/objects.dm b/code/_globalvars/lists/objects.dm index 4707ebf0a96..a546e04b7be 100644 --- a/code/_globalvars/lists/objects.dm +++ b/code/_globalvars/lists/objects.dm @@ -102,5 +102,9 @@ GLOBAL_LIST_INIT(prototype_organs, typecacheof(list( /obj/item/organ/ears/dullahan, /obj/item/organ/tongue/dullahan, /obj/item/organ/eyes/dullahan, + // BUBBER EDIT START + /obj/item/organ/borer_body, // Borer bodies are an abstract base for borers to live in + /obj/item/organ/genital, // Base type which shouldn't appear ingame + // BUBBER EDIT END ), only_root_path = TRUE)) diff --git a/modular_skyrat/modules/cortical_borer/code/cortical_borer.dm b/modular_skyrat/modules/cortical_borer/code/cortical_borer.dm index ef0afa2e6d0..7cd6a8669e2 100644 --- a/modular_skyrat/modules/cortical_borer/code/cortical_borer.dm +++ b/modular_skyrat/modules/cortical_borer/code/cortical_borer.dm @@ -46,8 +46,6 @@ GLOBAL_LIST_EMPTY(cortical_borers) /obj/item/organ/borer_body/on_mob_insert(mob/living/carbon/carbon_target, special, movement_flags) . = ..() - if(isnull(borer)) - return // BUBBER TODO: Refactor this mess for(var/datum/borer_focus/body_focus as anything in borer.body_focuses) body_focus.on_add() carbon_target.apply_status_effect(/datum/status_effect/grouped/screwy_hud/fake_healthy, type) diff --git a/modular_skyrat/modules/customization/modules/surgery/organs/genitals.dm b/modular_skyrat/modules/customization/modules/surgery/organs/genitals.dm index fce35dec64b..a0881ddce74 100644 --- a/modular_skyrat/modules/customization/modules/surgery/organs/genitals.dm +++ b/modular_skyrat/modules/customization/modules/surgery/organs/genitals.dm @@ -1,6 +1,6 @@ /obj/item/organ/genital color = "#fcccb3" - organ_flags = ORGAN_ORGANIC | ORGAN_UNREMOVABLE + organ_flags = ORGAN_ORGANIC | ORGAN_UNREMOVABLE | ORGAN_EXTERNAL ///Size value of the genital, needs to be translated to proper lengths/diameters/cups var/genital_size = 1 ///Sprite name of the genital, it's what shows up on character creation diff --git a/modular_skyrat/modules/customization/modules/surgery/organs/head_accessory.dm b/modular_skyrat/modules/customization/modules/surgery/organs/head_accessory.dm index 6f8b3255f71..99d804f2a44 100644 --- a/modular_skyrat/modules/customization/modules/surgery/organs/head_accessory.dm +++ b/modular_skyrat/modules/customization/modules/surgery/organs/head_accessory.dm @@ -23,4 +23,4 @@ return draw_color /datum/bodypart_overlay/mutant/head_accessory/get_global_feature_list() - return SSaccessories.sprite_accessories["head_accessory"] + return SSaccessories.sprite_accessories["head_acc"] diff --git a/modular_skyrat/modules/customization/modules/surgery/organs/neck_accessory.dm b/modular_skyrat/modules/customization/modules/surgery/organs/neck_accessory.dm index 9f421623ce7..59d9d04220f 100644 --- a/modular_skyrat/modules/customization/modules/surgery/organs/neck_accessory.dm +++ b/modular_skyrat/modules/customization/modules/surgery/organs/neck_accessory.dm @@ -23,4 +23,4 @@ return draw_color /datum/bodypart_overlay/mutant/neck_accessory/get_global_feature_list() - return SSaccessories.sprite_accessories["neck_accessory"] + return SSaccessories.sprite_accessories["neck_acc"] diff --git a/modular_skyrat/modules/modular_implants/code/nifs.dm b/modular_skyrat/modules/modular_implants/code/nifs.dm index 27216eeee40..8d0ac9f8e8c 100644 --- a/modular_skyrat/modules/modular_implants/code/nifs.dm +++ b/modular_skyrat/modules/modular_implants/code/nifs.dm @@ -165,11 +165,14 @@ if(linked_mob) UnregisterSignal(linked_mob, COMSIG_LIVING_DEATH, PROC_REF(damage_on_death)) + linked_mob = null QDEL_LIST(loaded_nifsofts) ///Installs preinstalled NIFSofts /obj/item/organ/cyberimp/brain/nif/proc/install_preinstalled_nifsofts() + if(isnull(linked_mob)) // BUBBER TODO: Fix the race condition here + return FALSE if(!preinstalled_nifsofts) return FALSE