diff --git a/game/modules/tome/data/general/traps/annoy.lua b/game/modules/tome/data/general/traps/annoy.lua
index 422d8b0dc53b5c4fbc9f951e8571185b1af3b7d8..8818a6ff33c8457ee7529926e02c8af9246ce822 100644
--- a/game/modules/tome/data/general/traps/annoy.lua
+++ b/game/modules/tome/data/general/traps/annoy.lua
@@ -32,7 +32,8 @@ newEntity{ base = "TRAP_ANNOY",
 	triggered = function(self, x, y, who)
 		local tids = {}
 		for tid, lev in pairs(who.talents) do
-			if not who.talents_cd[tid] then tids[#tids+1] = tid end
+			local t = who:getTalentFromId()
+			if not who.talents_cd[tid] and t.mode == "activated" then tids[#tids+1] = tid end
 		end
 		for i = 1, 3 do
 			local tid = rng.tableRemove(tids)