SFML community forums
Help => Graphics => Topic started by: Theom on October 10, 2011, 10:52:46 pm
-
I tried both using SetPosition and Move but both had the same result, when I can move the sprite down and right, that is I can only add to the position not subtract.
The relevant code would be:
case sf::Event::KeyPressed:
switch(Event.Key.Code)
{
case(sf::Keyboard::Up):
py-=2;
case(sf::Keyboard::Down):
py+=2;
case(sf::Keyboard::Left):
px-=2;
case(sf::Keyboard::Right):
px+=2;
}
...
pyr.SetPosition(px, py);
-
You must add a "break" instruction at the end of each "case", otherwise the code goes through all of them.
switch(Event.Key.Code)
{
case(sf::Keyboard::Up):
py-=2;
break;
case(sf::Keyboard::Down):
py+=2;
break;
case(sf::Keyboard::Left):
px-=2;
break;
case(sf::Keyboard::Right):
px+=2;
break;
}
-
It worked. Thank you very much.