diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index ae3dc7189e..ca2c259bb5 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -1373,7 +1373,7 @@ // next: take from or charge to the cell, depending on how much is left if(cell && !shorted) if(cur_excess > 0) - var/charging_cell = min(cur_excess*GLOB.CELLRATE, cell.maxcharge * GLOB.CHARGELEVEL) + var/charging_cell = min(min(cur_excess*GLOB.CELLRATE, cell.maxcharge * GLOB.CHARGELEVEL), cell.maxcharge - cell.charge) cell.give(charging_cell) add_load(charging_cell/GLOB.CELLRATE) lastused_total += charging_cell