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

[SFML, C++] Zapętlanie czasu

Ostatnio zmodyfikowano 2012-01-31 13:03
Autor Wiadomość
Rughailon
Temat założony przez niniejszego użytkownika
[SFML, C++] Zapętlanie czasu
» 2012-01-30 12:02:50
Witam. Mam mały problem. Chcę, by po osiągnieciu 170 sek, czas zmieniał się na 0 i tak w kółko.
Kod:
C/C++
//...

int main()
{
   
    //...
   
    int czas = 0;
   
    while( Okno.Gry.IsOpened() )
    {
       
        //...
       
        if( czas )
        {
            czas = clock();
        }
        czas++;
       
        //if( czas <= 0) {czas = 170000;}
        //if( czas >= 170000) {czas = 0;}
       
        if( czas > 170000 )
             czas = 0;
       
        if( czas < 0 )
             czas = 170000;
       
        cout << "Czas: " << czas << endl;
       
        //...
       
    }
}

Problem w tym, że po osiągnieciu 170000, czas zaczyna szaleć i wyświetlają się tylko cyfry "0 i 1"..
P-49798
hincu
» 2012-01-30 12:19:13
sf::Clock


C/C++
//...

sf::Clock Timer;

if( Timer.GetElapsedTime() <= 170.f )
{
    ...
   
}
else Timer.Reset();

P-49801
Rughailon
Temat założony przez niniejszego użytkownika
» 2012-01-30 14:43:24
Bo zrobiłem coś takiego. Wszystko fajnie, lecz z tym zapętlaniem.
C/C++
if( czas >= 40000 && czas < 45000 )
{
    OknoGry.Draw( Night10 );
}

if( czas >= 45000 && czas < 50000 )
{
    OknoGry.Draw( Night9 );
}
Po osiągnieciu 40000 do 45000 rysuje się czarny kwadrat z pewną alpha. Potem ma coraz mniejszą.
P-49808
hincu
» 2012-01-30 15:19:07
if( czas >= 45000 && czas < 50000 )

bo rysujesz tylko wtedy gdy jest w tym przedziale czasowym
P-49810
Rughailon
Temat założony przez niniejszego użytkownika
» 2012-01-31 13:03:30
Dobra. Dzieki za pomoc. ;)
P-49878
« 1 »
  Strona 1 z 1