diff --git a/code/game/jobs/job_controller.dm b/code/game/jobs/job_controller.dm index d5322d5f0e..b5d42ba2f6 100644 --- a/code/game/jobs/job_controller.dm +++ b/code/game/jobs/job_controller.dm @@ -389,9 +389,6 @@ var/global/datum/controller/occupations/job_master H << "Your current species, job or whitelist status does not permit you to spawn with [thing]!" continue - if(G.exploitable) - H.amend_exploitable(G.path) - if(G.slot == "implant") var/obj/item/weapon/implant/I = G.spawn_item(H) I.invisibility = 100 diff --git a/code/game/objects/items/weapons/implants/implant.dm b/code/game/objects/items/weapons/implants/implant.dm index c00d396e4d..ff4146b8a0 100644 --- a/code/game/objects/items/weapons/implants/implant.dm +++ b/code/game/objects/items/weapons/implants/implant.dm @@ -66,8 +66,7 @@ /obj/item/weapon/implant/proc/implant_loadout(var/mob/living/carbon/human/H) if(H) - var/obj/item/organ/external/affected = H.organs_by_name[initialize_loc] - if(handle_implant(H, affected)) + if(handle_implant(H, initialize_loc)) invisibility = initial(invisibility) post_implant(H) diff --git a/code/game/objects/items/weapons/implants/implantdud.dm b/code/game/objects/items/weapons/implants/implantdud.dm index 896ea2358a..110051e58d 100644 --- a/code/game/objects/items/weapons/implants/implantdud.dm +++ b/code/game/objects/items/weapons/implants/implantdud.dm @@ -19,12 +19,3 @@ icon = 'icons/obj/device.dmi' icon_state = "implant" roundstart = FALSE - -/obj/item/weapon/implant/dud/Initialize() - ..() - if(roundstart) - invisibility = 100 - ..() - spawn(3) - if(!ishuman(loc) && !QDELETED(src)) - qdel(src) diff --git a/code/game/objects/items/weapons/implants/neuralbasic.dm b/code/game/objects/items/weapons/implants/neuralbasic.dm index 0c5fe2b3da..18d472154b 100644 --- a/code/game/objects/items/weapons/implants/neuralbasic.dm +++ b/code/game/objects/items/weapons/implants/neuralbasic.dm @@ -105,10 +105,3 @@ Implant Specifics:
"} my_brain.take_damage(15) my_brain = null return - -/obj/item/weapon/implant/neural/roundstart/Initialize() - invisibility = 100 - ..() - spawn(3) - if(!ishuman(loc) && !QDELETED(src)) - qdel(src) diff --git a/code/modules/client/preference_setup/loadout/loadout.dm b/code/modules/client/preference_setup/loadout/loadout.dm index a5e6024653..c2e1dc52a1 100644 --- a/code/modules/client/preference_setup/loadout/loadout.dm +++ b/code/modules/client/preference_setup/loadout/loadout.dm @@ -271,4 +271,7 @@ var/list/gear_datums = list() var/item = new gd.path(gd.location) for(var/datum/gear_tweak/gt in gear_tweaks) gt.tweak_item(item, metadata["[gt]"]) + var/mob/M = location + if(istype(M) && exploitable) //Update exploitable info records for the mob without creating a duplicate object at their feet. + M.amend_exploitable(item) return item diff --git a/code/modules/client/preference_setup/loadout/loadout_utility.dm b/code/modules/client/preference_setup/loadout/loadout_utility.dm index 44e0bc10ff..40fe71a087 100644 --- a/code/modules/client/preference_setup/loadout/loadout_utility.dm +++ b/code/modules/client/preference_setup/loadout/loadout_utility.dm @@ -127,7 +127,7 @@ /datum/gear/utility/implant/neural display_name = "implant, neural assistance web" description = "A complex web implanted into the subject, medically in order to compensate for neurological disease." - path = /obj/item/weapon/implant/neural/roundstart + path = /obj/item/weapon/implant/neural cost = 6 /datum/gear/utility/implant/dud1 diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index ec032d7b46..d8c9412ff2 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -1110,10 +1110,10 @@ mob/proc/yank_out_object() //Exploitable Info Update /mob/proc/amend_exploitable(var/obj/item/I) - var/obj/item/exploit_item = new I(src.loc) - exploit_addons |= exploit_item - var/exploitmsg = html_decode("\n" + "Has " + exploit_item.name + ".") - exploit_record += exploitmsg + if(istype(I)) + exploit_addons |= I + var/exploitmsg = html_decode("\n" + "Has " + I.name + ".") + exploit_record += exploitmsg /client/proc/check_has_body_select() return mob && mob.hud_used && istype(mob.zone_sel, /obj/screen/zone_sel)