Its not very clear from your description, but is there any reason you're using an intermediate instance variable to store the sprite angle to set the dash angle? I assume the bullet behavior speed is normally 0 or disabled outside of dashing, and dashing always happens towards the mouse. The problem might have to do with which the order in which you set the sprite angle, take that and save it to its instance variable, and have the bullet angle set towards the instance variable value every frame. The first frame upon dashing may not have received an updated angle until the following frame, which may cause some irregularities. Try simplifying it to only set the angle towards mouse position during the dash event - set bullet angle to "angle(sprite.x, sprite.y, mouse.x, mouse.y)". This expression gives you the angle between the sprite position and the mouse position.