<undefined> 0 -1 0 0 <undefined> <undefined> 1 603 7 0 0 -1 2 self 0 0 1 global.curropt = 1; // og 1 lastitem = 22; active = 0; alarm[0] = 5; i = 0; repeat (23) { canedit[i] = 1; i += 1; } if (global.opaimstyle == 0) canedit[13] = 0; targety = 0; view_object[0] = id; editing = 0; readjoy = 0; timer = 0; event_user(0); with (oSS_Control) active = 0; with (oSS_Fg) { active = 0; hidechangetip = 1; } global.tiptext = tip[global.curropt]; for (var i = 0; i < 16; i++) { linaxlast[i] = 0; } 1 603 7 0 0 -1 2 self 0 0 1 event_user(1); with (oSS_Fg) hidechangetip = 0; 1 603 7 0 0 -1 2 self 0 0 1 if (editing) { editing = 0; op[global.curropt].editing = 0; sfx_play(sndMenuMove); } 1 603 7 0 0 -1 2 self 0 0 1 readjoy = 1; 1 603 7 0 0 -1 2 self 0 0 1 active = 1; 1 603 7 0 0 -1 2 self 0 0 1 /// Input workaround for Linux for (var g = 0; g <= gamepad_axis_count(global.opjoyid); g ++) { linaxlast[g] = gamepad_axis_value(global.opjoyid, g); } 1 603 7 0 0 -1 2 oOptionsJoypad 0 0 1 if (active) { if (oControl.kDown > 0 && (oControl.kDownPushedSteps == 0 || oControl.kDownPushedSteps > 30 && timer == 0) && editing == 0) { global.curropt += 1; if (global.curropt > lastitem) global.curropt = 1; while (canedit[global.curropt] == 0) global.curropt += 1; if (global.curropt > lastitem) global.curropt = 1; targety = op[global.curropt].y + 8 + 8; if (op[6].visible == false) { if (targety > 336) targety = 336; } else { if(os_type != os_android) { if (targety > 400) targety = 400; } else { if (targety > 384) targety = 384; } } sfx_play(sndMenuMove); global.tiptext = tip[global.curropt]; } if (oControl.kUp > 0 && (oControl.kUpPushedSteps == 0 || oControl.kUpPushedSteps > 30 && timer == 0) && editing == 0) { global.curropt -= 1; if (global.curropt < 1) global.curropt = lastitem; while (canedit[global.curropt] == 0) global.curropt -= 1; if (global.curropt < 1) global.curropt = lastitem; targety = op[global.curropt].y + 8 + 8; if (op[6].visible == false) { if (targety > 336) targety = 336; } else { if(os_type != os_android) { if (targety > 400) targety = 400; } else { if (targety > 384) targety = 384; } } sfx_play(sndMenuMove); global.tiptext = tip[global.curropt]; } if ((oControl.kLeft > 0 && oControl.kLeftPushedSteps == 0 || oControl.kRight > 0 && oControl.kRightPushedSteps == 0) && oControl.kDown == 0 && oControl.kUp == 0) { if (global.curropt == 0) { // Never used? Odd. global.openablejoy = !global.openablejoy; sfx_play(sndMenuMove); event_user(2); } if (global.curropt == 2) { global.opanalogwalk = !global.opanalogwalk; sfx_play(sndMenuMove); event_user(2); } if (global.curropt == 5) { global.dpad_rebind = !global.dpad_rebind; sfx_play(sndMenuMove); event_user(2); event_user(3); } if(os_type == os_android) { if (global.curropt == 3) { global.opanalog_stick = !global.opanalog_stick; sfx_play(sndMenuMove); event_user(2); } if (global.curropt == 4) { global.opanalog_invert = !global.opanalog_invert; sfx_play(sndMenuMove); event_user(2); } } } if (oControl.kLeft > 0 && oControl.kLeftPushedSteps > 5 && oControl.kDown == 0 && oControl.kUp == 0) { if (global.curropt == 1 && global.opdeadzone > 0) { global.opdeadzone -= 1; event_user(2); } } if (oControl.kRight > 0 && oControl.kRightPushedSteps > 5 && oControl.kDown == 0 && oControl.kUp == 0) { if (global.curropt == 1 && global.opdeadzone < 100) { global.opdeadzone += 1; event_user(2); } } if (oControl.kMenu1 && oControl.kMenu1PushedSteps == 0 && canedit[global.curropt] && global.curropt <= 20 && ((os_type != os_android && global.curropt > 2 && global.curropt != 5) || (os_type == os_android && global.curropt > 4)) && editing == 0) { if (editing == 0) { editing = 1; alarm[2] = 300; // timeout for lack of input io_clear(); readjoy = 0; if (global.joydetected) alarm[1] = 20; op[global.curropt].editing = 1; sfx_play(sndMenuSel); } } if (oControl.kMenu1 && oControl.kMenu1PushedSteps == 0) { if (global.curropt == 21) { set_default_joypad(); event_user(2); sfx_play(sndMenuSel); if(os_type != os_android) { instance_create(50, 92, oOptionsJoypad); instance_destroy(); } } if (global.curropt == 22) { save_gameoptions(); view_object[0] = noone; view_yview[0] = 0; instance_create(50, 92, oOptionsControl); instance_destroy(); sfx_play(sndMenuSel); } } if (editing && readjoy) { if(os_type != os_android && os_type != os_linux) { if (global.curropt == 3 && choose_axis() != -1) { remap_duplicate_joyaxis(choose_axis()); map_joyaxisbtn(global.curropt, choose_axis()); if (global.opjoybtn_xax == 6) global.opjoybtn_yax = 7; editing = 0; readjoy = 0; op[global.curropt].editing = 0; event_user(2); sfx_play(sndMenuMove); } if (global.curropt == 4 && choose_axis() != -1) { remap_duplicate_joyaxis(choose_axis()); map_joyaxisbtn(global.curropt, choose_axis()); if (choose_axis() == 6) { global.opjoybtn_xax = 6; global.opjoybtn_yax = 7; } editing = 0; readjoy = 0; op[global.curropt].editing = 0; event_user(2); sfx_play(sndMenuMove); } } else if (os_type == os_linux) { // remap Linux axes if (global.curropt == 3 && choose_axis_linux() != -1) { /*remap_duplicate_joyaxis(choose_axis()); map_joyaxisbtn(global.curropt, choose_axis()); if (global.opjoybtn_xax == 6) global.opjoybtn_yax = 7;*/ if (global.opjoybtn_yax == choose_axis_linux()) { global.opjoybtn_yax = global.opjoybtn_xax; } global.opjoybtn_xax = choose_axis_linux(); editing = 0; readjoy = 0; op[global.curropt].editing = 0; event_user(2); sfx_play(sndMenuMove); } if (global.curropt == 4 && choose_axis_linux() != -1) { //remap_duplicate_joyaxis(choose_axis()); //map_joyaxisbtn(global.curropt, choose_axis()); /*if (choose_axis() == 6) { global.opjoybtn_xax = 6; global.opjoybtn_yax = 7; }*/ if (global.opjoybtn_xax == choose_axis_linux()) { global.opjoybtn_xax = global.opjoybtn_yax; } global.opjoybtn_yax = choose_axis_linux(); editing = 0; readjoy = 0; op[global.curropt].editing = 0; event_user(2); sfx_play(sndMenuMove); } } if (check_joybtn(global.opjoyid) > 0 && global.curropt > 3) { if (global.curropt < 18 || global.curropt == 18 && global.opjoybtn_menu1 != check_joybtn(global.opjoyid) && global.opjoybtn_menu2 != check_joybtn(global.opjoyid)) { remap_duplicate_joybtn(check_joybtn(global.opjoyid)); map_joyaxisbtn(global.curropt, check_joybtn(global.opjoyid)); } else if (global.curropt > 18 && global.opjoybtn_str != check_joybtn(global.opjoyid)) { remap_duplicate_joybtnmenu(check_joybtn(global.opjoyid)); map_joyaxisbtn(global.curropt, check_joybtn(global.opjoyid)); } editing = 0; readjoy = 0; op[global.curropt].editing = 0; event_user(2); sfx_play(sndMenuMove); active = 0; alarm[0] = 2; } } // if (editing && readjoy) with (oSS_Fg) { active = 0; alarm[0] = 5; } with (oSS_Control) { active = 0; alarm[0] = 5; } } // if (active) if (targety != y) y += (targety - y) / 10; timer -= 1; if (timer < 0) timer = 8; 1 603 7 0 0 -1 2 self 0 0 1 1 603 7 0 0 -1 2 self 0 0 1 if (global.dpad_rebind == 1) { for (i=10; i<=22; i+=1) { op[i].y += 64; } op[6].visible = true; canedit[6] = 1; op[7].visible = true; canedit[7] = 1; op[8].visible = true; canedit[8] = 1; op[9].visible = true; canedit[9] = 1; } else { if (targety > 335) { targety = 335; y = targety; } if(op[10].y != 204) { for (i=10; i<=22; i+=1) { op[i].y -= 64; } } op[6].visible = false; canedit[6] = 0; op[7].visible = false; canedit[7] = 0; op[8].visible = false; canedit[8] = 0; op[9].visible = false; canedit[9] = 0; } 1 603 7 0 0 -1 2 self 0 0 1 op[1].slwidth = global.opdeadzone / 100 * op[1].w; if (global.opanalogwalk) { op[2].optext = get_text("GlobalOptions", "Enabled"); } else op[2].optext = get_text("GlobalOptions", "Disabled"); if (os_type == os_android) { if (global.opanalog_stick) { op[3].optext = get_text("Buttons", "Right"); } else op[3].optext = get_text("Buttons", "Left"); if (global.opanalog_invert) { op[4].optext = get_text("GlobalOptions", "Enabled"); } else op[4].optext = get_text("GlobalOptions", "Disabled"); } else { op[3].optext = get_joyaxisname(global.opjoybtn_xax); op[4].optext = get_joyaxisname(global.opjoybtn_yax); } if (global.dpad_rebind) { op[5].optext = get_text("GlobalOptions", "Enabled"); } else op[5].optext = get_text("GlobalOptions", "Disabled"); op[6].optext = get_text("Buttons", "Button") + " " + string(global.opjoybtn_padu); op[7].optext = get_text("Buttons", "Button") + " " + + string(global.opjoybtn_padd); op[8].optext = get_text("Buttons", "Button") + " " + + string(global.opjoybtn_padl); op[9].optext = get_text("Buttons", "Button") + " " + + string(global.opjoybtn_padr); op[10].optext = get_text("Buttons", "Button") + " " + + string(global.opjoybtn_a); op[11].optext = get_text("Buttons", "Button") + " " + + string(global.opjoybtn_b); op[12].optext = get_text("Buttons", "Button") + " " + + string(global.opjoybtn_l); op[13].optext = get_text("Buttons", "Button") + " " + + string(global.opjoybtn_l2); op[14].optext = get_text("Buttons", "Button") + " " + + string(global.opjoybtn_r2); op[15].optext = get_text("Buttons", "Button") + " " + + string(global.opjoybtn_x); op[16].optext = get_text("Buttons", "Button") + " " + + string(global.opjoybtn_r); op[17].optext = get_text("Buttons", "Button") + " " + + string(global.opjoybtn_sel); op[18].optext = get_text("Buttons", "Button") + " " + + string(global.opjoybtn_str); op[19].optext = get_text("Buttons", "Button") + " " + + string(global.opjoybtn_menu1); op[20].optext = get_text("Buttons", "Button") + " " + + string(global.opjoybtn_menu2); 1 603 7 0 0 -1 2 self 0 0 1 with (op[1]) instance_destroy(); with (op[2]) instance_destroy(); with (op[3]) instance_destroy(); with (op[4]) instance_destroy(); with (op[5]) instance_destroy(); with (op[6]) instance_destroy(); with (op[7]) instance_destroy(); with (op[8]) instance_destroy(); with (op[9]) instance_destroy(); with (op[10]) instance_destroy(); with (op[11]) instance_destroy(); with (op[12]) instance_destroy(); with (op[13]) instance_destroy(); with (op[14]) instance_destroy(); with (op[15]) instance_destroy(); with (op[16]) instance_destroy(); with (op[17]) instance_destroy(); with (op[18]) instance_destroy(); with (op[19]) instance_destroy(); with (op[20]) instance_destroy(); with (op[21]) instance_destroy(); with (op[22]) instance_destroy(); with (op[50]) instance_destroy(); 1 603 7 0 0 -1 2 self 0 0 1 y -= 8; sep = 16; i = 0; op[50] = instance_create(x, y, oMenuLabel); op[50].text = get_text("OptionsControlJoypad", "Title_Joypad"); // 1.5.1 op[1] = instance_create(x, y + sep, oOptionSlider); op[1].label = get_text("OptionsControlJoypad", "Deadzone"); op[1].optionid = 1; tip[1] = get_text("OptionsControlJoypad", "Deadzone_Tip"); op[2] = instance_create(x, y + sep * 2, oOptionLR); op[2].label = get_text("OptionsControlJoypad", "AnalogWalking"); op[2].optionid = 2; tip[2] = get_text("OptionsControlJoypad", "AnalogWalking_Tip"); op[5] = instance_create(x, y + sep * 5, oOptionLR); op[5].label = get_text("DPadMenu", "DPadRebind"); op[5].optionid = 5; tip[5] = get_text("DPadMenu", "DPadRebind_Tip"); if (os_type != os_android) { op[3] = instance_create(x, y + sep * 3, oOptionLR); op[3].label = get_text("OptionsControlJoypad", "XAxis"); op[3].optionid = 3; tip[3] = get_text("OptionsControlJoypad", "XAxis_Tip"); op[4] = instance_create(x, y + sep * 4, oOptionLR); op[4].label = get_text("OptionsControlJoypad", "YAxis"); op[4].optionid = 4; tip[4] = get_text("OptionsControlJoypad", "YAxis_Tip"); } else { op[3] = instance_create(x, y + sep * 3, oOptionLR); op[3].label = get_text("Android", "AnalogStick"); op[3].optionid = 3; tip[3] = get_text("Android", "AnalogStick_Tip"); op[4] = instance_create(x, y + sep * 4, oOptionLR); op[4].label = get_text("Android", "InvertAxis"); op[4].optionid = 4; tip[4] = get_text("Android", "InvertAxis_Tip"); op[5].visible = false; canedit[5] = 0; } i = 7; // 7 previously if (os_type == os_android || os_type == os_linux) i--; op[6] = instance_create(x, y + sep * i, oOptionLR); op[6].label = get_text("OptionsControlCommands", "Up"); op[6].optionid = 6; tip[6] = get_text("OptionsControlJoypad", "Up_Tip"); if (global.dpad_rebind == 0 && os_type != os_android) { op[6].visible = false; canedit[6] = 0; } i += 1; op[7] = instance_create(x, y + sep * i, oOptionLR); op[7].label = get_text("OptionsControlCommands", "Down"); op[7].optionid = 7; tip[7] = get_text("OptionsControlJoypad", "Down_Tip"); if (global.dpad_rebind == 0 && os_type != os_android) { op[7].visible = false; canedit[7] = 0; } i += 1; op[8] = instance_create(x, y + sep * i, oOptionLR); op[8].label = get_text("OptionsControlCommands", "Left"); op[8].optionid = 8; tip[8] = get_text("OptionsControlJoypad", "Left_Tip"); if (global.dpad_rebind == 0 && os_type != os_android) { op[8].visible = false; canedit[8] = 0; } i += 1; op[9] = instance_create(x, y + sep * i, oOptionLR); op[9].label = get_text("OptionsControlCommands", "Right"); op[9].optionid = 9; tip[9] = get_text("OptionsControlJoypad", "Right_Tip"); if (global.dpad_rebind == 0 && os_type != os_android) { op[9].visible = false; canedit[9] = 0; } i = 7; if (global.dpad_rebind == 1 || (os_type == os_android)) i+=4; if (os_type == os_android) i--; op[10] = instance_create(x, y + sep * i, oOptionLR); op[10].label = get_text("OptionsControlCommands", "Jump"); op[10].optionid = 10; tip[10] = get_text("OptionsControlJoypad", "Jump_Tip"); i += 1; op[11] = instance_create(x, y + sep * i, oOptionLR); op[11].label = get_text("OptionsControlCommands", "Fire"); op[11].optionid = 11; tip[11] = get_text("OptionsControlJoypad", "Fire_Tip"); i += 1; op[12] = instance_create(x, y + sep * i, oOptionLR); if (global.opaimstyle == 0) { op[12].label = get_text("OptionsControlCommands", "DiagonalAim"); tip[12] = get_text("OptionsControlJoypad", "DiagonalAim_Tip"); } else { op[12].label = get_text("OptionsControlCommands", "AimUp"); tip[12] = get_text("OptionsControlJoypad", "AimUp_Tip"); } op[12].optionid = 12; i += 1; if (global.opaimstyle == 1) { op[13] = instance_create(x, y + sep * i, oOptionLR); op[13].label = get_text("OptionsControlCommands", "AimDown"); op[13].optionid = 13; tip[13] = get_text("OptionsControlJoypad", "AimDown_Tip"); i += 1; } else { op[13] = instance_create(x, y + sep * i, oOptionLR); op[13].label = ""; op[13].optionid = 100; op[13].visible = false; tip[13] = ""; } op[14] = instance_create(x, y + sep * i, oOptionLR); op[14].label = get_text("OptionsControlCommands", "AimLock"); op[14].optionid = 14; tip[14] = get_text("OptionsControlJoypad", "AimLock_Tip"); i += 1; op[15] = instance_create(x, y + sep * i, oOptionLR); op[15].label = get_text("OptionsControlCommands", "Morph"); op[15].optionid = 15; tip[15] = get_text("OptionsControlJoypad", "Morph_Tip"); i += 1; op[16] = instance_create(x, y + sep * i, oOptionLR); if (global.opmslstyle == 0) { op[16].label = get_text("OptionsControlCommands", "ArmWeapon"); tip[16] = get_text("OptionsControlJoypad", "ArmWeapon_Tip"); } else { op[16].label = get_text("OptionsControlCommands", "WeaponSelect"); tip[16] = get_text("OptionsControlJoypad", "WeaponSelect_Tip"); } op[16].optionid = 16; i += 1; op[17] = instance_create(x, y + sep * i, oOptionLR); if (global.opmslstyle == 0) { op[17].label = get_text("OptionsControlCommands", "WeaponSelect"); tip[17] = get_text("OptionsControlJoypad", "WeaponSelect_Tip"); } else { op[17].label = get_text("OptionsControlCommands", "WeaponCancel"); tip[17] = get_text("OptionsControlJoypad", "WeaponCancel_Tip"); } op[17].optionid = 17; i += 1; op[18] = instance_create(x, y + sep * i, oOptionLR); op[18].label = get_text("OptionsControlCommands", "Start"); op[18].optionid = 18; tip[18] = get_text("OptionsControlJoypad", "Start_Tip"); i += 1; op[19] = instance_create(x, y + sep * i, oOptionLR); op[19].label = get_text("OptionsControlCommands", "MenuAccept"); op[19].optionid = 19; tip[19] = get_text("OptionsControlJoypad", "MenuAccept_Tip"); i += 1; op[20] = instance_create(x, y + sep * i, oOptionLR); op[20].label = get_text("OptionsControlCommands", "MenuBack"); op[20].optionid = 20; tip[20] = get_text("OptionsControlJoypad", "MenuBack_Tip"); i += 1; op[21] = instance_create(x, y + sep * i, oPauseOption); op[21].optionid = 21; op[21].label = get_text("GlobalOptions", "Defaults"); tip[21] = get_text("GlobalOptions", "Defaults_Tip"); i += 1; op[22] = instance_create(x, y + sep * i, oPauseOption); op[22].optionid = 22; op[22].label = get_text("GlobalOptions", "Exit"); tip[22] = get_text("GlobalOptions", "ExitMain_Tip"); global.tiptext = tip[global.curropt]; event_user(2); 0 0 0 0.5 0.100000001490116 0 0.100000001490116 0.100000001490116 0.200000002980232 -1 0