From aeb1f5ae689379872b246e5817fcd8fb254bdc30 Mon Sep 17 00:00:00 2001 From: mwerezak Date: Thu, 14 May 2015 01:39:49 -0400 Subject: [PATCH] Updates instances of if(cell.use(...)) --- code/game/machinery/rechargestation.dm | 3 ++- code/game/objects/items/weapons/stunbaton.dm | 3 ++- code/modules/mob/living/silicon/robot/robot.dm | 6 ++++-- code/modules/projectiles/guns/energy.dm | 2 +- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/code/game/machinery/rechargestation.dm b/code/game/machinery/rechargestation.dm index 22612983a86..db7b9d0e453 100644 --- a/code/game/machinery/rechargestation.dm +++ b/code/game/machinery/rechargestation.dm @@ -167,7 +167,8 @@ return if(!R.cell.fully_charged()) var/diff = min(R.cell.maxcharge - R.cell.charge, charge_rate) // Capped at charge_rate charge / tick - if (cell.use(diff)) + if (cell.charge >= diff) + cell.use(diff) R.cell.give(diff) if(weld_rate && R.getBruteLoss()) R.adjustBruteLoss(-1) diff --git a/code/game/objects/items/weapons/stunbaton.dm b/code/game/objects/items/weapons/stunbaton.dm index 62890d849ce..ca495ee2633 100644 --- a/code/game/objects/items/weapons/stunbaton.dm +++ b/code/game/objects/items/weapons/stunbaton.dm @@ -35,7 +35,8 @@ /obj/item/weapon/melee/baton/proc/deductcharge(var/chrgdeductamt) if(bcell) - if(bcell.use(chrgdeductamt)) + if(bcell.charge >= chrgdeductamt) + bcell.use(chrgdeductamt) return 1 else status = 0 diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index b762ec79c1c..71171212a23 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -1233,8 +1233,10 @@ var/list/robot_verbs_default = list( if(cell.charge == 0) return 0 - if(cell.use(amount * CELLRATE * CYBORG_POWER_USAGE_MULTIPLIER)) - used_power_this_tick += amount * CYBORG_POWER_USAGE_MULTIPLIER + var/power_use = amount * CYBORG_POWER_USAGE_MULTIPLIER + if(cell.charge >= CELLRATE * power_use) + cell.use(CELLRATE * power_use) + used_power_this_tick += power_use return 1 return 0 diff --git a/code/modules/projectiles/guns/energy.dm b/code/modules/projectiles/guns/energy.dm index 994256b12a9..f85f41276fe 100644 --- a/code/modules/projectiles/guns/energy.dm +++ b/code/modules/projectiles/guns/energy.dm @@ -57,7 +57,7 @@ /obj/item/weapon/gun/energy/consume_next_projectile() if(!power_supply) return null if(!ispath(projectile_type)) return null - if(!power_supply.use(charge_cost)) return null + if(power_supply.charge < charge_cost || !power_supply.use(charge_cost)) return null return new projectile_type(src) /obj/item/weapon/gun/energy/proc/get_external_power_supply()