I've been thinking up similar ideas, however, in this one, maybe it could be simplified to; "If Porcupine receives damage, 2 damage is dealt to the source." This keeps gravity pull as an option, but adds other uses. So if a spell like Lightning is cast on Porcupine, the player who cast it receives 2 damage.
I also think this card is especially expensive for what it does, and still a bit too expensive with the modification I made.