diff --git a/code/controllers/subsystems/job.dm b/code/controllers/subsystems/job.dm index ac2764a201b..87164044c27 100644 --- a/code/controllers/subsystems/job.dm +++ b/code/controllers/subsystems/job.dm @@ -842,8 +842,9 @@ else metadata = list() var/obj/item/organ/A = G.spawn_item(H, metadata, H) - var/obj/item/organ/external/affected = H.get_organ(A.parent_organ) - A.replaced(H, affected) + if(!istype(A, /obj/item/organ/external)) + var/obj/item/organ/external/affected = H.get_organ(A.parent_organ) + A.replaced(H, affected) H.update_body() Debug("EA/([H]): Complete.") diff --git a/code/modules/client/preference_setup/loadout/loadout.dm b/code/modules/client/preference_setup/loadout/loadout.dm index 981dc492d7f..9f26ee7c11d 100644 --- a/code/modules/client/preference_setup/loadout/loadout.dm +++ b/code/modules/client/preference_setup/loadout/loadout.dm @@ -437,6 +437,11 @@ var/list/gear_datums = list() gt.tweak_gear_data(metadata["[gt]"], gd, H) else gt.tweak_gear_data(gt.get_default(), gd, H) + if(ispath(gd.path, /obj/item/organ/external)) + var/obj/item/organ/external/external_aug = gd.path + var/obj/item/organ/external/replaced_limb = H.get_organ(initial(external_aug.limb_name)) + replaced_limb.droplimb(TRUE, DROPLIMB_EDGE, FALSE) + qdel(replaced_limb) var/item = new gd.path(gd.location) for(var/datum/gear_tweak/gt in gear_tweaks) if(metadata["[gt]"]) diff --git a/html/changelogs/geeves-fix_autakh_grasper.yml b/html/changelogs/geeves-fix_autakh_grasper.yml new file mode 100644 index 00000000000..f7371fcea92 --- /dev/null +++ b/html/changelogs/geeves-fix_autakh_grasper.yml @@ -0,0 +1,6 @@ +author: Geeves + +delete-after: True + +changes: + - bugfix: "Spawning with Aut'akh graspers will no longer duplicate your right hand." \ No newline at end of file