Thanks, but what I'm trying to do is recreate this movement so it's framerate independant. Using the above code makes the enemy extremely fast using unlimited framerate mode, regardless of how I add timedelta.
It seems I need to scrap the above code and use a different custom movement..one that moves the enemy in a similar but framerate independant fashion..but I'm not sure how
That's exactly what timedelta is for, so if it doesn't work for you, there's something wrong with the math you're using. If I set the sprite's x to sprite.x + 64 * TimeDelta, it moves exactly 64 pixels per second to the right, no matter the framerate.
I would suggest you create an example cap showing the problem, maybe a few more eyes see an issue that hides from your eyes?
EDIT: Maybe you're not taken into account, how often the condition is met? if the enemy is close to the player for a second, the condition is met your framerate's times. So, when running with 60fps it is met 60x and the enemy's x is affected 60x, with unlimited mode it might be 3000fps and the condition is met 3000x during that second and so affects the enemy's x 3000x. What you would need then is a relative change of the enemy's x not an absolute.
EDIT2: Hmm, thinking about it a second time, this seems to be nonsense, because TimeDelta already makes it relative. There must be something else.