From b353ec7d01dd75c1128413abbe32e458743f2626 Mon Sep 17 00:00:00 2001 From: Atermonera Date: Mon, 24 Feb 2020 13:24:38 -0800 Subject: [PATCH] Fixes MCs not being rechargable --- code/game/machinery/recharger.dm | 25 +++---------------- .../computers/modular_computer/power.dm | 6 +++++ .../hardware/battery_module.dm | 5 +++- 3 files changed, 14 insertions(+), 22 deletions(-) diff --git a/code/game/machinery/recharger.dm b/code/game/machinery/recharger.dm index e999742507..4b1a3a561e 100644 --- a/code/game/machinery/recharger.dm +++ b/code/game/machinery/recharger.dm @@ -72,7 +72,11 @@ if(EW.use_external_power) to_chat(user, "\The [EW] has no recharge port.") return +<<<<<<< HEAD else if(!G.get_cell() && !istype(G, /obj/item/ammo_casing/microbattery)) //VOREStation Edit: NSFW charging +======= + if(!G.get_cell()) +>>>>>>> 72f8a9c... Merge pull request #6722 from Heroman3003/powerfix to_chat(user, "\The [G] does not have a battery installed.") return @@ -125,27 +129,6 @@ update_use_power(1) icon_state = icon_state_idle else - if(istype(charging, /obj/item/modular_computer)) - var/obj/item/modular_computer/C = charging - if(!C.battery_module.battery.fully_charged()) - icon_state = icon_state_charging - C.battery_module.battery.give(CELLRATE*efficiency) - update_use_power(2) - else - icon_state = icon_state_charged - update_use_power(1) - return - else if(istype(charging, /obj/item/weapon/computer_hardware/battery_module)) - var/obj/item/weapon/computer_hardware/battery_module/BM = charging - if(!BM.battery.fully_charged()) - icon_state = icon_state_charging - BM.battery.give(CELLRATE*efficiency) - update_use_power(2) - else - icon_state = icon_state_charged - update_use_power(1) - return - var/obj/item/weapon/cell/C = charging.get_cell() if(istype(C)) if(!C.fully_charged()) diff --git a/code/modules/modular_computers/computers/modular_computer/power.dm b/code/modules/modular_computers/computers/modular_computer/power.dm index 48871619fa..b3746d55d4 100644 --- a/code/modules/modular_computers/computers/modular_computer/power.dm +++ b/code/modules/modular_computers/computers/modular_computer/power.dm @@ -16,6 +16,12 @@ return TRUE return FALSE +/obj/item/modular_computer/get_cell() + if(battery_module) + return battery_module.battery + else + ..() + // Tries to use power from APC, if present. /obj/item/modular_computer/proc/apc_power(var/power_usage = 0) apc_powered = TRUE diff --git a/code/modules/modular_computers/hardware/battery_module.dm b/code/modules/modular_computers/hardware/battery_module.dm index 3b7ea1164b..df16c5864f 100644 --- a/code/modules/modular_computers/hardware/battery_module.dm +++ b/code/modules/modular_computers/hardware/battery_module.dm @@ -76,4 +76,7 @@ /obj/item/weapon/computer_hardware/battery_module/proc/charge_to_full() if(battery) - battery.charge = battery.maxcharge \ No newline at end of file + battery.charge = battery.maxcharge + +/obj/item/weapon/computer_hardware/battery_module/get_cell() + return battery \ No newline at end of file