试图制作动画精灵类;精灵不会移动

时间:2016-09-04 14:33:46

标签: c++ class sprite sfml

所以,我试图在C ++中为一个使用spritesheets进行输入的动画精灵创建一个类,当试图移动精灵时,它只是反弹回来。它不会挽救这个位置。

我尝试使用.setPostion(),但仍然会反弹到原来的位置。我没有其他方法来移动实现的精灵,也没有更新它或其他任何东西。成员函数运行中关注的部分是无效的:

//if statement
if (sf::Keyboard::isKeyPressed(sf::Keyboard::Right))
{
    curranim[2] = Right;
    playerSprite.setPosition(playerSprite.getPosition().x + walkingSpeed, 0);
}

window.draw(playerSprite);  
//spritesheet.cpp ends here

现在这是我的主要功能:

int main()
{
    sf::RenderWindow Window(sf::VideoMode(900, 600), "RPG");
    animsprite sprite("dragon.png", 1, Window);
    sprite.setWalkSpeed(10);

    sf::Event Event;

    while (Window.isOpen())
    {
        while (Window.pollEvent(Event))
        {
            switch (Event.type) 
            {
                case sf::Event::Closed:
                    Window.close();
                    break;
            }
        }

        Window.clear();
        sprite.run(Window);
        Window.display();

    }

    return 0;
 }

我会不会永远重复我的代码还是有修复?

0 个答案:

没有答案