Niezależne wykonywanie dwóch operacji w pętli
Ostatnio zmodyfikowano 2015-01-02 18:12
Resthor Temat założony przez niniejszego użytkownika |
Niezależne wykonywanie dwóch operacji w pętli » 2014-12-31 00:12:22 Moja pętla wygląda w ten sposób, że sprawdza czy któryś z graczy nie jest już przypadkiem martwy:
while(heroHP>0 && enemyHP>0)
I w tym momencie chciałbym, aby gracze nawzajem się atakowali. Czyli po prostu od enemyHP odejmuję heroAttack, a od heroHP odejmuję enemyAttack. Dodatkowo chciałem wprowadzić coś takiego jak prędkość ataku. I tu pojawia się problem. Jak stworzyć kod, który czeka określoną ilość czasu dla każdego z graczy i wyprowadza atak? Chciałbym, żeby to wyglądało jak na tej osi czasu:
o---o---o---o---o---o--- ataki gracza 1 o-----o-----o-----o----- ataki gracza 2 0---1---2---3---4---5---> sekundy
Czyli po prostu gracz 1 atakuje co sekunę, a gracz 2 co 1,5. Próbowałem użyć Sleep na różne sposoby, ale moje próby zakończyły się porażką. Jeśli ktoś mógłby mi pomóc, byłbym bardzo wdzięczny :) |
|
1aam2am1 |
» 2014-12-31 00:15:40 Tu trzeba zrobić pętle główną gry. Ona ma się nigdy nie zatrzymać. Liczysz czas który minął od ostatniego ataku i jeżeli minął atakujesz a jeżeli nie to nie. |
|
Resthor Temat założony przez niniejszego użytkownika |
» 2014-12-31 00:19:11 No dobrze, a jakiego narzędzia użyć do sprawdzania czasu, który upłynął od ostatniego ataku? |
|
lectre |
» 2014-12-31 00:37:09 Jeśli tworzysz grę w konsoli to biblioteka <ctime>. |
|
jegor377 |
» 2014-12-31 01:54:07 #include <iostream> #include <time.h>
void funkcjacostamrobiaca( unsigned long long int * timer ) { if( * timer + 50 < clock() ) { wykonaj instrukcje np.uderzenia; * timer = clock(); } }
int main() { unsigned long long int timer = clock(); funkcjacostamrobiaca( & timer ); }
kod, który podałem jest pewnie badziewny, ale działa i ja z niego korzystam :) PS jeżeli macie lepszy sposób to piszcie :) |
|
lekarz |
Sory ten post jest do usuniecia » 2015-01-01 14:20:51 usunac prosze |
|
jegor377 |
» 2015-01-02 18:12:53 czyli co pomogłem ci, czy nie? :) |
|
« 1 » |