Анимация в XNA

У меня есть этот код:

        public class Area
{
    Texture2D point;
    Rectangle rect;
    SpriteBatch _sB;
    GameTimer _gt;
    int xo, yo, xt, yt;
    //List<Card> _cards;

    public Area(Texture2D point, SpriteBatch sB)
    {
        this.point = point;
        this._sB = sB;
        xt = 660;
        yt = 180;
        xo = 260;
        yo = 90;
    }

    public void Draw(SpriteBatch spriteBatch)
    {
        rect = new Rectangle(660, 180, 80, 120);
        spriteBatch.Draw(point, rect, Color.White);

        _gt = new GameTimer();
        _gt.UpdateInterval = TimeSpan.FromSeconds(0.1);
        _gt.Draw += OnDraw;
    }

    private void OnDraw(object sender, GameTimerEventArgs e)
    {
        this.pass(xo, yo);
        if (xo != xt) xo += (xt > xo) ? 10 : -10;
        if (yo != yt) yo += (yt > yo) ? 10 : -10;
    }

    public void pass(int x, int y)
    {
        rect = new Rectangle(x, y, 80, 120);
        _sB.Draw(point, rect, Color.Black);
    }
}

Так вот, не могу понять в чем дело. И это мой первый проект с XNA, и из-за него может быть глупая ошибка:)

P.S. Прости. Есть прямоугольник с координатами (xt,yt ), и мне нужна анимация для перемещения прямоугольника на (xo,yo)

P.P.S. Я добавил полный класс с исправлениями, потому что не понимаю своей ошибки.

0
задан Max Zhukov 8 April 2012 в 20:13
поделиться