You've already forked AM2R-Community-Updates
mirror of
https://github.com/izzy2lost/AM2R-Community-Updates.git
synced 2026-03-10 11:23:35 -07:00
552 lines
18 KiB
XML
552 lines
18 KiB
XML
<!--This Document is generated by GameMaker, if you edit it by hand then you do so at your own risk!-->
|
|
<object>
|
|
<spriteName><undefined></spriteName>
|
|
<solid>0</solid>
|
|
<visible>-1</visible>
|
|
<depth>0</depth>
|
|
<persistent>0</persistent>
|
|
<parentName><undefined></parentName>
|
|
<maskName><undefined></maskName>
|
|
<events>
|
|
<event eventtype="0" enumb="0">
|
|
<action>
|
|
<libid>1</libid>
|
|
<id>603</id>
|
|
<kind>7</kind>
|
|
<userelative>0</userelative>
|
|
<isquestion>0</isquestion>
|
|
<useapplyto>-1</useapplyto>
|
|
<exetype>2</exetype>
|
|
<functionname></functionname>
|
|
<codestring></codestring>
|
|
<whoName>self</whoName>
|
|
<relative>0</relative>
|
|
<isnot>0</isnot>
|
|
<arguments>
|
|
<argument>
|
|
<kind>1</kind>
|
|
<string>global.curropt = 0;
|
|
var tempnumcounter = 0;
|
|
//This list dictates the order of selection in the Extras Menu.
|
|
//Also the list in User Defined 0 needs to be in order.
|
|
|
|
num_seed = tempnumcounter++;
|
|
num_useSeed = tempnumcounter++;
|
|
num_elm = tempnumcounter++;
|
|
num_insanity = tempnumcounter++;
|
|
|
|
lastitem = tempnumcounter; //This value will be one number higher than the last number in the list above.
|
|
|
|
seed = string(oControl.mod_seed);
|
|
while (string_length(seed) < 10) seed = "0" + seed;
|
|
|
|
editing = 0;
|
|
digit = 0;
|
|
|
|
var i = 0;
|
|
repeat (10) {
|
|
digit[i] = string_char_at(seed, i + 1);
|
|
i++
|
|
}
|
|
|
|
|
|
vTargetY = 18 * lastitem + 30; //300;
|
|
|
|
active = 0;
|
|
alarm[0] = 5;
|
|
i = 0;
|
|
repeat (lastitem + 1) {
|
|
canedit[i] = 1;
|
|
i += 1;
|
|
}
|
|
targety = y;
|
|
view_object[0] = id;
|
|
timer = 0;
|
|
event_user(0);
|
|
//with (oSS_Control) active = 1;
|
|
/*with (oSS_Fg) {
|
|
active = 1;
|
|
}*/
|
|
|
|
|
|
|
|
/*tip[num_baby] = get_text("ExtrasMenu", "EarlyBaby_Tip");
|
|
tip[num_MSRfusion] = get_text("ExtrasMenu", "FusionMSRsuit_Tip");
|
|
tip[num_exmonsters] = get_text("ExtrasMenu", "ExtremeMonsters_Tip");
|
|
tip[num_bwfilter] = get_text("ExtrasMenu", "GBFilter_Tip");*/
|
|
|
|
tip[num_seed] = get_text("GameplayMenu", "CustomSeed_Tip");
|
|
tip[num_useSeed] = get_text("GameplayMenu", "UseSeed_Tip");
|
|
tip[num_elm] = get_text("ExtrasMenu", "ExtremeMonsters_Tip");
|
|
tip[num_insanity] = get_text("GameplayMenu", "InsanityMode_Tip");
|
|
|
|
|
|
tip[lastitem] = get_text("GlobalOptions", "ExitMain_Tip");
|
|
global.tiptext = tip[global.curropt];
|
|
alarm[1] = 1;
|
|
/*
|
|
modeindex = 0;
|
|
if (global.gamemode == 3) modeindex = get_text("Title-Additions", "GameSlot_NewGame_ClassicMode");
|
|
if (global.gamemode == 4) modeindex = get_text("Title-Additions", "GameSlot_NewGame_AM2Random");
|
|
if (global.gamemode == 5) modeindex = get_text("Title-Additions", "GameSlot_NewGame_SplitRandom");
|
|
</string>
|
|
</argument>
|
|
</arguments>
|
|
</action>
|
|
</event>
|
|
<event eventtype="1" enumb="0">
|
|
<action>
|
|
<libid>1</libid>
|
|
<id>603</id>
|
|
<kind>7</kind>
|
|
<userelative>0</userelative>
|
|
<isquestion>0</isquestion>
|
|
<useapplyto>-1</useapplyto>
|
|
<exetype>2</exetype>
|
|
<functionname></functionname>
|
|
<codestring></codestring>
|
|
<whoName>self</whoName>
|
|
<relative>0</relative>
|
|
<isnot>0</isnot>
|
|
<arguments>
|
|
<argument>
|
|
<kind>1</kind>
|
|
<string>event_user(1);
|
|
</string>
|
|
</argument>
|
|
</arguments>
|
|
</action>
|
|
</event>
|
|
<event eventtype="2" enumb="1">
|
|
<action>
|
|
<libid>1</libid>
|
|
<id>603</id>
|
|
<kind>7</kind>
|
|
<userelative>0</userelative>
|
|
<isquestion>0</isquestion>
|
|
<useapplyto>-1</useapplyto>
|
|
<exetype>2</exetype>
|
|
<functionname></functionname>
|
|
<codestring></codestring>
|
|
<whoName>self</whoName>
|
|
<relative>0</relative>
|
|
<isnot>0</isnot>
|
|
<arguments>
|
|
<argument>
|
|
<kind>1</kind>
|
|
<string></string>
|
|
</argument>
|
|
</arguments>
|
|
</action>
|
|
</event>
|
|
<event eventtype="2" enumb="0">
|
|
<action>
|
|
<libid>1</libid>
|
|
<id>603</id>
|
|
<kind>7</kind>
|
|
<userelative>0</userelative>
|
|
<isquestion>0</isquestion>
|
|
<useapplyto>-1</useapplyto>
|
|
<exetype>2</exetype>
|
|
<functionname></functionname>
|
|
<codestring></codestring>
|
|
<whoName>self</whoName>
|
|
<relative>0</relative>
|
|
<isnot>0</isnot>
|
|
<arguments>
|
|
<argument>
|
|
<kind>1</kind>
|
|
<string>active = 1;
|
|
</string>
|
|
</argument>
|
|
</arguments>
|
|
</action>
|
|
</event>
|
|
<event eventtype="3" enumb="0">
|
|
<action>
|
|
<libid>1</libid>
|
|
<id>603</id>
|
|
<kind>7</kind>
|
|
<userelative>0</userelative>
|
|
<isquestion>0</isquestion>
|
|
<useapplyto>-1</useapplyto>
|
|
<exetype>2</exetype>
|
|
<functionname></functionname>
|
|
<codestring></codestring>
|
|
<whoName>self</whoName>
|
|
<relative>0</relative>
|
|
<isnot>0</isnot>
|
|
<arguments>
|
|
<argument>
|
|
<kind>1</kind>
|
|
<string>
|
|
if (active) {
|
|
if (oControl.kDown > 0 && (oControl.kDownPushedSteps == 0 || oControl.kDownPushedSteps > 30 && timer == 0) && !editing) {
|
|
global.curropt += 1;
|
|
if (global.curropt > lastitem) global.curropt = 0;
|
|
while (canedit[global.curropt] == 0) global.curropt += 1;
|
|
if (global.curropt > lastitem) global.curropt = 0;
|
|
targety = op[global.curropt].y + lastitem;
|
|
if (targety > vTargetY) targety = vTargetY;
|
|
sfx_play(sndMenuMove);
|
|
global.tiptext = tip[global.curropt];
|
|
}
|
|
if (oControl.kUp > 0 && (oControl.kUpPushedSteps == 0 || oControl.kUpPushedSteps > 30 && timer == 0) && !editing) {
|
|
global.curropt -= 1;
|
|
if (global.curropt < 0) global.curropt = lastitem;
|
|
while (canedit[global.curropt] == 0) global.curropt -= 1;
|
|
if (global.curropt < 0) global.curropt = lastitem;
|
|
targety = op[global.curropt].y + lastitem;
|
|
if (targety > vTargetY) targety = vTargetY;
|
|
//if (global.curropt != lastitem) sfx_play(sndMenuMove);
|
|
sfx_play(sndMenuMove);
|
|
global.tiptext = tip[global.curropt];
|
|
}
|
|
|
|
if (oControl.kUp > 0 && oControl.kUpPushedSteps == 0 && oControl.kLeft == 0 && oControl.kRight == 0)
|
|
{
|
|
if (editing && (global.curropt == num_seed)) {
|
|
var tempseed = op[num_seed].optext;
|
|
var char = real(string_char_at(tempseed, op[num_seed].sel + 1));
|
|
char ++;
|
|
if (floor(char) > 9) {
|
|
char = 0;
|
|
}
|
|
tempseed = string_delete(tempseed, op[num_seed].sel + 1, 1);
|
|
tempseed = string_insert(string(char), tempseed, op[num_seed].sel + 1);
|
|
|
|
op[num_seed].optext = tempseed;
|
|
seed = tempseed;
|
|
oControl.mod_seed = real(tempseed);
|
|
sfx_play(sndMenuMove);
|
|
}
|
|
} // End Up
|
|
|
|
if (oControl.kDown > 0 && oControl.kDownPushedSteps == 0 && oControl.kLeft == 0 && oControl.kRight == 0)
|
|
{
|
|
if (editing && (global.curropt == num_seed)) {
|
|
var tempseed = op[num_seed].optext;
|
|
var char = real(string_char_at(tempseed, op[num_seed].sel + 1));
|
|
char --;
|
|
if (floor(char) < 0) {
|
|
char = 9;
|
|
}
|
|
tempseed = string_delete(tempseed, op[num_seed].sel + 1, 1);
|
|
tempseed = string_insert(string(char), tempseed, op[num_seed].sel + 1);
|
|
|
|
op[num_seed].optext = tempseed;
|
|
seed = tempseed;
|
|
oControl.mod_seed = real(tempseed);
|
|
sfx_play(sndMenuMove);
|
|
}
|
|
} // End Down
|
|
|
|
if (oControl.kLeft > 0 && oControl.kLeftPushedSteps == 0 && oControl.kDown == 0 && oControl.kUp == 0)
|
|
{
|
|
if (editing && (global.curropt == num_seed)) {
|
|
op[num_seed].sel --;
|
|
if (floor(op[num_seed].sel) < 0) {
|
|
op[num_seed].sel = 9;
|
|
}
|
|
sfx_play(sndMenuMove);
|
|
}
|
|
} // End Left
|
|
|
|
|
|
if (oControl.kRight > 0 && oControl.kRightPushedSteps == 0 && oControl.kDown == 0 && oControl.kUp == 0)
|
|
{
|
|
if (editing && (global.curropt == num_seed)) {
|
|
op[num_seed].sel ++;
|
|
if (floor(op[num_seed].sel) > 9) {
|
|
op[num_seed].sel = 0;
|
|
}
|
|
sfx_play(sndMenuMove);
|
|
}
|
|
} // End Right
|
|
|
|
//End Controller
|
|
|
|
|
|
if (((oControl.kLeft > 0 && oControl.kLeftPushedSteps == 0) || (oControl.kRight > 0 && oControl.kRightPushedSteps == 0)) && global.curropt < lastitem && oControl.kDown == 0 && oControl.kUp == 0 && global.curropt != num_seed) {
|
|
if (global.curropt == num_useSeed) oControl.mod_usemanualseed = !oControl.mod_usemanualseed;
|
|
if (global.curropt == num_insanity) oControl.mod_insanitymode = !oControl.mod_insanitymode;
|
|
if (global.curropt == num_elm) oControl.mod_monstersextremecheck = !oControl.mod_monstersextremecheck;
|
|
/*if (global.curropt == num_baby) oControl.mod_earlybaby = !oControl.mod_earlybaby;
|
|
if (global.curropt == num_MSRfusion) oControl.msr_fusionsuit = !oControl.msr_fusionsuit;
|
|
if (global.curropt == num_exmonsters) oControl.mod_monstersextremecheck = !oControl.mod_monstersextremecheck;
|
|
if (global.curropt == num_IGT) oControl.mod_IGT = !oControl.mod_IGT;*/
|
|
|
|
sfx_play(sndMenuMove);
|
|
event_user(2);
|
|
}
|
|
|
|
if (editing && (global.curropt == num_seed)) {
|
|
// things?
|
|
}
|
|
|
|
if (oControl.kMenu1 && oControl.kMenu1PushedSteps == 0) {
|
|
if (global.curropt == num_seed) {
|
|
editing = !editing;
|
|
op[num_seed].editing = editing;
|
|
sfx_play(sndMenuSel);
|
|
}
|
|
if (global.curropt == lastitem) {
|
|
save_gameoptions();
|
|
save_modifiers();
|
|
global.curropt = 3;
|
|
room_change(titleroom, 0);
|
|
sfx_play(sndMenuSel);
|
|
}
|
|
} // if (oControl.kMenu1 && oControl.kMenu1PushedSteps == 0)
|
|
} // if (active)
|
|
if (targety != y) y += (targety - y) / 10;
|
|
timer -= 1;
|
|
if (timer < 0) timer = 8;
|
|
</string>
|
|
</argument>
|
|
</arguments>
|
|
</action>
|
|
</event>
|
|
<event eventtype="7" enumb="12">
|
|
<action>
|
|
<libid>1</libid>
|
|
<id>603</id>
|
|
<kind>7</kind>
|
|
<userelative>0</userelative>
|
|
<isquestion>0</isquestion>
|
|
<useapplyto>-1</useapplyto>
|
|
<exetype>2</exetype>
|
|
<functionname></functionname>
|
|
<codestring></codestring>
|
|
<whoName>self</whoName>
|
|
<relative>0</relative>
|
|
<isnot>0</isnot>
|
|
<arguments>
|
|
<argument>
|
|
<kind>1</kind>
|
|
<string>/*if (oControl.palette_number == 0) op[num_bwfilter].optext = get_text("ExtrasMenu", "GBoff");
|
|
if (oControl.palette_number == 1) op[num_bwfilter].optext = get_text("ExtrasMenu", "GBolive");
|
|
if (oControl.palette_number == 2) op[num_bwfilter].optext = get_text("ExtrasMenu", "GBblue");
|
|
if (oControl.palette_number == 3) op[num_bwfilter].optext = get_text("ExtrasMenu", "GBblack");
|
|
if (oControl.palette_number == 4) op[num_bwfilter].optext = get_text("ExtrasMenu", "GBred");
|
|
if (oControl.palette_number == 5) op[num_bwfilter].optext = get_text("ExtrasMenu", "GBgreen");
|
|
if (oControl.palette_number == 6) op[num_bwfilter].optext = get_text("ExtrasMenu", "GBcustom");
|
|
*/
|
|
|
|
// oControl.mod_usemanualseed
|
|
// oControl.seed
|
|
// oControl.mod_seed
|
|
|
|
|
|
if (oControl.mod_usemanualseed == 1) {
|
|
op[num_useSeed].optext = get_text("GlobalOptions", "Yes");
|
|
} else op[num_useSeed].optext = get_text("GlobalOptions", "No");
|
|
|
|
op[num_seed].optext = seed;
|
|
|
|
if (oControl.mod_insanitymode == 1) {
|
|
op[num_insanity].optext = get_text("GlobalOptions", "Enabled");
|
|
} else op[num_insanity].optext = get_text("GlobalOptions", "Disabled");
|
|
|
|
if (oControl.mod_monstersextremecheck == 1) {
|
|
op[num_elm].optext = get_text("GlobalOptions", "Enabled");
|
|
} else op[num_elm].optext = get_text("GlobalOptions", "Disabled");
|
|
|
|
/*
|
|
if (oControl.mod_monstersextremecheck == 1) {
|
|
op[num_exmonsters].optext = get_text("GlobalOptions", "Enabled");
|
|
} else op[num_exmonsters].optext = get_text("GlobalOptions", "Disabled");
|
|
if (global.mod_gamebeaten == 0) {
|
|
op[num_exmonsters].optext = get_text("ExtrasMenu", "Locked");
|
|
}
|
|
|
|
if (oControl.msr_fusionsuit == 1) {
|
|
op[num_MSRfusion].optext = get_text("ExtrasMenu", "MSR");
|
|
} else op[num_MSRfusion].optext = get_text("ExtrasMenu", "Default");
|
|
if (global.mod_fusion_unlocked == 0) {
|
|
op[num_MSRfusion].optext = get_text("ExtrasMenu", "Locked");
|
|
}
|
|
|
|
if (oControl.mod_IGT == 1) {
|
|
op[num_IGT].optext = get_text("GlobalOptions", "Enabled");
|
|
} else op[num_IGT].optext = get_text("GlobalOptions", "Disabled");
|
|
if (global.mod_gamebeaten == 0) {
|
|
op[num_IGT].optext = get_text("ExtrasMenu", "Locked");
|
|
}
|
|
</string>
|
|
</argument>
|
|
</arguments>
|
|
</action>
|
|
</event>
|
|
<event eventtype="7" enumb="11">
|
|
<action>
|
|
<libid>1</libid>
|
|
<id>603</id>
|
|
<kind>7</kind>
|
|
<userelative>0</userelative>
|
|
<isquestion>0</isquestion>
|
|
<useapplyto>-1</useapplyto>
|
|
<exetype>2</exetype>
|
|
<functionname></functionname>
|
|
<codestring></codestring>
|
|
<whoName>self</whoName>
|
|
<relative>0</relative>
|
|
<isnot>0</isnot>
|
|
<arguments>
|
|
<argument>
|
|
<kind>1</kind>
|
|
<string>for (var i = 0; i <= lastitem; i++)
|
|
{
|
|
with (op[i]) instance_destroy();
|
|
}
|
|
|
|
with (op[50]) instance_destroy();
|
|
</string>
|
|
</argument>
|
|
</arguments>
|
|
</action>
|
|
</event>
|
|
<event eventtype="7" enumb="10">
|
|
<action>
|
|
<libid>1</libid>
|
|
<id>603</id>
|
|
<kind>7</kind>
|
|
<userelative>0</userelative>
|
|
<isquestion>0</isquestion>
|
|
<useapplyto>-1</useapplyto>
|
|
<exetype>2</exetype>
|
|
<functionname></functionname>
|
|
<codestring></codestring>
|
|
<whoName>self</whoName>
|
|
<relative>0</relative>
|
|
<isnot>0</isnot>
|
|
<arguments>
|
|
<argument>
|
|
<kind>1</kind>
|
|
<string>//This list needs to be in order. It won't work correctly otherwise.
|
|
|
|
sep = 16;
|
|
op[50] = instance_create(x, y, oMenuLabel);
|
|
op[50].text = get_text("GameplayMenu", "Title_Gameplay");
|
|
|
|
var tempcount = 1;
|
|
|
|
op[num_seed] = instance_create(x, y + sep * tempcount++, oOptionSeed);
|
|
op[num_seed].label = get_text("GameplayMenu", "CustomSeed");
|
|
op[num_seed].optionid = num_seed;
|
|
|
|
op[num_useSeed] = instance_create(x, y + sep * tempcount++, oOptionLR);
|
|
op[num_useSeed].label = get_text("GameplayMenu", "UseSeed");
|
|
op[num_useSeed].optionid = num_useSeed;
|
|
|
|
op[num_elm] = instance_create(x, y + sep * tempcount++, oOptionLR);
|
|
op[num_elm].label = get_text("ExtrasMenu", "ExtremeMonsters");
|
|
op[num_elm].optionid = num_elm;
|
|
|
|
op[num_insanity] = instance_create(x, y + sep * tempcount++, oOptionLR);
|
|
op[num_insanity].label = get_text("GameplayMenu", "InsanityMode");
|
|
op[num_insanity].optionid = num_insanity;
|
|
|
|
/*
|
|
op[num_exmonsters] = instance_create(x, y + sep * tempcount++, oOptionLR);
|
|
op[num_exmonsters].label = get_text("ExtrasMenu", "ExtremeMonsters");
|
|
op[num_exmonsters].optionid = num_exmonsters;
|
|
if (global.mod_gamebeaten == 0) {
|
|
op[num_exmonsters].enabled = 0;
|
|
canedit[num_exmonsters] = 0;
|
|
}
|
|
|
|
op[num_MSRfusion] = instance_create(x, y + sep * tempcount++, oOptionLR);
|
|
op[num_MSRfusion].label = get_text("ExtrasMenu", "FusionMSRsuit");
|
|
op[num_MSRfusion].optionid = num_MSRfusion;
|
|
if (global.mod_fusion_unlocked == 0) {
|
|
op[num_MSRfusion].enabled = 0;
|
|
canedit[num_MSRfusion] = 0;
|
|
}
|
|
|
|
op[num_IGT] = instance_create(x, y + sep * tempcount++, oOptionLR);
|
|
op[num_IGT].label = get_text("ExtrasMenu", "IGT");
|
|
op[num_IGT].optionid = num_IGT;
|
|
if (global.mod_gamebeaten == 0) {
|
|
op[num_IGT].enabled = 0;
|
|
canedit[num_IGT] = 0;
|
|
}*/
|
|
|
|
op[lastitem] = instance_create(x, y + sep * (lastitem + 1), oPauseOption);
|
|
op[lastitem].optionid = lastitem;
|
|
op[lastitem].label = get_text("GlobalOptions", "Exit");
|
|
event_user(2);
|
|
|
|
|
|
|
|
</string>
|
|
</argument>
|
|
</arguments>
|
|
</action>
|
|
</event>
|
|
<event eventtype="8" enumb="0">
|
|
<action>
|
|
<libid>1</libid>
|
|
<id>603</id>
|
|
<kind>7</kind>
|
|
<userelative>0</userelative>
|
|
<isquestion>0</isquestion>
|
|
<useapplyto>-1</useapplyto>
|
|
<exetype>2</exetype>
|
|
<functionname></functionname>
|
|
<codestring></codestring>
|
|
<whoName>self</whoName>
|
|
<relative>0</relative>
|
|
<isnot>0</isnot>
|
|
<arguments>
|
|
<argument>
|
|
<kind>1</kind>
|
|
<string>if (room == rm_subscreen) {
|
|
if(global.gamemode == 3 || global.gamemode == 4 || global.gamemode == 5) {
|
|
draw_cool_text(50, 60 - 8, get_text("Misc", "ExtrasMode") + ": " + modeindex, c_black, c_gray, c_dkgray, 1)
|
|
draw_cool_text(50, 73 - 8, get_text("Misc", "ExtrasSeed") + ": " + string(oControl.seed), c_black, c_gray, c_dkgray, 1);
|
|
}
|
|
}
|
|
</string>
|
|
</argument>
|
|
</arguments>
|
|
</action>
|
|
</event>
|
|
<event eventtype="9" enumb="120">
|
|
<action>
|
|
<libid>1</libid>
|
|
<id>603</id>
|
|
<kind>7</kind>
|
|
<userelative>0</userelative>
|
|
<isquestion>0</isquestion>
|
|
<useapplyto>-1</useapplyto>
|
|
<exetype>2</exetype>
|
|
<functionname></functionname>
|
|
<codestring></codestring>
|
|
<whoName>self</whoName>
|
|
<relative>0</relative>
|
|
<isnot>0</isnot>
|
|
<arguments>
|
|
<argument>
|
|
<kind>1</kind>
|
|
<string>event_user(2);
|
|
</string>
|
|
</argument>
|
|
</arguments>
|
|
</action>
|
|
</event>
|
|
</events>
|
|
<PhysicsObject>0</PhysicsObject>
|
|
<PhysicsObjectSensor>0</PhysicsObjectSensor>
|
|
<PhysicsObjectShape>0</PhysicsObjectShape>
|
|
<PhysicsObjectDensity>0.5</PhysicsObjectDensity>
|
|
<PhysicsObjectRestitution>0.100000001490116</PhysicsObjectRestitution>
|
|
<PhysicsObjectGroup>0</PhysicsObjectGroup>
|
|
<PhysicsObjectLinearDamping>0.100000001490116</PhysicsObjectLinearDamping>
|
|
<PhysicsObjectAngularDamping>0.100000001490116</PhysicsObjectAngularDamping>
|
|
<PhysicsObjectFriction>0.200000002980232</PhysicsObjectFriction>
|
|
<PhysicsObjectAwake>-1</PhysicsObjectAwake>
|
|
<PhysicsObjectKinematic>0</PhysicsObjectKinematic>
|
|
<PhysicsShapePoints/>
|
|
</object>
|