public override void Run() { if (dirChenged == false) { botEntityAnimation.MoveAnimation(direction, false); dirChenged = true; } moveCount--; if (useCallback) { useCallback = false; directionChangeCallback(); } botEntityAnimation.MoveAnimation(direction, true); switch (direction) { case Direction.Up: botEntity.MoveY(speed, tileMapInfo); break; case Direction.Down: botEntity.MoveY(-speed, tileMapInfo); break; case Direction.Left: botEntity.MoveX(-speed, tileMapInfo); break; case Direction.Right: botEntity.MoveX(speed, tileMapInfo); break; } movingCallback(); if (moveCount <= 0) { botEntityAnimation.ResetAnimation(); if (noPosFix == false) { botEntity.PosFix(tileMapInfo); } Finished(); } }
public override void Run() { directionChangeCallback(); botEntityAnimation.MoveAnimation(direction, false); Finished(); }