Ahh, I missed the local table c.p, because you editted your original post.
But you are wrong. the reason WHY it is returning the error is because getCreaturePosition() returns a table.
Yes, it will loop the addEvent function over and over again, but there is no reason for an addEvent function...