Witam, tworzę gierkę polegającą na omijaniu spadających z góry przeszkód:
Wiele razy potrzeba jest tu liczyć i przechowywać czas, trzeba obliczać czas do zmiany kolorów obiektów i tła ( bo po czasie dla urozmaicenia rozgrywki grafika lekko się zmienia ), co losowy czas generowani są nowi przeciwnicy. Czas do nowej generacji jest losowany i przechowywany w odpowiedniej zmiennej, potem trzeba też go liczyć obiektem sf::Clock. Ponieważ zmianami na mapie zajmują się odpowiednie funkcje ( wywoływane w pętli gry ) to wspomniane wartości nie mogą być przechowywane przez zmienne automatyczne - wobec tego muszą być one statyczne w tych funkcjach. Tak też początkowo było... jednak dodałem nowy stan programu jakim jest menu główne, a ponieważ pamięć zmiennych statycznych istnieje przez cały okres działania programu to po wybraniu w menu ponownej rozgrywki były oczywiście niechciane efekty uboczne ( zmienne powinny zostać wtedy wyzerowane ). By istniały one przez cały okres trwania rozgrywki a zostały zwolnione po jej zakończeniu to nadałem im zasięg klasy, oto kilka z nich:
Czy umieszczanie jednak zmiennych pełniących rolę jakiś timerów w grze jako składowych klasy jest mądre? Może powinienem w inny sposób je przechowywać, w specjalnych strukturach czy coś...?
Będę bardzo wdzięczny za doradzenie mi czy zastosowane tu podejście jest znośnie ;)