diff --git a/code/game/objects/items/balls.dm b/code/game/objects/items/balls.dm
index 59b47bacbd..c24f58208b 100644
--- a/code/game/objects/items/balls.dm
+++ b/code/game/objects/items/balls.dm
@@ -20,7 +20,7 @@
throw_range = 14
w_class = WEIGHT_CLASS_SMALL
-/obj/item/toy/tennis/pre_altattackby(atom/A, mob/living/user, params) //checks if it can do right click memes
+/obj/item/toy/tennis/alt_pre_attack(atom/A, mob/living/user, params) //checks if it can do right click memes
altafterattack(A, user, TRUE, params)
return TRUE
diff --git a/code/game/objects/items/melee/energy.dm b/code/game/objects/items/melee/energy.dm
index 15a686bae6..3ca489542f 100644
--- a/code/game/objects/items/melee/energy.dm
+++ b/code/game/objects/items/melee/energy.dm
@@ -259,7 +259,7 @@
light_color = "#37FFF7"
actions_types = list()
-/obj/item/melee/transforming/energy/sword/cx/pre_altattackby(atom/A, mob/living/user, params) //checks if it can do right click memes
+/obj/item/melee/transforming/energy/sword/cx/alt_pre_attack(atom/A, mob/living/user, params) //checks if it can do right click memes
altafterattack(A, user, TRUE, params)
return TRUE
diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm
index 5d97866f95..2e5cc1c689 100644
--- a/code/game/objects/items/stunbaton.dm
+++ b/code/game/objects/items/stunbaton.dm
@@ -17,8 +17,9 @@
var/stamforce = 25
var/status = FALSE
+ var/knockdown = TRUE
var/obj/item/stock_parts/cell/cell
- var/hitcost = 1000
+ var/hitcost = 750
var/throw_hit_chance = 35
var/preload_cell_type //if not empty the baton starts with this type of cell
@@ -52,7 +53,7 @@
baton_stun(hit_atom)
/obj/item/melee/baton/loaded //this one starts with a cell pre-installed.
- preload_cell_type = /obj/item/stock_parts/cell/high
+ preload_cell_type = /obj/item/stock_parts/cell/high/plus
/obj/item/melee/baton/proc/deductcharge(chrgdeductamt, chargecheck = TRUE, explode = TRUE)
var/obj/item/stock_parts/cell/copper_top = get_cell()
@@ -143,7 +144,7 @@
..()
/obj/item/melee/baton/alt_pre_attack(atom/A, mob/living/user, params)
- . = common_baton_melee(M, user, TRUE) //return true (attackchain interrupt) if this also returns true. no harm-disarming.
+ return common_baton_melee(A, user, TRUE) //return true (attackchain interrupt) if this also returns true. no harm-disarming.
//return TRUE to interrupt attack chain.
/obj/item/melee/baton/proc/common_baton_melee(mob/M, mob/living/user, disarming = FALSE)
@@ -188,7 +189,8 @@
stunpwr *= round(stuncharge/hitcost, 0.1)
if(!disarming)
- L.Knockdown(100, override_stamdmg = 0) //knockdown
+ if(knockdown)
+ L.Knockdown(100, override_stamdmg = 0) //knockdown
L.adjustStaminaLoss(stunpwr)
else
L.drop_all_held_items() //no knockdown/stamina damage, instead disarm.
@@ -214,7 +216,7 @@
user.visible_message("[user] accidentally hits [user.p_them()]self with [src]!", \
"You accidentally hit yourself with [src]!")
SEND_SIGNAL(user, COMSIG_LIVING_MINOR_SHOCK)
- user.Knockdown(stunforce*3)
+ user.Knockdown(stamforce*6)
playsound(loc, 'sound/weapons/egloves.ogg', 50, 1, -1)
deductcharge(hitcost)
@@ -276,8 +278,9 @@
w_class = WEIGHT_CLASS_BULKY
force = 3
throwforce = 5
- stunforce = 60
- hitcost = 2000
+ stamforce = 25
+ hitcost = 1000
+ knockdown = FALSE
throw_hit_chance = 10
slot_flags = ITEM_SLOT_BACK
var/obj/item/assembly/igniter/sparkler
diff --git a/code/game/objects/items/teleprod.dm b/code/game/objects/items/teleprod.dm
index f427bf6c4c..bab4d6a488 100644
--- a/code/game/objects/items/teleprod.dm
+++ b/code/game/objects/items/teleprod.dm
@@ -16,7 +16,7 @@
user.visible_message("[user] accidentally hits [user.p_them()]self with [src]!", \
"You accidentally hit yourself with [src]!")
SEND_SIGNAL(user, COMSIG_LIVING_MINOR_SHOCK)
- user.Knockdown(stunforce*3)
+ user.Knockdown(stamforce * 6)
playsound(loc, 'sound/weapons/egloves.ogg', 50, 1, -1)
if(do_teleport(user, get_turf(user), 50, channel = TELEPORT_CHANNEL_BLUESPACE))
deductcharge(hitcost)
diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm
index 6782ba0098..827ed43bfd 100644
--- a/code/game/objects/items/toys.dm
+++ b/code/game/objects/items/toys.dm
@@ -289,7 +289,7 @@
var/light_brightness = 3
actions_types = list()
-/obj/item/toy/sword/cx/pre_altattackby(atom/A, mob/living/user, params) //checks if it can do right click memes
+/obj/item/toy/sword/cx/alt_pre_attack(atom/A, mob/living/user, params) //checks if it can do right click memes
altafterattack(A, user, TRUE, params)
return TRUE
diff --git a/code/game/objects/items/twohanded.dm b/code/game/objects/items/twohanded.dm
index fc9e138f4b..a551f642d0 100644
--- a/code/game/objects/items/twohanded.dm
+++ b/code/game/objects/items/twohanded.dm
@@ -510,7 +510,7 @@
/obj/item/twohanded/dualsaber/hypereutactic/chaplain/IsReflect()
return FALSE
-/obj/item/twohanded/dualsaber/hypereutactic/pre_altattackby(atom/A, mob/living/user, params) //checks if it can do right click memes
+/obj/item/twohanded/dualsaber/hypereutactic/alt_pre_attack(atom/A, mob/living/user, params) //checks if it can do right click memes
altafterattack(A, user, TRUE, params)
return TRUE
diff --git a/code/game/objects/structures/watercloset.dm b/code/game/objects/structures/watercloset.dm
index a8f95e30da..359436dc2e 100644
--- a/code/game/objects/structures/watercloset.dm
+++ b/code/game/objects/structures/watercloset.dm
@@ -528,8 +528,8 @@
if(B.cell)
if(B.cell.charge > 0 && B.status == 1)
flick("baton_active", src)
- var/stunforce = B.stunforce
- user.Knockdown(stunforce)
+ var/stunforce = B.stamforce
+ user.Knockdown(stunforce * 2)
user.stuttering = stunforce/20
B.deductcharge(B.hitcost)
user.visible_message("[user] shocks [user.p_them()]self while attempting to wash the active [B.name]!", \
diff --git a/code/modules/reagents/reagent_containers/rags.dm b/code/modules/reagents/reagent_containers/rags.dm
index 59c956acd6..081d7a81de 100644
--- a/code/modules/reagents/reagent_containers/rags.dm
+++ b/code/modules/reagents/reagent_containers/rags.dm
@@ -52,7 +52,7 @@
SEND_SIGNAL(A, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_MEDIUM)
return
-/obj/item/reagent_containers/rag/pre_altattackby(mob/living/M, mob/living/user, params)
+/obj/item/reagent_containers/rag/alt_pre_attack(mob/living/M, mob/living/user, params)
if(istype(M) && user.a_intent == INTENT_HELP)
user.changeNext_move(CLICK_CD_MELEE)
if(M.on_fire)