Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ////obj_menu
- ///Create Event
- //This object should be placed in the room which contains the main menu
- //Which menu is "on"
- menu1_place = true; //Default Menu
- menu2_place = false; //Load Save Files
- menu3_place = false; //Options
- menu4_place = false; //Level Select, for Dev Only
- //Menu Arrays "One Dimensional Array" A multi dimensional array would be like menu[0,1]
- menu[0] = "New Game";
- menu[1] = "Load Game";
- menu[2] = "Options";
- menu[3] = "Place Holders";
- menu[4] = "Exit Game";
- //Load Game
- menu2[0] = "Save File 1"; //Each one needs a replacement if statement, check if there is a file
- menu2[1] = "Save File 2"; //Another idea is to place blank save files by default that are named "Save File XX"
- menu2[2] = "Save File 3"; //Then replace the current string with "whatever file name is"
- menu2[3] = "Return";
- space = 64; //The space in pixels between each array string
- space2 = 72; //The space in pixels bteween each array string in the Load Game menu
- mpos = 0; //Menu Position
- mpos2 = 0; //Menu Position in Load Game menu
- ///Step Event
- player_enter = ((keyboard_check_pressed(vk_enter))) or (gamepad_button_check_pressed(0, gp_face1))
- player_up = ((keyboard_check_pressed(vk_up))) or (gamepad_button_check_pressed(0, gp_padu))
- player_down = ((keyboard_check_pressed(vk_down))) or (gamepad_button_check_pressed(0, gp_padd))
- var move = 0;
- var move2 = 0;
- if (menu1_place == true)
- {
- move -= max(player_up,0);
- move += max(player_down,0);
- mpos2 = 100;
- }
- else if (menu2_place == true)
- {
- move2 -= max(player_up,0);
- move2 += max(player_down,0);
- mpos = 100;
- }
- if (move != 0) && (menu1_place == true)
- {
- mpos += move;
- if (mpos < 0) mpos = array_length_1d(menu) - 1; //Returns the number of items in our 1 dimensional array
- if (mpos > array_length_1d(menu) - 1) mpos = 0; //Reset menu position to 0, because 0 is always the first entry
- }
- if (move2 != 0) && (menu2_place == true)
- {
- mpos2 += move2;
- if (mpos2 < 0) mpos2 = array_length_1d(menu2) - 1; //Returns the number of items in our 1 dimensional array
- if (mpos2 > array_length_1d(menu2) - 1) mpos2 = 0; //Reset menu position to 0, because 0 is always the first entry
- }
- if (player_enter) src_menu();
- ///Draw Event
- draw_set_halign(fa_left);
- draw_set_valign(fa_middle);
- draw_set_font(Arial);
- draw_set_colour(c_white);
- if (menu1_place = true)
- {
- var m;
- for (m = 0; m < array_length_1d(menu); m += 1)
- {
- draw_text(x + space, y + (m * space), string(menu[m]))
- }
- }
- else if (menu2_place = true)
- {
- var m;
- for (m = 0; m < array_length_1d(menu2); m += 1)
- {
- draw_text(x + space2, y + (m * space2), string(menu2[m]))
- }
- }
- if (menu1_place = true)
- {
- draw_sprite(sprite_index, 0, x + 16, y + mpos * space);
- }
- else if (menu2_place = true)
- {
- draw_sprite(sprite_index, 0, x + 16, y + mpos2 * space2);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement