No you're not dumb. Every function called by an entity has its own my pointer set to that very entity. If an amount of x entities call the same function you have a number of x function instances running. Each with a different my pointer, pointing to the entity which called the function.