Merge pull request #6678 from VOREStation/upstream-merge-6722

[MIRROR] Fixes MCs not being rechargable
This commit is contained in:
Novacat
2020-02-24 21:13:21 -05:00
committed by GitHub
3 changed files with 11 additions and 23 deletions

View File

@@ -72,7 +72,7 @@
if(EW.use_external_power)
to_chat(user, "<span class='notice'>\The [EW] has no recharge port.</span>")
return
else if(!G.get_cell() && !istype(G, /obj/item/ammo_casing/microbattery)) //VOREStation Edit: NSFW charging
if(!G.get_cell() && !istype(G, /obj/item/ammo_casing/microbattery)) //VOREStation Edit: NSFW charging
to_chat(user, "\The [G] does not have a battery installed.")
return
@@ -125,27 +125,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())

View File

@@ -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

View File

@@ -76,4 +76,7 @@
/obj/item/weapon/computer_hardware/battery_module/proc/charge_to_full()
if(battery)
battery.charge = battery.maxcharge
battery.charge = battery.maxcharge
/obj/item/weapon/computer_hardware/battery_module/get_cell()
return battery