diff --git a/code/game/gamemodes/devil/true_devil/_true_devil.dm b/code/game/gamemodes/devil/true_devil/_true_devil.dm
index c1197a5742..2f0143af7d 100644
--- a/code/game/gamemodes/devil/true_devil/_true_devil.dm
+++ b/code/game/gamemodes/devil/true_devil/_true_devil.dm
@@ -92,7 +92,7 @@
visible_message("[src] easily breaks out of their handcuffs!", \
"With just a thought your handcuffs fall off.")
-/mob/living/carbon/true_devil/canUseTopic(atom/movable/M, be_close = 0)
+/mob/living/carbon/true_devil/canUseTopic(atom/movable/M, be_close=FALSE, no_dextery=FALSE)
if(incapacitated())
return 0
if(be_close && !in_range(M, src))
diff --git a/code/game/objects/items/chrono_eraser.dm b/code/game/objects/items/chrono_eraser.dm
index 7533718c17..107e4eb5db 100644
--- a/code/game/objects/items/chrono_eraser.dm
+++ b/code/game/objects/items/chrono_eraser.dm
@@ -67,7 +67,7 @@
/obj/item/gun/energy/chrono_gun/update_icon()
return
-/obj/item/gun/energy/chrono_gun/process_fire()
+/obj/item/gun/energy/chrono_gun/process_fire(atom/target, mob/living/user, message = TRUE, params = null, zone_override = "", bonus_spread = 0)
if(field)
field_disconnect(field)
..()
diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm
index cc05486895..98b28f6453 100644
--- a/code/modules/mob/dead/observer/observer.dm
+++ b/code/modules/mob/dead/observer/observer.dm
@@ -711,7 +711,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
update_icon()
-/mob/dead/observer/canUseTopic(atom/movable/AM,be_close = FALSE)
+/mob/dead/observer/canUseTopic(atom/movable/M, be_close=FALSE, no_dextery=FALSE)
return IsAdminGhost(usr)
/mob/dead/observer/is_literate()
diff --git a/code/modules/mob/emote.dm b/code/modules/mob/emote.dm
index 5487b5b284..f966702f3b 100644
--- a/code/modules/mob/emote.dm
+++ b/code/modules/mob/emote.dm
@@ -1,5 +1,5 @@
//The code execution of the emote datum is located at code/datums/emotes.dm
-/mob/emote(act, m_type = null, message = null)
+/mob/proc/emote(act, m_type = null, message = null)
act = lowertext(act)
var/param = message
var/custom_param = findchar(act, " ")
diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm
index b3ae66d0c3..9cc9227fa1 100644
--- a/code/modules/mob/living/carbon/human/human.dm
+++ b/code/modules/mob/living/carbon/human/human.dm
@@ -722,7 +722,7 @@
remove_atom_colour(TEMPORARY_COLOUR_PRIORITY, "#000000")
cut_overlay(MA)
-/mob/living/carbon/human/canUseTopic(atom/movable/M, be_close = 0)
+/mob/living/carbon/human/canUseTopic(atom/movable/M, be_close=FALSE, no_dextery=FALSE)
if(incapacitated() || lying )
return
if(!Adjacent(M) && (M.loc != src))
diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm
index 9fa2177c9b..d3ec0bf7b5 100644
--- a/code/modules/mob/living/living.dm
+++ b/code/modules/mob/living/living.dm
@@ -796,7 +796,7 @@
visible_message("[user] butchers [src].")
gib(0, 0, 1)
-/mob/living/canUseTopic(atom/movable/M, be_close = 0, no_dextery = 0)
+/mob/living/canUseTopic(atom/movable/M, be_close=FALSE, no_dextery=FALSE)
if(incapacitated())
return
if(no_dextery)
diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm
index 9ae3d18333..6970ad3feb 100644
--- a/code/modules/mob/living/silicon/ai/ai.dm
+++ b/code/modules/mob/living/silicon/ai/ai.dm
@@ -800,7 +800,7 @@
return TRUE
return ..()
-/mob/living/silicon/ai/canUseTopic(atom/movable/M, be_close = FALSE)
+/mob/living/silicon/ai/canUseTopic(atom/movable/M, be_close=FALSE, no_dextery=FALSE)
if(control_disabled || incapacitated())
return FALSE
if(be_close && !in_range(M, src))
diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm
index 50b7dee271..093b50a964 100644
--- a/code/modules/mob/living/silicon/pai/pai.dm
+++ b/code/modules/mob/living/silicon/pai/pai.dm
@@ -184,7 +184,7 @@
// See software.dm for Topic()
-/mob/living/silicon/pai/canUseTopic(atom/movable/M)
+/mob/living/silicon/pai/canUseTopic(atom/movable/M, be_close=FALSE, no_dextery=FALSE)
return TRUE
/mob/proc/makePAI(delold)
diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm
index 77161ff46c..739b0dc672 100644
--- a/code/modules/mob/living/silicon/robot/robot.dm
+++ b/code/modules/mob/living/silicon/robot/robot.dm
@@ -877,7 +877,7 @@
if(DISCONNECT) //Tampering with the wires
to_chat(connected_ai, "
NOTICE - Remote telemetry lost with [name].
")
-/mob/living/silicon/robot/canUseTopic(atom/movable/M, be_close = 0)
+/mob/living/silicon/robot/canUseTopic(atom/movable/M, be_close=FALSE, no_dextery=FALSE)
if(stat || lockcharge || low_power_mode)
return
if(be_close && !in_range(M, src))
@@ -1158,7 +1158,7 @@
return
. = ..(M, force, check_loc)
-/mob/living/silicon/robot/unbuckle_mob(mob/user)
+/mob/living/silicon/robot/unbuckle_mob(mob/user, force=FALSE)
if(iscarbon(user))
GET_COMPONENT(riding_datum, /datum/component/riding)
if(istype(riding_datum))
diff --git a/code/modules/mob/living/simple_animal/friendly/gondola.dm b/code/modules/mob/living/simple_animal/friendly/gondola.dm
index 7e8dcec1ce..9b021d902c 100644
--- a/code/modules/mob/living/simple_animal/friendly/gondola.dm
+++ b/code/modules/mob/living/simple_animal/friendly/gondola.dm
@@ -56,10 +56,7 @@
/mob/living/simple_animal/pet/gondola/IsVocal() //Gondolas are the silent walker.
return FALSE
-/mob/living/simple_animal/pet/gondola/emote()
- return
-
#undef GONDOLA_HEIGHT
#undef GONDOLA_COLOR
#undef GONDOLA_MOUSTACHE
-#undef GONDOLA_EYES
\ No newline at end of file
+#undef GONDOLA_EYES
diff --git a/code/modules/mob/living/simple_animal/hostile/hostile.dm b/code/modules/mob/living/simple_animal/hostile/hostile.dm
index 5fd32e8c25..866c2f0463 100644
--- a/code/modules/mob/living/simple_animal/hostile/hostile.dm
+++ b/code/modules/mob/living/simple_animal/hostile/hostile.dm
@@ -346,7 +346,7 @@
if(casingtype)
var/obj/item/ammo_casing/casing = new casingtype(startloc)
playsound(src, projectilesound, 100, 1)
- casing.fire_casing(targeted_atom, src, null, null, null, zone_override = ran_zone())
+ casing.fire_casing(targeted_atom, src, null, null, null, ran_zone())
else if(projectiletype)
var/obj/item/projectile/P = new projectiletype(startloc)
playsound(src, projectilesound, 100, 1)
diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm
index b7e33173d2..76c8de7bcc 100644
--- a/code/modules/mob/living/simple_animal/simple_animal.dm
+++ b/code/modules/mob/living/simple_animal/simple_animal.dm
@@ -370,7 +370,7 @@
if(target)
return new childspawn(target)
-/mob/living/simple_animal/canUseTopic(atom/movable/M, be_close = 0, no_dextery = 0)
+/mob/living/simple_animal/canUseTopic(atom/movable/M, be_close=FALSE, no_dextery=FALSE)
if(incapacitated())
return 0
if(no_dextery || dextrous)
diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm
index 6c4f0398c1..79260008ed 100644
--- a/code/modules/mob/mob.dm
+++ b/code/modules/mob/mob.dm
@@ -841,7 +841,7 @@
return 0
//Can the mob use Topic to interact with machines
-/mob/proc/canUseTopic()
+/mob/proc/canUseTopic(atom/movable/M, be_close=FALSE, no_dextery=FALSE)
return
/mob/proc/faction_check_mob(mob/target, exact_match)
diff --git a/code/modules/mob/say.dm b/code/modules/mob/say.dm
index 514846ebdf..fad3a70bcf 100644
--- a/code/modules/mob/say.dm
+++ b/code/modules/mob/say.dm
@@ -1,88 +1,85 @@
-//Speech verbs.
-/mob/verb/say_verb(message as text)
- set name = "Say"
- set category = "IC"
- if(GLOB.say_disabled) //This is here to try to identify lag problems
- to_chat(usr, "Speech is currently admin-disabled.")
- return
- if(message)
- say(message)
-
-
-/mob/verb/whisper_verb(message as text)
- set name = "Whisper"
- set category = "IC"
- if(GLOB.say_disabled) //This is here to try to identify lag problems
- to_chat(usr, "Speech is currently admin-disabled.")
- return
- whisper(message)
-
-/mob/proc/whisper(message, datum/language/language=null)
- say(message, language) //only living mobs actually whisper, everything else just talks
-
-/mob/verb/me_verb(message as text)
- set name = "Me"
- set category = "IC"
-
- if(GLOB.say_disabled) //This is here to try to identify lag problems
- to_chat(usr, "Speech is currently admin-disabled.")
- return
-
- message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN))
-
- usr.emote("me",1,message)
-
-/mob/proc/say_dead(var/message)
- var/name = real_name
- var/alt_name = ""
-
- if(GLOB.say_disabled) //This is here to try to identify lag problems
- to_chat(usr, "Speech is currently admin-disabled.")
- return
-
- if(jobban_isbanned(src, "OOC"))
- to_chat(src, "You have been banned from deadchat.")
- return
-
- if (src.client)
- if(src.client.prefs.muted & MUTE_DEADCHAT)
- to_chat(src, "You cannot talk in deadchat (muted).")
- return
-
- if(src.client.handle_spam_prevention(message,MUTE_DEADCHAT))
- return
-
- var/mob/dead/observer/O = src
- if(isobserver(src) && O.deadchat_name)
- name = "[O.deadchat_name]"
- else
- if(mind && mind.name)
- name = "[mind.name]"
- else
- name = real_name
- if(name != real_name)
- alt_name = " (died as [real_name])"
-
- var/K
-
- if(key)
- K = src.key
-
- message = src.say_quote(message, get_spans())
- var/rendered = "DEAD: [name][alt_name] [message]"
-
- deadchat_broadcast(rendered, follow_target = src, speaker_key = K)
-
-/mob/proc/check_emote(message)
- if(copytext(message, 1, 2) == "*")
- emote(copytext(message, 2))
- return 1
-
-/mob/proc/emote(var/act)
- return
-
-/mob/proc/hivecheck()
- return 0
-
-/mob/proc/lingcheck()
- return LINGHIVE_NONE
+//Speech verbs.
+/mob/verb/say_verb(message as text)
+ set name = "Say"
+ set category = "IC"
+ if(GLOB.say_disabled) //This is here to try to identify lag problems
+ to_chat(usr, "Speech is currently admin-disabled.")
+ return
+ if(message)
+ say(message)
+
+
+/mob/verb/whisper_verb(message as text)
+ set name = "Whisper"
+ set category = "IC"
+ if(GLOB.say_disabled) //This is here to try to identify lag problems
+ to_chat(usr, "Speech is currently admin-disabled.")
+ return
+ whisper(message)
+
+/mob/proc/whisper(message, datum/language/language=null)
+ say(message, language) //only living mobs actually whisper, everything else just talks
+
+/mob/verb/me_verb(message as text)
+ set name = "Me"
+ set category = "IC"
+
+ if(GLOB.say_disabled) //This is here to try to identify lag problems
+ to_chat(usr, "Speech is currently admin-disabled.")
+ return
+
+ message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN))
+
+ usr.emote("me",1,message)
+
+/mob/proc/say_dead(var/message)
+ var/name = real_name
+ var/alt_name = ""
+
+ if(GLOB.say_disabled) //This is here to try to identify lag problems
+ to_chat(usr, "Speech is currently admin-disabled.")
+ return
+
+ if(jobban_isbanned(src, "OOC"))
+ to_chat(src, "You have been banned from deadchat.")
+ return
+
+ if (src.client)
+ if(src.client.prefs.muted & MUTE_DEADCHAT)
+ to_chat(src, "You cannot talk in deadchat (muted).")
+ return
+
+ if(src.client.handle_spam_prevention(message,MUTE_DEADCHAT))
+ return
+
+ var/mob/dead/observer/O = src
+ if(isobserver(src) && O.deadchat_name)
+ name = "[O.deadchat_name]"
+ else
+ if(mind && mind.name)
+ name = "[mind.name]"
+ else
+ name = real_name
+ if(name != real_name)
+ alt_name = " (died as [real_name])"
+
+ var/K
+
+ if(key)
+ K = src.key
+
+ message = src.say_quote(message, get_spans())
+ var/rendered = "DEAD: [name][alt_name] [message]"
+
+ deadchat_broadcast(rendered, follow_target = src, speaker_key = K)
+
+/mob/proc/check_emote(message)
+ if(copytext(message, 1, 2) == "*")
+ emote(copytext(message, 2))
+ return 1
+
+/mob/proc/hivecheck()
+ return 0
+
+/mob/proc/lingcheck()
+ return LINGHIVE_NONE
\ No newline at end of file
diff --git a/code/modules/modular_computers/computers/item/processor.dm b/code/modules/modular_computers/computers/item/processor.dm
index 887e2b5dc4..cc711f531f 100644
--- a/code/modules/modular_computers/computers/item/processor.dm
+++ b/code/modules/modular_computers/computers/item/processor.dm
@@ -44,7 +44,7 @@
return machinery_computer.update_icon()
// This thing is not meant to be used on it's own, get topic data from our machinery owner.
-//obj/item/device/modular_computer/processor/canUseTopic(user, state)
+//obj/item/device/modular_computer/processor/canUseTopic(atom/movable/M, be_close=FALSE, no_dextery=FALSE)
// if(!machinery_computer)
// return 0
diff --git a/code/modules/projectiles/ammunition/energy.dm b/code/modules/projectiles/ammunition/energy.dm
index 40c198ec4e..d4d09595af 100644
--- a/code/modules/projectiles/ammunition/energy.dm
+++ b/code/modules/projectiles/ammunition/energy.dm
@@ -14,7 +14,7 @@
e_cost = 0
var/list/projectile_vars = list()
-/obj/item/ammo_casing/energy/chameleon/ready_proj()
+/obj/item/ammo_casing/energy/chameleon/ready_proj(atom/target, mob/living/user, quiet, zone_override = "")
. = ..()
if(!BB)
newshot()
diff --git a/code/modules/projectiles/firing.dm b/code/modules/projectiles/firing.dm
index dd5cf0fa04..441088c78c 100644
--- a/code/modules/projectiles/firing.dm
+++ b/code/modules/projectiles/firing.dm
@@ -20,7 +20,7 @@
update_icon()
return 1
-/obj/item/ammo_casing/proc/ready_proj(atom/target, mob/living/user, quiet, zone_override)
+/obj/item/ammo_casing/proc/ready_proj(atom/target, mob/living/user, quiet, zone_override = "")
if (!BB)
return
BB.original = target
diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm
index faa7c705bd..8efb7ce9e1 100644
--- a/code/modules/projectiles/gun.dm
+++ b/code/modules/projectiles/gun.dm
@@ -203,7 +203,7 @@
/obj/item/gun/proc/recharge_newshot()
return
-/obj/item/gun/proc/process_burst(mob/living/user, atom/target, message = TRUE, params, zone_override, sprd = 0, randomized_gun_spread = 0, randomized_bonus_spread = 0, rand_spr = 0, iteration = 0)
+/obj/item/gun/proc/process_burst(mob/living/user, atom/target, message = TRUE, params=null, zone_override = "", sprd = 0, randomized_gun_spread = 0, randomized_bonus_spread = 0, rand_spr = 0, iteration = 0)
if(!user || !firing_burst)
firing_burst = FALSE
return FALSE
@@ -236,7 +236,7 @@
update_icon()
return TRUE
-/obj/item/gun/proc/process_fire(atom/target as mob|obj|turf, mob/living/user as mob|obj, message = TRUE, params, zone_override, bonus_spread = 0)
+/obj/item/gun/proc/process_fire(atom/target, mob/living/user, message = TRUE, params = null, zone_override = "", bonus_spread = 0)
add_fingerprint(user)
if(semicd)
diff --git a/code/modules/projectiles/guns/ballistic/laser_gatling.dm b/code/modules/projectiles/guns/ballistic/laser_gatling.dm
index 2dc6dd9857..48bda4a86e 100644
--- a/code/modules/projectiles/guns/ballistic/laser_gatling.dm
+++ b/code/modules/projectiles/guns/ballistic/laser_gatling.dm
@@ -129,7 +129,7 @@
else
qdel(src)
-/obj/item/gun/ballistic/minigun/process_fire(atom/target as mob|obj|turf, mob/living/user as mob|obj, message = 1, params, zone_override)
+/obj/item/gun/ballistic/minigun/process_fire(atom/target, mob/living/user, message = TRUE, params = null, zone_override = "", bonus_spread = 0)
if(ammo_pack)
if(ammo_pack.overheat < ammo_pack.overheat_max)
ammo_pack.overheat += burst_size
diff --git a/code/modules/projectiles/guns/ballistic/revolver.dm b/code/modules/projectiles/guns/ballistic/revolver.dm
index 32b490a8e6..aefa7826a0 100644
--- a/code/modules/projectiles/guns/ballistic/revolver.dm
+++ b/code/modules/projectiles/guns/ballistic/revolver.dm
@@ -97,7 +97,7 @@
"The Peacemaker" = "detective_peacemaker"
)
-/obj/item/gun/ballistic/revolver/detective/process_fire(atom/target as mob|obj|turf, mob/living/user as mob|obj, message = 1, params, zone_override = "")
+/obj/item/gun/ballistic/revolver/detective/process_fire(atom/target, mob/living/user, message = TRUE, params = null, zone_override = "", bonus_spread = 0)
if(magazine.caliber != initial(magazine.caliber))
if(prob(70 - (magazine.ammo_count() * 10))) //minimum probability of 10, maximum of 60
playsound(user, fire_sound, 50, 1)
diff --git a/code/modules/projectiles/guns/beam_rifle.dm b/code/modules/projectiles/guns/beam_rifle.dm
index 8445a9e7e6..fc00079d35 100644
--- a/code/modules/projectiles/guns/beam_rifle.dm
+++ b/code/modules/projectiles/guns/beam_rifle.dm
@@ -383,8 +383,8 @@
structure_piercing = BR.structure_piercing
structure_bleed_coeff = BR.structure_bleed_coeff
-/obj/item/ammo_casing/energy/beam_rifle/ready_proj(atom/target, mob/living/user, quiet, zone_override)
- . = ..(target, user, quiet, zone_override)
+/obj/item/ammo_casing/energy/beam_rifle/ready_proj(atom/target, mob/living/user, quiet, zone_override = "")
+ . = ..()
var/obj/item/projectile/beam/beam_rifle/hitscan/HS_BB = BB
if(!istype(HS_BB))
return
diff --git a/code/modules/projectiles/guns/energy.dm b/code/modules/projectiles/guns/energy.dm
index b52a56426b..5889ceb69d 100644
--- a/code/modules/projectiles/guns/energy.dm
+++ b/code/modules/projectiles/guns/energy.dm
@@ -102,12 +102,12 @@
chambered = null //either way, released the prepared shot
recharge_newshot() //try to charge a new shot
-/obj/item/gun/energy/process_fire()
+/obj/item/gun/energy/process_fire(atom/target, mob/living/user, message = TRUE, params = null, zone_override = "", bonus_spread = 0)
if(!chambered && can_shoot())
process_chamber() // If the gun was drained and then recharged, load a new shot.
return ..()
-/obj/item/gun/energy/process_burst()
+/obj/item/gun/energy/process_burst(mob/living/user, atom/target, message = TRUE, params = null, zone_override="", sprd = 0, randomized_gun_spread = 0, randomized_bonus_spread = 0, rand_spr = 0, iteration = 0)
if(!chambered && can_shoot())
process_chamber() // Ditto.
return ..()
diff --git a/code/modules/projectiles/guns/magic/staff.dm b/code/modules/projectiles/guns/magic/staff.dm
index ee0826f677..86a2f8d4c1 100644
--- a/code/modules/projectiles/guns/magic/staff.dm
+++ b/code/modules/projectiles/guns/magic/staff.dm
@@ -45,9 +45,9 @@
/obj/item/projectile/magic/death, /obj/item/projectile/magic/teleport, /obj/item/projectile/magic/door, /obj/item/projectile/magic/aoe/fireball,
/obj/item/projectile/magic/spellblade, /obj/item/projectile/magic/arcane_barrage)
-/obj/item/gun/magic/staff/chaos/process_fire(atom/target as mob|obj|turf, mob/living/user as mob|obj, message = 1, params, zone_override, bonus_spread = 0)
+/obj/item/gun/magic/staff/chaos/process_fire(atom/target, mob/living/user, message = TRUE, params = null, zone_override = "", bonus_spread = 0)
chambered.projectile_type = pick(allowed_projectile_types)
- . = ..(target, user, message, params, zone_override, bonus_spread)
+ . = ..()
/obj/item/gun/magic/staff/door
name = "staff of door creation"
diff --git a/code/modules/projectiles/guns/medbeam.dm b/code/modules/projectiles/guns/medbeam.dm
index d2d7437577..79cafe0dd6 100644
--- a/code/modules/projectiles/guns/medbeam.dm
+++ b/code/modules/projectiles/guns/medbeam.dm
@@ -41,7 +41,7 @@
on_beam_release(current_target)
current_target = null
-/obj/item/gun/medbeam/process_fire(atom/target as mob|obj|turf, mob/living/user as mob|obj, message = 1, params, zone_override)
+/obj/item/gun/medbeam/process_fire(atom/target, mob/living/user, message = TRUE, params = null, zone_override = "", bonus_spread = 0)
if(isliving(user))
add_fingerprint(user)