diff --git a/code/game/machinery/recharger.dm b/code/game/machinery/recharger.dm index c54b82be38..9ee57c3c3e 100644 --- a/code/game/machinery/recharger.dm +++ b/code/game/machinery/recharger.dm @@ -72,7 +72,7 @@ obj/machinery/recharger/process() if(E.power_supply.charge < E.power_supply.maxcharge) E.power_supply.give(100) icon_state = "recharger1" - use_power(250) + use_power(250*CELLRATE) else icon_state = "recharger2" return @@ -81,7 +81,7 @@ obj/machinery/recharger/process() if(B.bcell) if(B.bcell.give(1500)) //Because otherwise it takes two minutes to fully charge due to 15k cells. - Neerti icon_state = "recharger1" - use_power(200) + use_power(200*CELLRATE) else icon_state = "recharger2" else @@ -92,7 +92,7 @@ obj/machinery/recharger/process() if(L.stored_computer.battery.charge < L.stored_computer.battery.maxcharge) L.stored_computer.battery.give(100) icon_state = "recharger1" - use_power(250) + use_power(250*CELLRATE) else icon_state = "recharger2" return @@ -136,7 +136,7 @@ obj/machinery/recharger/wallcharger/process() if(E.power_supply.charge < E.power_supply.maxcharge) E.power_supply.give(100) icon_state = "wrecharger1" - use_power(250) + use_power(250*CELLRATE) else icon_state = "wrecharger2" return @@ -145,7 +145,7 @@ obj/machinery/recharger/wallcharger/process() if(B.bcell) if(B.bcell.give(1500)) //Because otherwise it takes two minutes to fully charge due to 15k cells. - Neerti icon_state = "wrecharger1" - use_power(200) + use_power(200*CELLRATE) else icon_state = "wrecharger2" else diff --git a/code/game/objects/items/weapons/stunbaton.dm b/code/game/objects/items/weapons/stunbaton.dm index 68edece641..2e497863a6 100644 --- a/code/game/objects/items/weapons/stunbaton.dm +++ b/code/game/objects/items/weapons/stunbaton.dm @@ -111,11 +111,18 @@ if(!status) L.visible_message("[L] has been prodded with [src] by [user]. Luckily it was off.") return - - if(status) + + var/stunroll = (rand(1,100)) + + if(ishuman(L) && status) user.lastattacked = L L.lastattacker = user - + if(user == L) // Attacking yourself can't miss + stunroll = 100 + if(stunroll < 40) + L.visible_message("\red [user] misses [L] with \the [src]!") + msg_admin_attack("[key_name(user)] attempted to stun [key_name(L)] with the [src].") + return L.Stun(stunforce) L.Weaken(stunforce) L.apply_effect(STUTTER, stunforce) @@ -124,7 +131,7 @@ playsound(loc, 'sound/weapons/Egloves.ogg', 50, 1, -1) msg_admin_attack("[key_name(user)] stunned [key_name(L)] with the [src].") - + if(isrobot(loc)) var/mob/living/silicon/robot/R = loc if(R && R.cell) @@ -149,4 +156,4 @@ throwforce = 5 stunforce = 5 hitcost = 2500 - slot_flags = null \ No newline at end of file + slot_flags = null diff --git a/code/game/objects/items/weapons/weaponry.dm b/code/game/objects/items/weapons/weaponry.dm index 6b38d9396b..64d72508d3 100644 --- a/code/game/objects/items/weapons/weaponry.dm +++ b/code/game/objects/items/weapons/weaponry.dm @@ -177,7 +177,6 @@ item_state = "metalbat" force = 18 w_class = 3.0 - m_amt = 18750 //5 sheets of metal per bat in the autolathe /obj/item/weapon/butterfly name = "butterfly knife" @@ -213,12 +212,14 @@ desc = "A knife blade. Unusable as a weapon without a grip." icon = 'icons/obj/buildingobject.dmi' icon_state = "butterfly2" + matter = list("metal" = 5000) /obj/item/butterflyhandle name = "concealed knife grip" desc = "A plasteel grip with screw fittings for a blade." icon = 'icons/obj/buildingobject.dmi' icon_state = "butterfly1" + matter = list("metal" = 4000) /obj/item/butterflyhandle/attackby(obj/item/W as obj, mob/user as mob) if(istype(W,/obj/item/butterflyblade)) @@ -268,7 +269,6 @@ obj/item/weapon/wirerod force = 8 throwforce = 10 w_class = 3 - m_amt = 1875 attack_verb = list("hit", "bludgeoned", "whacked", "bonked") @@ -291,4 +291,4 @@ obj/item/weapon/wirerod/attackby(var/obj/item/I, mob/user as mob) del(I) del(src) update_icon(user) - update_icon(user) \ No newline at end of file + update_icon(user) diff --git a/code/modules/mob/living/carbon/human/human_damage.dm b/code/modules/mob/living/carbon/human/human_damage.dm index df3b61e527..502bf312c5 100644 --- a/code/modules/mob/living/carbon/human/human_damage.dm +++ b/code/modules/mob/living/carbon/human/human_damage.dm @@ -301,9 +301,9 @@ This function restores all organs. if(!organ) return if(istype(used_weapon,/obj/item/weapon)) var/obj/item/weapon/W = used_weapon //Sharp objects will always embed if they do enough damage. - if( (damage > (4*W.w_class)) && ( (sharp && !ismob(W.loc)) || prob((damage*1.5)/W.w_class) ) ) + if( (damage > (5*W.w_class)) && ( (sharp && !ismob(W.loc)) || prob((damage*1.5)/W.w_class) ) ) organ.embed(W) - else if( (damage > (4*W.w_class)) && ((!ismob(W.loc) && !sharp)) || (prob(damage/W.w_class) ) ) + else if( (damage > (5*W.w_class)) && ((!ismob(W.loc) && !sharp)) || (prob((damage - 2)/W.w_class) ) ) organ.embed(W) return 1 diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index e7120c1f1c..4a28983f75 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -987,10 +987,11 @@ mob/proc/yank_out_object() affected = organ affected.implants -= selection - H.shock_stage+=10 + H.shock_stage+=20 H.bloody_hands(S) + affected.take_damage((selection.w_class * 3), 0, 0, 1, "Embedded object extraction") - if(prob(40)) //I'M SO ANEMIC I COULD JUST -DIE-. + if(prob(selection.w_class * 5)) //I'M SO ANEMIC I COULD JUST -DIE-. var/datum/wound/internal_bleeding/I = new (15) affected.wounds += I H.custom_pain("Something tears wetly in your [affected] as [selection] is pulled free!", 1)