diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm
index 8965432aac0..7d2568a7199 100644
--- a/code/modules/projectiles/guns/energy/special.dm
+++ b/code/modules/projectiles/guns/energy/special.dm
@@ -342,9 +342,9 @@
user << browse("
Temperature Gun Configuration
[dat]", "window=tempgun;size=510x120")
onclose(user, "tempgun")
-/obj/item/gun/energy/temperature/attackby(obj/item/W as obj, mob/user as mob)
- if(istype(W, /obj/item/card/emag) && !emagged)
- emagged = 1
+/obj/item/gun/energy/temperature/emag_act(mob/user)
+ if(!emagged)
+ emagged = TRUE
to_chat(user, "You double the gun's temperature cap! Targets hit by searing beams will burst into flames!")
desc = "A gun that changes the body temperature of its targets. Its temperature cap has been hacked."
diff --git a/code/modules/projectiles/projectile/special.dm b/code/modules/projectiles/projectile/special.dm
index 16cedc0244d..6ac21128e56 100644
--- a/code/modules/projectiles/projectile/special.dm
+++ b/code/modules/projectiles/projectile/special.dm
@@ -52,7 +52,7 @@
pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE
/obj/item/projectile/temp/New(loc, shot_temp)
- ..(loc)
+ ..()
if(!isnull(shot_temp))
temperature = shot_temp
switch(temperature)
@@ -86,7 +86,6 @@
else
name = "temperature beam"//failsafe
icon_state = "temp_4"
- ..()
/obj/item/projectile/temp/on_hit(var/atom/target, var/blocked = 0)//These two could likely check temp protection on the mob