[SFML, C++] Wyświetlanie sprajtów
Ostatnio zmodyfikowano 2012-04-06 19:57
dervill Temat założony przez niniejszego użytkownika |
[SFML, C++] Wyświetlanie sprajtów » 2012-04-06 17:27:31 Witam. Mam pytanie jak zrobić by w głównej pętli po naciśnięciu LPM cały czas wyświetlał mi sie sprajt (biblioteka SFML)? Jak zrobiłem konstrukcje const sf::Input & sterowanie = Aplikacja.GetInput(); if( sterowanie.IsMouseButtonDown( sf::Mouse::Left ) ) Aplikacja.Draw( sprajt ); To działa tylko gdy mam wciśnięty cały czas LPM a chciałbym by był on widoczny az do końca kolejnego wciśniecia LPM. Bo pętla while wpada w nieskończoność w tym przypadku i sie wykopuje. |
|
akwes |
» 2012-04-06 17:31:07 Przechowuj w zmiennej bool, informacje o tym czy było już raz wciśnięcie : )
// na poczatku 1. Zmienna bool z wartością false
// eventy 1. Jeżeli było naciśnięcie, to zmień jej wartość na true
// w petli 1. Jeżeli zmienna bool ma wartość true, rysuj obrazek |
|
dervill Temat założony przez niniejszego użytkownika |
» 2012-04-06 17:49:56 Mógłbyś podać jakiś przykład? |
|
akwes |
» 2012-04-06 17:50:58 Podałem Ci opis słowny. Przepisz to na C++.
Nawet poprawiłem post wyżej, żeby było dokładnie. |
|
dervill Temat założony przez niniejszego użytkownika |
» 2012-04-06 18:35:18 Niestety ale nie chodzi, albo coś źle zapisałem. Bo ogólnie sprawa ma się tak:
Wyświetlam obrazek. Po kliknięciu LPM na obrazek ma się pojawić kolejny. Ma się on wyświetlać tak długo aż nie kliknę ponownie LPM ale juz obojetnie w jakie miejsce.
Całość tak jak napisałeś mi sie wysypuje. Nie wiem w jakim miejscu dac tego eventa
ogólnie próbowałem coś w takim sensie zrobić, ale nie działa link: http://codeupload.com/5470 |
|
akwes |
» 2012-04-06 18:40:16 W pętli miałem na myśli główną pętlę gry, a nie dodatkową. |
|
SeaMonster131 |
» 2012-04-06 18:49:06 bool wys_obrazek = false, klik = false;
if( mysz.klikniecie &&..&& !klik ) { klik = true; wys_obrazek = !wys_obrazek; }
if( !mysz.klikniecie && klik ) klik = false;
if( wys_obrazek ) rysuj_obrazek;
|
|
dervill Temat założony przez niniejszego użytkownika |
» 2012-04-06 19:46:18 OK, pomogło. Po prostu po zagnieżdżałem niepotrzebnie pętle w sobie, bo całość jednak musi lecieć w głównej pętli programu. |
|
« 1 » 2 |