diff --git a/code/modules/mob/living/silicon/robot/drone/drone_items.dm b/code/modules/mob/living/silicon/robot/drone/drone_items.dm index 17025ed4d8..41a44dd99f 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone_items.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone_items.dm @@ -104,6 +104,23 @@ else user << "\red Your gripper cannot hold \the [target]." + else if(istype(target,/obj/machinery/power/apc)) + var/obj/machinery/power/apc/A = target + if(A.opened) + if(A.cell) + + wrapped = A.cell + + A.cell.add_fingerprint(user) + A.cell.updateicon() + A.cell.loc = src + A.cell = null + + A.charging = 0 + A.update_icon() + + user.visible_message("\red [user] removes the power cell from [A]!", "You remove the power cell.") + //TODO: Matter decompiler. /obj/item/weapon/matter_decompiler diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index 8959bd1734..63d48df758 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -596,7 +596,7 @@ opened = 1 update_icon() else - if ( ((stat & BROKEN) || malfhack) \ + if (((stat & BROKEN) || malfhack) \ && !opened \ && W.force >= 5 \ && W.w_class >= 3.0 \