From 43d07e92aee95f93b40bcb71017a0194275adcb7 Mon Sep 17 00:00:00 2001 From: Killian <49700375+KillianKirilenko@users.noreply.github.com> Date: Mon, 17 Apr 2023 13:52:46 +0100 Subject: [PATCH] Update stunbaton.dm --- code/game/objects/items/weapons/stunbaton.dm | 21 ++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/code/game/objects/items/weapons/stunbaton.dm b/code/game/objects/items/weapons/stunbaton.dm index 29cb4630ce6..3241f2c3dbb 100644 --- a/code/game/objects/items/weapons/stunbaton.dm +++ b/code/game/objects/items/weapons/stunbaton.dm @@ -22,6 +22,7 @@ var/obj/item/weapon/cell/bcell = null var/hitcost = 240 var/use_external_power = FALSE //only used to determine if it's a cyborg baton + var/grip_safety = TRUE /obj/item/weapon/melee/baton/New() ..() @@ -69,18 +70,18 @@ update_icon() return -/obj/item/weapon/melee/baton/proc/deductcharge(var/chrgdeductamt) +/obj/item/weapon/melee/baton/proc/deductcharge() if(status == 1) //Only deducts charge when it's on if(bcell) - if(bcell.checked_use(chrgdeductamt)) + if(bcell.checked_use(hitcost)) return 1 else return 0 return null -/obj/item/weapon/melee/baton/proc/powercheck(var/chrgdeductamt) +/obj/item/weapon/melee/baton/proc/powercheck() if(bcell) - if(bcell.charge < chrgdeductamt) + if(bcell.charge < hitcost) status = 0 update_icon() @@ -97,6 +98,13 @@ else set_light(0) +/obj/item/weapon/melee/baton/dropped() + ..() + if(status && grip_safety) + status = 0 + visible_message("\The [src]'s grip safety engages!") + update_icon() + /obj/item/weapon/melee/baton/examine(mob/user) . = ..() @@ -142,7 +150,7 @@ var/mob/living/silicon/robot/R = loc if (istype(R)) bcell = R.cell - if(bcell && bcell.charge > hitcost) + if(bcell && bcell.charge >= hitcost) status = !status to_chat(user, "[src] is now [status ? "on" : "off"].") playsound(src, "sparks", 75, 1, -1) @@ -222,9 +230,10 @@ throwforce = 5 stunforce = 0 agonyforce = 60 //same force as a stunbaton, but uses way more charge. - hitcost = 2500 + hitcost = 2500 //runs off the same kind of big batteries as APCs, not small cells! attack_verb = list("poked") slot_flags = null + grip_safety = FALSE /obj/item/weapon/melee/baton/cattleprod/attackby(obj/item/weapon/W, mob/user) if(istype(W, /obj/item/weapon/cell))