Try the OnTakeDamage hook.
function OnTakeDamage(a_Receiver, a_TDI)
if (a_TDI.Attacker == nil or not a_Receiver:IsItemFrame() or not a_TDI.Attacker:IsPlayer()) then
return false
end
-- Your code
end

