Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[SFML] Odbicie Lustrzane

Ostatnio zmodyfikowano 2012-01-19 11:22
Autor Wiadomość
tomek5321
Temat założony przez niniejszego użytkownika
[SFML] Odbicie Lustrzane
» 2012-01-19 11:22:32
Mając taki kod:
C/C++
const sf::Input & sterowanie = oknoAplikacji.GetInput(); //sterowanie
if( sterowanie.IsKeyDown( sf::Key::Left ) ) { if( Collision::PixelPerfectTest( bohater, wrog ) == true ) bohater.Move( + 30, 0 ); else bohater.Move( - 0.2, 0 ); bohater.FlipX( 1 ); }
if( sterowanie.IsKeyDown( sf::Key::Right ) ) { if( Collision::PixelPerfectTest( bohater, wrog ) == true ) bohater.Move( - 30, 0 ); else bohater.Move( + 0.2, 0 ); bohater.FlipX( 1 ); }
if( sterowanie.IsKeyDown( sf::Key::Up ) ) { if( Collision::PixelPerfectTest( bohater, wrog ) == true ) bohater.Move( 0, + 30 ); else bohater.Move( 0, - 0.2 ); }
if( sterowanie.IsKeyDown( sf::Key::Down ) ) { if( Collision::PixelPerfectTest( bohater, wrog ) == true ) bohater.Move( 0, - 30 ); else bohater.Move( 0, + 0.2 ); }

Kiedy poruszę postacią np. w prawo to się obraca w prawo. Ale kiedy powtórzę tą czynność z prawo na lewo to już w ogóle się nie obraca. Tylko przy pierwszym naciśnięciu klawisza prawo lub lewo. Dlaczego tak jest?

//Edit
Już wiem!
bohater.FlipX()
 może przyjmować tylko 2 wartości
true
 lub
false
. Sory za spam. Zamykam temat.
P-48726
« 1 »
  Strona 1 z 1