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
350 lines
11 KiB
XML
350 lines
11 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>/*
|
|
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;/milesthenerd;;*Art Lead;/Dannon 'Shmegleskimo' Yates;;*Art;ShirtyScarab=Cooper Garvin;/Chris 'Messianic' Oliveira;/ChloePlz;;*Debug;Miepee=EODTex;/Esteban 'DruidVorse' Criado;/Verneri 'Naatiska' Viljanen;/Electrix;;*Localization;Imsu=Diegomg;m3Zz=LPCaiser;Miepee=unknown;fedprod=ReNext;LetsPlayNintendoITA=SadNES cITy e Vecna;Atver=Gponys;DarkEspeon=Vectrex28;R3VOWOOD=Ritinha;LiveLM=pMega0n;peachflavored=Katherine_S2003;PanHooHa=realgard;Mister Bond=joe_urahara;RippeR1692=LudvigNG;/Andréas;;*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 < TEXT_ROWS; i++) {
|
|
for (var j = 0; j < 4; j++) {
|
|
textArray[i, j] = "";
|
|
}
|
|
}
|
|
|
|
var strLength = string_length(text)
|
|
|
|
// Parse text
|
|
for (var i = 1; i <= 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 < 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 < 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 && (oControl.kMenu1 || oControl.kMenu2 || oControl.kStart)) fadeout = 1;
|
|
|
|
// Fadeout routine
|
|
if (fadeout) {
|
|
if (yoffset > 0) {
|
|
yoffset -= 1;
|
|
} else event_user(0);
|
|
}
|
|
|
|
// Credits cutscene animation
|
|
if (statetime == 360) instance_create(192, 88, oCreditsShip);
|
|
|
|
// Fade in
|
|
if (statetime > 520) {
|
|
if (image_alpha < 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 <= 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>
|