Skocz do zawartości

diabelski interfejs


exide

Rekomendowane odpowiedzi

Witam mam problem diabelskim interfejsem.

 

Chodzi o to że ten przycisk mały ma tworzyć te zaznaczone, ale prosta metoda doszła do tego że bedzie 999999 instancji,

do tego próbowałem nawet instance deactivate też zero.

Zawsze gdy robiłem ui to był tego typu problem :D pewnie rozwiązanie jest banalne, ale już nie wiem nie dojdę do tego.

 

 

bmcPHnE.png

 

 

QCsyOhM.png

Odnośnik do komentarza
Udostępnij na innych stronach

Po pierwsze - zrób cały ten dolny interface w jednym obiekcie - optymalnie kilkakrotnie, a i łatwiej będzie zmieniać go. Po drugie - nie widzę problemu. Zakładam, że albo używasz mouse_check_button, zamiast mouse_check_button_pressed/released, albo nie usuwasz starych instancji. Jeżeli już robisz w osobnych obiektach(chociaż to bezsens) to zrób sobie parenta, i usuwaj po parencie będzie Ci łatwiej ogarnąć. Jednak zrób w jednym obiekcie i po kłopocie. Tylko rysuj odpowiedni przyciski zależnie od zakładki i odpowiednio interpretuj naciśnięcia. Poza tym, który to już Twój klon Darkorbit, i który już rok siedzisz nad tymi klonami z których nic nie wychodzi? xDD Plus za wytrwałość, ale minus za głupotę i uparcie się, żeby zacząć od wielkiego projektu. Kolejny minus za kserowanie już działającej gry. Ile już klonów ma ta gra(i to bardziej udanych, chociaż wszystkie są strasznie źle napisane)? Nie zrozumiem Twoich zapędów i kilku innych forumowiczów z MPC w tworzeniu klona tej gry xD

Odnośnik do komentarza
Udostępnij na innych stronach

Całe UI powinno być jedną instancją. Nie wiem skąd tam 999999 instancji.

 

Jedna zmienna na określenie czy górny pasek jest wyświetlony

GML
Popup = false;

(Dla wygody, kompletnie opcjonalne) 4 zmienne na określenie x1,y1(lewy górny róg) ,x2,y2(prawy dolny róg) przycisku otwierającego górny pasek.

 

Sprawdź czy pozycja przycisku na ekranie została naciśnięta, jeżeli tak to

GML
Popup = !Popup;

Powyższe znaczy że zamieni wartość zmiennej Popup na jej przeciwności(z true na false, z false na true).

 

W draw evencie jeżeli Popup = true rysuj zawartość górnego paska.

 

To tak w skrócie.

Odnośnik do komentarza
Udostępnij na innych stronach

Całe UI powinno być jedną instancją. Nie wiem skąd tam 999999 instancji.

 

Jedna zmienna na określenie czy górny pasek jest wyświetlony

GMLPopup = false;

(Dla wygody, kompletnie opcjonalne) 4 zmienne na określenie x1,y1(lewy górny róg) ,x2,y2(prawy dolny róg) przycisku otwierającego górny pasek.

 

Sprawdź czy pozycja przycisku na ekranie została naciśnięta, jeżeli tak to

GMLPopup = !Popup;

Powyższe znaczy że zamieni wartość zmiennej Popup na jej przeciwności(z true na false, z false na true).

 

W draw evencie jeżeli Popup = true rysuj zawartość górnego paska.

 

To tak w skrócie.

 

dzięki dałeś mi dobry pomysł ładnie znika i pojawia się :)

 

teraz drag and drop hehe :D

Odnośnik do komentarza
Udostępnij na innych stronach

  • 2 tygodnie później...

Refresh potrzebuje pomoc z tym diabelstwem, podeśle source żeby dać wam wgląd.

Chodzi o to że ten pasek w lewym górnym ma być ruchomy w trybie edycji który jest tymczasowo aktywny, w prawym lewym też będzie można go ruszyć jak i actionbar.

link https://mega.co.nz/#!gsUzgL4a!XkEHW...8keHr_lZqiSwAxI

 

Kto pomoże zrobić te diabelstwo :D drag & drop też trudne z tym paskiem,

ale to pewnie na skype lub ts musiał bym pogadać żeby ktoś wytłumaczył.

Gdyby nie ui to już bym miał atak itp ale ui najważniejsze.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...