diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index 4cda181ee4f..6bbd5ac0d2f 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -416,7 +416,11 @@ /obj/item/clothing/mask/gas/sechailer/cyborg ) emag_modules = list(/obj/item/gun/energy/laser/cyborg) - special_rechargables = list(/obj/item/melee/baton/loaded, /obj/item/gun/energy/disabler/cyborg) + special_rechargables = list( + /obj/item/melee/baton/loaded, + /obj/item/gun/energy/disabler/cyborg, + /obj/item/gun/energy/laser/cyborg + ) /obj/item/robot_module/security/update_cells(unlink_cell = FALSE) var/obj/item/melee/baton/B = locate(/obj/item/melee/baton/loaded) in modules diff --git a/code/modules/projectiles/guns/energy.dm b/code/modules/projectiles/guns/energy.dm index 6f38c7e2f01..c7b5f933c7c 100644 --- a/code/modules/projectiles/guns/energy.dm +++ b/code/modules/projectiles/guns/energy.dm @@ -203,3 +203,12 @@ var/obj/item/ammo_casing/energy/shot = ammo_type[select] //Necessary to find cost of shot if(R.cell.use(shot.e_cost)) //Take power from the borg... cell.give(shot.e_cost) //... to recharge the shot + +/obj/item/gun/energy/cyborg_recharge(coeff, emagged) + if(cell.charge < cell.maxcharge) + var/obj/item/ammo_casing/energy/E = ammo_type[select] + cell.give(E.e_cost * coeff) + on_recharge() + update_icon() + else + charge_tick = 0 diff --git a/code/modules/projectiles/guns/energy/stun.dm b/code/modules/projectiles/guns/energy/stun.dm index 140c14171eb..2247a1a6c9c 100644 --- a/code/modules/projectiles/guns/energy/stun.dm +++ b/code/modules/projectiles/guns/energy/stun.dm @@ -55,12 +55,3 @@ /obj/item/gun/energy/disabler/cyborg/newshot() ..() robocharge() - -/obj/item/gun/energy/disabler/cyborg/cyborg_recharge(coeff, emagged) - if(cell.charge < cell.maxcharge) - var/obj/item/ammo_casing/energy/E = ammo_type[select] - cell.give(E.e_cost * coeff) - on_recharge() - update_icon() - else - charge_tick = 0