TheVVaS Opublikowano 6 Kwietnia 2014 Udostępnij Opublikowano 6 Kwietnia 2014 Cześć! Wymagana jest lekka pomoc ze strony "miszczuf" GM'a. Otóż zacząłem robić menu do gierki, lecz oczywiście musiałem zrobić wszystko nie tak :D Menu wygląda następująco: ¤ START - Single Player - Multi Player ¤ OPTIONS - pusto - pusto - pusto ¤ EXIT - Yes, I want exit - No, I want play more A teraz ta gorsza część - tak wygląda mój kiepski skrypcik :D spr_menu_start to guzik z dwoma indexami, podświetlony guzik(po najechaniu na niego myszką) i zwykły. menux oraz menuy jest to pozycja każdego guzika. Zmienna menunow informacja w jakim menu jesteśmy(np. menu główny, opcje itp.). Wszystko jest zrobione w jednym obiekcie: CREATE: GML menunow = 0 menux = 180 menuy[0] = 120 menuy[1] = 180 menuy[2] = 240 menuy[3] = 300 menuy[4] = 360 STEP: GML if (mouse_check_button && (abs(menux - mouse_x) < 120 && abs(menuy[0] - mouse_y) < 26)) //Button 1 { switch(menunow) { case 0: menunow = 1 break; case 1: room_goto(2) break; case 2: break; case 3: game_end(); break; } } if (mouse_check_button && (abs(menux - mouse_x) < 120 && abs(menuy[1] - mouse_y) < 26)) //Button 2 { switch(menunow) { case 0: menunow = 2 break; case 1: room_goto(3) break; case 2: break; case 3: menunow = 0 break; } } if (mouse_check_button && (abs(menux - mouse_x) < 120 && abs(menuy[2] - mouse_y) < 26)) //Button 3 { switch(menunow) { case 0: menunow = 3 break; case 1: menunow = 0 break; case 2: break; case 3: break; } } DRAW: GML draw_set_font(font0) draw_set_color(c_white) draw_set_valign(fa_center) draw_set_halign(fa_center) if (menunow = 0) //MENU { if abs(menux - mouse_x) < 120 && abs(menuy[0] - mouse_y) < 26 draw_sprite(spr_menu_start, 0, xmenu, ymenu[0]) else draw_sprite(spr_menu_start, 1, xmenu, ymenu[0]) draw_text(xmenu, ymenu[0], "START") if abs(menux - mouse_x) < 120 && abs(menuy[1] - mouse_y) < 26 draw_sprite(spr_menu_start, 0, xmenu, ymenu[1]) else draw_sprite(spr_menu_start, 1, xmenu, ymenu[1]) draw_text(xmenu, ymenu[1], "OPTIONS") if abs(menux - mouse_x) < 120 && abs(menuy[2] - mouse_y) < 26 draw_sprite(spr_menu_start, 0, xmenu, ymenu[2]) else draw_sprite(spr_menu_start, 1, xmenu, ymenu[2]) draw_text(xmenu, ymenu[2], "EXIT") } if (menunow = 1) //START { if abs(menux - mouse_x) < 120 && abs(menuy[0] - mouse_y) < 26 draw_sprite(spr_menu_start, 0, xmenu, ymenu[0]) else draw_sprite(spr_menu_start, 1, xmenu, ymenu[0]) draw_text(xmenu, ymenu[0], "Single Player") if abs(menux - mouse_x) < 120 && abs(menuy[1] - mouse_y) < 26 draw_sprite(spr_menu_start, 0, xmenu, ymenu[1]) else draw_sprite(spr_menu_start, 1, xmenu, ymenu[1]) draw_text(xmenu, ymenu[1], "Multi Player") if abs(menux - mouse_x) < 120 && abs(menuy[2] - mouse_y) < 26 draw_sprite(spr_menu_start, 0, xmenu, ymenu[2]) else draw_sprite(spr_menu_start, 1, xmenu, ymenu[2]) draw_text(xmenu, ymenu[2], "Back") } if (menunow = 2) //OPTIONS { draw_text(xmenu, ymenu[0], "") draw_text(xmenu, ymenu[1], "") draw_text(xmenu, ymenu[2], "") } if (menunow = 3) //EXIT { if abs(menux - mouse_x) < 120 && abs(menuy[0] - mouse_y) < 26 draw_sprite(spr_menu_start, 0, xmenu, ymenu[0]) else draw_sprite(spr_menu_start, 1, xmenu, ymenu[0]) draw_text(xmenu, ymenu[0], "Yes, I want exit") if abs(menux - mouse_x) < 120 && abs(menuy[1] - mouse_y) < 26 draw_sprite(spr_menu_start, 0, xmenu, ymenu[1]) else draw_sprite(spr_menu_start, 1, xmenu, ymenu[1]) draw_text(xmenu, ymenu[1], "No, I want play more") } Póki co guziki nie chcą mi się wyświetlić :( Pomysły? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Lechu4444 Opublikowano 6 Kwietnia 2014 Udostępnij Opublikowano 6 Kwietnia 2014 draw_set_valign nie przyjmuje fa_center tylko fa_middle. Na razie na szybko przejrzałem i wyłapałem to jak coś jeszcze wyłapie to dam znać w edit. :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am vader Opublikowano 6 Kwietnia 2014 Udostępnij Opublikowano 6 Kwietnia 2014 Nie robi różnicy, bo fa_middle i fa_center to tylko stałe i obie mają tę samą wartość ( 1 ). To coś innego. EDIT: Czekam na plot twist typu "odznaczyłem visible przez przypadek" EDIT2: W create masz menux i menuy a w draw masz xmenu i ymenu. Albo na odwrót, nie chce mi się znowu wciskać home. A skoro Ci to nie wysypuje to byc moze masz ustawione ze nieznane zmienne ustawia na 0 i dlatego nie dostales komunikatu z bledem. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
TheVVaS Opublikowano 8 Kwietnia 2014 Autor Udostępnij Opublikowano 8 Kwietnia 2014 Tak, to był błąd tych zmiennych :( Trochę źle zabrałem się za menu, strasznie w nim namieszałem. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
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ę