Перемещение объекта из точки до точки линейного пути

Я пытаюсь переместить спрайт через экран По прямой линии, направлена ​​на место, где я коснулся экрана, что я сделал, был на обновлении () в каждом цикле, он проверяет, есть ли местоположение текущего SPRITE XY == к пункту назначения X, Y. Если он не имеет Sprite's X ++ и Y ++ ... Дело в том, что это не двигаясь по прямой линии ... Поскольку есть случаи, когда координата X или Y достигает пункта назначения X или Y, как я изменил его, чтобы оба встречаться Место назначения вместе?

мой текущий псевдо код для объекта SPRITE

             destX = destination X
             destY = destination Y

             posX = current X
             posY = current Y
               public void update(){
                if(destX > posX && destY < posY)
                {

                    posX++;
                    posY--;
                }
                else if (destX > posX && destY > posY){
                    posX++;
                    posY++;
                }
                else if(destX < posX && destY > posY)
                {
                    posX--;
                    posY++;
                }
                else if(destX < posX && destY < posY){
                    posX--;
                    posY--;
                }
                else if(destX < posX)
                    posX--;
                else if(destX > posX)
                    posX++;
                else if(destY < posY)
                    posY--;
                else if(destY > posY)
                    posY++;
6
задан Shizumaru18 16 September 2011 в 18:11
поделиться