diff --git a/UNLOZE_KnifeMadness/scripting/UNLOZE_KnifeMadness.sp b/UNLOZE_KnifeMadness/scripting/UNLOZE_KnifeMadness.sp
index 5053285f..02fc1efa 100644
--- a/UNLOZE_KnifeMadness/scripting/UNLOZE_KnifeMadness.sp
+++ b/UNLOZE_KnifeMadness/scripting/UNLOZE_KnifeMadness.sp
@@ -2,6 +2,7 @@
 #include <sdktools>
 #include <multicolors>
 #include <zombiereloaded>
+#include <loghelper>
 
 #pragma semicolon 1
 #pragma newdecls required
@@ -35,6 +36,7 @@ public void OnPluginStart()
 	HookEvent("player_spawn",   OnClientSpawn,  EventHookMode_Post);
 	HookEvent("player_death",   OnClientDeath,  EventHookMode_Pre);
 	HookEvent("player_hurt",    OnClientHurt,   EventHookMode_Post);
+	HookEvent("player_team", 	OnClientTeam,   EventHookMode_Pre);
 }
 
 //----------------------------------------------------------------------------------------------------
@@ -100,6 +102,20 @@ public void OnClientHurt(Event hEvent, const char[] sEvent, bool bDontBroadcast)
 	pack.WriteCell(GetClientUserId(victim));
 }
 
+//----------------------------------------------------------------------------------------------------
+// Purpose:
+//----------------------------------------------------------------------------------------------------
+public void OnClientTeam(Event hEvent, const char[] sEvent, bool bDontBroadcast)
+{
+	int client = GetClientOfUserId(hEvent.GetInt("userid"));
+
+	if (g_bClientKnifed[client])
+	{
+		g_bClientKnifed[client] = false;
+		LogPlayerEvent(client, "triggered", "switch_to_spec");
+	}
+}
+
 //----------------------------------------------------------------------------------------------------
 // Purpose:
 //----------------------------------------------------------------------------------------------------