Ja także zbyt pochopnie odpowiedziałem. Wybacz. Bo właśnie jeśli chodzi o obiektówkę to dopiero próbuje się w niej odnaleźć, programy pokroju klikanie czy też różne proste poruszania się i jakieś reakcje na styknięcia także ogarniam więc taki drooobny wstęp rozumiem. Jednak po prostu ten cały builder wydaje mi się bardzo obcy. Bo zobacz, co o tym myślisz. Pomyśłałem, że może z racji, że w pliku .h znajduje takie wersy np:
TImage *postac; to chyba to jest deklaracja obiektu klasy TImage, mam rację? A z drugiej strony nigdzie jako takiej deklaracji nie widzę ( w sensie TImage). Próbowałem nawet w .h zrobić konstruktor tej klasy i poprzez nią próbować wywyoływać jakieś drobne kreski i od razu usuwać przy spotkaniu się z granicą ale tyle wyszło z robienia konstruktora, że masa błędów wypadła. Da rade iść jakoś tym sposobem czy nie?
TImage* postac oznacza stworzenie wskaźnika na klasę TImage.
Nie wiem, do czego zmierzasz. Klasa TImage jest zdefiniowana w środowisku i nie możesz zmieniać jej plików nagłówkowych, m.in. z powodu linkowania, które wtedy zostałoby zaburzone.
Chodzi ci o zdefiniowanie własnej klasy? Jeśli tak, to mogłaby ona zawierać właśnie prywatny obiekt TImage i publiczną metodę do np. rysowania tego pocisku - później tylko pętla do wywołania tej metody dla wszystkich obiektów i po kłopocie.
Pociski aktualnie wyświetlane na ekranie musisz przechowywać w jakimś kontenerze.
Możesz użyć std::vector klik
I gdy użytkownik kliknie przycisk to dodajesz do kontenera dynamicznie stworzony obiekt (pocisk).
vector obiektów "pocisk" który zawiera tylko sprite do narysowania oraz vector2f pozycji końcowej.
Jeśli pozycja sprita == pozycja końcowa to usuwasz obiekt.
Zauważ, że kolega nic nie wspominał o SFML, więc nie wiem, skąd ten vector2f (w domyśle sf::Vector2f)?
93,382 zapytań
142,382 odpowiedzi
322,540 komentarzy
62,738 pasjonatów
Motyw:
Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡
Oto polecana książka warta uwagi.Pełną listę książek znajdziesz tutaj