@Adriano Faria In the past, I overloaded the function \IPS\Member::__set() checking for the key pp_reputation_points and then checking if the do parameter starts with (un)react. That should cover all areas I believe.
# We're updating the 'pp_reputation_points' value and we're (un)reacting
if ( $key == 'pp_reputation_points' AND \IPS\Request::i()->do AND ( mb_substr( \IPS\Request::i()->do, 0, 5 ) === 'react' OR mb_substr( \IPS\Request::i()->do, 0, 7 ) === 'unreact' ) AND \IPS\Member::loggedIn()->member_id )
{
// Your code
}
You also need to account for when the reputation is rebuilt though. That check is not included in the example above. It requires hooking the function that rebuilds the count and passing along some kind of flag.
If you want to check only removeReaction() skip the do=reactXXX check. That said, this kind of code doesn't let you know which reaction is actually being removed. It only acts on the points being updated. If you require to run it on specific reactions only, I have no idea how, unfortunately.