<!--This Document is generated by GameMaker, if you edit it by hand then you do so at your own risk!-->
<object>
  <spriteName>&lt;undefined&gt;</spriteName>
  <solid>0</solid>
  <visible>-1</visible>
  <depth>0</depth>
  <persistent>0</persistent>
  <parentName>&lt;undefined&gt;</parentName>
  <maskName>&lt;undefined&gt;</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>/*
    FORMATTING KEY:
    ; = linebreak marker (NOT # because we want to handle it manually and insert them later)
    = = split into left/right strings here
    / = centered name
    * = centered header (gets custom display color)
*/

// Refer to key above
text = "*Another " + global.monsterStr + " 2 Remake;;;;;;;;;;;;*Producer;/Milton 'DoctorM64' Guasti;;*Graphic Design;Ramiro Negri=MichaelGabrielR;Jasper=Jack Witty;/Steve 'Sabre230' Rothlisberger;/Kirill '1Eni1' Fevralev;;*Promo Art;/Azima 'Zim' Khan;;*Writing;/James 'Ridley' Hobbs;/Paulo 'Latinlingo' Villalobos;;*Platform Engine Code;/Martin Piecyk;;*Music Composition;/Milton 'DoctorM64' Guasti;/Darren Kerwin;/Torbjørn 'Falcool' Brandrud;;*Debug;/Dragondarch=Hemse;/Esteban 'DruidVorse' Criado;/Verneri 'Naatiska' Viljanen;;*Playtesting;Jennifer Potter=Mario Crestanello;Live4Truths=Nommiin;/Torbjørn 'Falcool' Brandrud;/Nicolas 'Skol' Del Negro;Lise Trehjørningen=Gabriel Kaplan;Darren Kerwin=Robert Sephazon;;*Community Management;Dragonheart91=Ammypendent;/Karrde;;*Special Thanks;Nommiin=Tyler Rogers;Kousoru=Infinity's End;Isabelle Amponin=CapCom;/Nathan 'wickedclown' Hess;/The " + global.monsterStr + " Community;;;;*Source Code Reconstruction;/YellowAfterlife;;;;*Continued Revisions;;*Development;Gatordile=Lojemiru;/Alex 'Wanderer' Mack;;*Programming;" + global.monsterStr + "3D=Scooterboot;/Craig Kostelecky;;*Art Lead;/Dannon 'Shmegleskimo' Yates;;*Art;ShirtyScarab=Cooper Garvin;/Chris 'Messianic' Oliveira;/ChloePlz;;*Debug;Miepee=EODTex;/Esteban 'DruidVorse' Criado;/Verneri 'Naatiska' Viljanen;/Electrix;;*Localization;*Spanish;Imsu=Diegomg;*German;m3Zz=LPCaiser;Miepee=unknown;/fedprod;*Italian;LetsPlayNintendoITA=SadNES cITy e Vecna;/ReNext;*French;Atver=Vectrex28;*Russian;/DarkEspeon;*Japanese;/Gponys;*Czech;/Vectrex28;;*Special Thanks;Banjo=King Bore;Reaku the Crate=Grom PE;Sylandro=TheKhaosDemon;Iwantdevil=PixHammer;GaptGlitch=Nokbient;Nanassshy=kitronmacaron;/Jean-Samuel Pelletier;/Japanese Community;;;;*Original " + global.monsterStr + " II Staff;;*Producer;/Gunpei Yokoi;;*Director;Hiroji Kiyotake=Hiroyuki Kimura;;*Main Programmer;/Takahiro Harada;;*Programmer;Masaru Yamanaka=Masao Yamamoto;/Isao Hirano;;*Graphic Designer;Hiroji Kiyotake=Hiroyuki Kimura;;*Program Assistant;Yuzuru Ogawa=Nobuhiro Ozaki;;*Sound Programmer;/Ryohji Yoshitomi;;*Designer;Makoto Kanoh=Masafumi Sakashita;Tomoyoshi Yamane=Takehiko Hosokawa;/Yasuo Inoue;;*Debug;Masaru Okadaga=Kenji Nishizawa;Hirofumi Matsuoka=Tohru Ohsawa;Kohta Fukui=Keisuke Terasaki;Kenichi Sugino=Hitoshi Yamagami;Katsuya Yamaoe=Yuji Hori;;;;;;;;;;/In Memory of Satoru Iwata;";

// Constants
TEXT_ROWS = string_count(";", text);
X_POS = room_width / 2;
WIDE_SPACE = oControl.widescreen_space / 2;

// Calculate scroll speed based on line count.
SCROLL_SPEED = (TEXT_ROWS * -0.27) / 120;

// Vars
var arrayIndex = 0;
var subStr = "";
var line = 0;

// Generate blank space in 2D array...
for (var i = 0; i &lt; TEXT_ROWS; i++) {
    for (var j = 0; j &lt; 4; j++) {
        textArray[i, j] = "";
    }
}

var strLength = string_length(text)

// Parse text
for (var i = 1; i &lt;= strLength; i++) {
    // Get next char
    var nextChar = string_char_at(text, i);
    
    // Parsing - refer to key above
    if (nextChar == "=") { // Split
        // Store subStr as left (technically anything but left is what it /should/ be)
        textArray[line, arrayIndex] = subStr;
        
        // Reset subStr
        subStr = "";
        
        // Set next index to right
        arrayIndex = 1;
    }
    else if (nextChar == ";") { // Linebreak
        // Store subStr to index
        textArray[line, arrayIndex] = subStr;
        
        // Reset subStr/index
        subStr = ""; 
        arrayIndex = 0;
                
        // Drop to next line
        line++;
    }
    else if (nextChar == "/") { // Centered
        // Set index to center
        arrayIndex = 2;
    }
    else if (nextChar == "*") { // Centered header
        // Set index to header
        arrayIndex = 3;
    }
    else {
        // Add current char to subStr
        subStr += nextChar;
    }
}

// Create text strings
textLeft = "";
textRight = "";
textCenter = "";
textHeader = "";

// Compile arrays into their respective strings; add newlines
for (var i = 0; i &lt; TEXT_ROWS; i++) {
    textLeft += textArray[i, 0] + "#";
    textRight += textArray[i, 1] + "#";
    textCenter += textArray[i, 2] + "#";
    textHeader += textArray[i, 3] + "#";
}


yoffset = 0;
fadeout = 0;
canfadeout = 0;
alarm[0] = 1;
image_alpha = 0;
if (global.creditsmenuopt == 1) {
    alarm[2] = 300; //300
    statetime = 500; //500
    alarm[1] = 5500; //5500
} else {
    statetime = 0;
    alarm[1] = 6000; //6000
}

if (os_type == os_android) os_powersave_enable(false);
</string>
          </argument>
        </arguments>
      </action>
    </event>
    <event eventtype="2" enumb="2">
      <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>canfadeout = 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>fadeout = 1;
</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>if (yoffset &lt; 120) {
    yoffset += 0.5;
    alarm[0] = 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>// User fadeout input
if (canfadeout &amp;&amp; (oControl.kMenu1 || oControl.kMenu2 || oControl.kStart)) fadeout = 1;

// Fadeout routine
if (fadeout) {
    if (yoffset &gt; 0) {
        yoffset -= 1;
    } else event_user(0);
}

// Credits cutscene animation
if (statetime == 360) instance_create(192, 88, oCreditsShip);

// Fade in
if (statetime &gt; 520) {
    if (image_alpha &lt; 1) image_alpha += 0.05;
}

// This dictates the credit scrolling speed
if (statetime == 700) vspeed = SCROLL_SPEED; // -0.34;

// This stops the credits on the final line
if (y &lt;= ystart + 8 - (TEXT_ROWS * 12)) vspeed = 0;

statetime++;
</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>/// Reset GUI, determine exit condition

display_set_gui_size(-1,-1);

if (global.creditsmenuopt == 0) {
    room_goto(rm_score);
} else {
    if (os_type == os_android) os_powersave_enable(true);
    global.creditsmenuopt = 0;
    room_goto(titleroom);
}
</string>
          </argument>
        </arguments>
      </action>
    </event>
    <event eventtype="8" enumb="64">
      <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>// Setup
display_set_gui_size(320, 240);
draw_set_alpha(image_alpha);
draw_set_font(fontGUI2);

// Left
draw_set_halign(fa_right);
draw_cool_text(X_POS - 12, y + 17, textLeft, c_black, c_white, c_white, 1);

// Right
draw_set_halign(fa_left);
draw_cool_text(X_POS + 12, y + 17, textRight, c_black, c_white, c_white, 1);

// Center
draw_set_halign(fa_center);
draw_cool_text(X_POS, y + 17, textCenter, c_black, c_white, c_white, 1);

// Header
draw_cool_text(X_POS, y + 17, textHeader, c_black, c_dkgray, c_gray, 1);

// Draw black bars
draw_set_alpha(1);
draw_set_color(c_black);
draw_rectangle(0 - WIDE_SPACE, 0, 330 + WIDE_SPACE, 120 - yoffset, false);
draw_rectangle(0 - WIDE_SPACE, 120 + yoffset, 330 + WIDE_SPACE, 250, false);
</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>
