I am making a tower defense game, and to make the enemies follow the path I want them to, I created an arrow sprite with four different animation frames pointing to the four directions. When I am creating a level, I place them with the right frame set where I want the enemies to turn, and then I use:
Arrow on collision with Enemy
detect the arrow frame ---------- change enemy's direction instance variable according to the frame
Detect the variable -------------- move the enemy accordingly
I also programmed a pause feature using System --> Set Time Scale to 0, problem is, tile size for enemy's tile movement behavior is 16 x 16, the arrow sprite is 16 x 8 (see image below for better understanding), and somehow this makes it so when I pause the game while the enemy is moving from one tile to another to get to the arrow, it goes a bit crazy... I can't explain so I'll post another image. Even debug pause does the same thing!
Image 1: drive.google.com/file/d/1Abl5NDNSF2hLWXcxTOIJVOT_SzibHd0H/view
Image 2: drive.google.com/file/d/1ZQ67xbwr8qGzsQjVK9Fn8C2qwJQxYSHb/view
That doesn't make any sense at all, the enemy shouldn't be able to move diagonally!
Thanks in advance (;