Merge pull request #3 from lassiterm/dev

Merge
cleaner v1.1
milesthenerd 5 years ago committed by GitHub
commit 0d5ee15d0d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

3
.gitignore vendored

@ -9,11 +9,12 @@ scripts/pal_swap_*
*.shader
\#backups
exports
datafiles
help.rtf
datafiles/lang/*
datafiles/mods/*
datafiles/modifiers.ini
datafiles/readme.txt
datafiles/explanations.txt
exports
extensions
AM2R.exe

@ -3,8 +3,8 @@
<Configs name="configs">
<Config>Configs\Default</Config>
</Configs>
<datafiles number="245" name="datafiles">
<datafiles number="245" name="lang">
<datafiles number="297" name="datafiles">
<datafiles number="297" name="lang">
<datafile>
<name>czech.ini</name>
<exists>-1</exists>
@ -158,7 +158,706 @@
</ConfigOptions>
<filename>languages.txt</filename>
</datafile>
<datafiles number="245" name="fonts">
<datafiles number="297" name="headers">
<datafile>
<name>castellano_a1_f24_b0_c3_d19_e21.png</name>
<exists>-1</exists>
<size>1668</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>castellano_a1_f24_b0_c3_d19_e21.png</filename>
</datafile>
<datafile>
<name>castellano_a2_f31_b0_c3_d26_e28.png</name>
<exists>-1</exists>
<size>2607</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>castellano_a2_f31_b0_c3_d26_e28.png</filename>
</datafile>
<datafile>
<name>castellano_a3_f30_b0_c3_d25_e27.png</name>
<exists>-1</exists>
<size>2266</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>castellano_a3_f30_b0_c3_d25_e27.png</filename>
</datafile>
<datafile>
<name>castellano_a4_f19_b0_c3_d14_e16.png</name>
<exists>-1</exists>
<size>1080</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>castellano_a4_f19_b0_c3_d14_e16.png</filename>
</datafile>
<datafile>
<name>castellano_a5_f32_b0_c3_d27_e29.png</name>
<exists>-1</exists>
<size>2767</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>castellano_a5_f32_b0_c3_d27_e29.png</filename>
</datafile>
<datafile>
<name>castellano_a7_f19_b0_c7_d9_e17.png</name>
<exists>-1</exists>
<size>1129</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>castellano_a7_f19_b0_c7_d9_e17.png</filename>
</datafile>
<datafile>
<name>castellano_a8_f20_b0_c7_d15_e17.png</name>
<exists>-1</exists>
<size>811</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>castellano_a8_f20_b0_c7_d15_e17.png</filename>
</datafile>
<datafile>
<name>deutsch_a1_f26_b0_c3_d21_e23.png</name>
<exists>-1</exists>
<size>1838</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>deutsch_a1_f26_b0_c3_d21_e23.png</filename>
</datafile>
<datafile>
<name>deutsch_a2_f22_b0_c3_d17_e19.png</name>
<exists>-1</exists>
<size>1337</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>deutsch_a2_f22_b0_c3_d17_e19.png</filename>
</datafile>
<datafile>
<name>deutsch_a3_f28_b0_c3_d23_e25.png</name>
<exists>-1</exists>
<size>2056</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>deutsch_a3_f28_b0_c3_d23_e25.png</filename>
</datafile>
<datafile>
<name>deutsch_a4_f19_b0_c3_d14_e16.png</name>
<exists>-1</exists>
<size>1075</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>deutsch_a4_f19_b0_c3_d14_e16.png</filename>
</datafile>
<datafile>
<name>deutsch_a5_f28_b0_c3_d23_e25.png</name>
<exists>-1</exists>
<size>1990</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>deutsch_a5_f28_b0_c3_d23_e25.png</filename>
</datafile>
<datafile>
<name>deutsch_a7_f19_b0_c7_d9_e17.png</name>
<exists>-1</exists>
<size>1445</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>deutsch_a7_f19_b0_c7_d9_e17.png</filename>
</datafile>
<datafile>
<name>francais_a1_f22_b0_c3_d17_e19.png</name>
<exists>-1</exists>
<size>1519</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>francais_a1_f22_b0_c3_d17_e19.png</filename>
</datafile>
<datafile>
<name>francais_a2_f25_b0_c3_d20_e22.png</name>
<exists>-1</exists>
<size>1705</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>francais_a2_f25_b0_c3_d20_e22.png</filename>
</datafile>
<datafile>
<name>francais_a3_f30_b0_c3_d25_e27.png</name>
<exists>-1</exists>
<size>2311</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>francais_a3_f30_b0_c3_d25_e27.png</filename>
</datafile>
<datafile>
<name>francais_a4_f18_b0_c3_d13_e15.png</name>
<exists>-1</exists>
<size>986</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>francais_a4_f18_b0_c3_d13_e15.png</filename>
</datafile>
<datafile>
<name>francais_a5_f32_b0_c3_d27_e29.png</name>
<exists>-1</exists>
<size>2461</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>francais_a5_f32_b0_c3_d27_e29.png</filename>
</datafile>
<datafile>
<name>francais_a7_f19_b0_c7_d9_e17.png</name>
<exists>-1</exists>
<size>1160</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>francais_a7_f19_b0_c7_d9_e17.png</filename>
</datafile>
<datafile>
<name>francais_a8_f20_b0_c7_d15_e17.png</name>
<exists>-1</exists>
<size>907</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>francais_a8_f20_b0_c7_d15_e17.png</filename>
</datafile>
<datafile>
<name>italiano_a1_f26_b0_c3_d21_e23.png</name>
<exists>-1</exists>
<size>1950</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>italiano_a1_f26_b0_c3_d21_e23.png</filename>
</datafile>
<datafile>
<name>italiano_a2_f26_b0_c3_d21_e23.png</name>
<exists>-1</exists>
<size>1817</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>italiano_a2_f26_b0_c3_d21_e23.png</filename>
</datafile>
<datafile>
<name>italiano_a3_f32_b0_c3_d27_e29.png</name>
<exists>-1</exists>
<size>2458</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>italiano_a3_f32_b0_c3_d27_e29.png</filename>
</datafile>
<datafile>
<name>italiano_a4_f19_b0_c3_d14_e16.png</name>
<exists>-1</exists>
<size>1080</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>italiano_a4_f19_b0_c3_d14_e16.png</filename>
</datafile>
<datafile>
<name>italiano_a5_f33_b0_c3_d28_e30.png</name>
<exists>-1</exists>
<size>2736</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>italiano_a5_f33_b0_c3_d28_e30.png</filename>
</datafile>
<datafile>
<name>italiano_a7_f19_b0_c7_d9_e17.png</name>
<exists>-1</exists>
<size>1167</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>italiano_a7_f19_b0_c7_d9_e17.png</filename>
</datafile>
<datafile>
<name>italiano_a8_f20_b0_c7_d15_e17.png</name>
<exists>-1</exists>
<size>858</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>italiano_a8_f20_b0_c7_d15_e17.png</filename>
</datafile>
<datafile>
<name>japanese_a1_f16_b0_c3_d11_e13.png</name>
<exists>-1</exists>
<size>2444</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>japanese_a1_f16_b0_c3_d11_e13.png</filename>
</datafile>
<datafile>
<name>japanese_a2_f16_b0_c3_d11_e13.png</name>
<exists>-1</exists>
<size>2673</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>japanese_a2_f16_b0_c3_d11_e13.png</filename>
</datafile>
<datafile>
<name>japanese_a3_f16_b0_c3_d11_e13.png</name>
<exists>-1</exists>
<size>2722</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>japanese_a3_f16_b0_c3_d11_e13.png</filename>
</datafile>
<datafile>
<name>japanese_a4_f15_b0_c3_d10_e12.png</name>
<exists>-1</exists>
<size>1822</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>japanese_a4_f15_b0_c3_d10_e12.png</filename>
</datafile>
<datafile>
<name>japanese_a5_f18_b0_c3_d13_e15.png</name>
<exists>-1</exists>
<size>4153</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>japanese_a5_f18_b0_c3_d13_e15.png</filename>
</datafile>
<datafile>
<name>japanese_a7_f19_b0_c7_d9_e17.png</name>
<exists>-1</exists>
<size>2232</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>japanese_a7_f19_b0_c7_d9_e17.png</filename>
</datafile>
<datafile>
<name>japanese_a8_f20_b0_c3_d15_e17.png</name>
<exists>-1</exists>
<size>4048</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>japanese_a8_f20_b0_c3_d15_e17.png</filename>
</datafile>
<datafile>
<name>russian_a1_f23_b0_c3_d18_e20.png</name>
<exists>-1</exists>
<size>1730</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>russian_a1_f23_b0_c3_d18_e20.png</filename>
</datafile>
<datafile>
<name>russian_a2_f24_b0_c3_d19_e21.png</name>
<exists>-1</exists>
<size>1585</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>russian_a2_f24_b0_c3_d19_e21.png</filename>
</datafile>
<datafile>
<name>russian_a3_f22_b0_c3_d17_e19.png</name>
<exists>-1</exists>
<size>1440</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>russian_a3_f22_b0_c3_d17_e19.png</filename>
</datafile>
<datafile>
<name>russian_a4_f17_b0_c3_d12_e14.png</name>
<exists>-1</exists>
<size>882</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>russian_a4_f17_b0_c3_d12_e14.png</filename>
</datafile>
<datafile>
<name>russian_a5_f30_b0_c3_d25_e27.png</name>
<exists>-1</exists>
<size>2524</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>russian_a5_f30_b0_c3_d25_e27.png</filename>
</datafile>
<datafile>
<name>russian_a7_f19_b0_c7_d9_e17.png</name>
<exists>-1</exists>
<size>1401</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>russian_a7_f19_b0_c7_d9_e17.png</filename>
</datafile>
<datafile>
<name>russian_a8_f19_b0_c3_d14_e16.png</name>
<exists>-1</exists>
<size>873</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
<freeData>-1</freeData>
<removeEnd>0</removeEnd>
<store>0</store>
<ConfigOptions>
<Config name="Default">
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>russian_a8_f19_b0_c3_d14_e16.png</filename>
</datafile>
</datafiles>
<datafiles number="297" name="fonts">
<datafile>
<name>04b09.ttf</name>
<exists>-1</exists>
@ -315,9 +1014,9 @@
<filename>modifiers.ini</filename>
</datafile>
<datafile>
<name>ipaddress.txt</name>
<name>readme.txt</name>
<exists>-1</exists>
<size>0</size>
<size>2802</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
@ -329,12 +1028,12 @@
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>ipaddress.txt</filename>
<filename>readme.txt</filename>
</datafile>
<datafile>
<name>readme.txt</name>
<name>mod settings.ini</name>
<exists>-1</exists>
<size>2802</size>
<size>67</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
@ -346,7 +1045,7 @@
<CopyToMask>9223372036854775807</CopyToMask>
</Config>
</ConfigOptions>
<filename>readme.txt</filename>
<filename>mod settings.ini</filename>
</datafile>
<datafile>
<name>dictionary.json</name>
@ -365,8 +1064,8 @@
</ConfigOptions>
<filename>dictionary.json</filename>
</datafile>
<datafiles number="245" name="mods">
<datafiles number="245" name="titles">
<datafiles number="297" name="mods">
<datafiles number="297" name="titles">
<datafile>
<name>config.ini</name>
<exists>-1</exists>
@ -402,8 +1101,8 @@
<filename>titlebackground.png</filename>
</datafile>
</datafiles>
<datafiles number="245" name="palettes">
<datafiles number="245" name="monsters">
<datafiles number="297" name="palettes">
<datafiles number="297" name="monsters">
<datafile>
<name>alpha.png</name>
<exists>-1</exists>
@ -424,7 +1123,7 @@
<datafile>
<name>config.ini</name>
<exists>-1</exists>
<size>138</size>
<size>135</size>
<exportAction>2</exportAction>
<exportDir></exportDir>
<overwrite>0</overwrite>
@ -575,7 +1274,7 @@
<filename>zeta_blur.png</filename>
</datafile>
</datafiles>
<datafiles number="245" name="suits">
<datafiles number="297" name="suits">
<datafile>
<name>fusion_gravity.png</name>
<exists>-1</exists>
@ -678,7 +1377,7 @@
</ConfigOptions>
<filename>varia.png</filename>
</datafile>
<datafiles number="245" name="MorphTrailColors">
<datafiles number="297" name="MorphTrailColors">
<datafile>
<name>fusion_gravity.png</name>
<exists>-1</exists>
@ -782,7 +1481,7 @@
<filename>varia.png</filename>
</datafile>
</datafiles>
<datafiles number="245" name="SpaceJumpTrails">
<datafiles number="297" name="SpaceJumpTrails">
<datafile>
<name>fusion_gravity.png</name>
<exists>-1</exists>
@ -886,7 +1585,7 @@
<filename>varia.png</filename>
</datafile>
</datafiles>
<datafiles number="245" name="SpiderBallGlow">
<datafiles number="297" name="SpiderBallGlow">
<datafile>
<name>fusion_gravity.png</name>
<exists>-1</exists>
@ -3423,6 +4122,15 @@
</sprites>
<sprite>sprites\sShipGlow</sprite>
</sprites>
<sprites name="Multitroid Assets">
<sprite>sprites\sMultitroidIcon</sprite>
<sprite>sprites\sPalMultitroidNew</sprite>
<sprite>sprites\sDarkMultitroidPlayer</sprite>
<sprite>sprites\sPalMultitroidFusion</sprite>
<sprite>sprites\sPalSpiderball</sprite>
<sprite>sprites\sPalMultitroidBaby</sprite>
<sprite>sprites\sMultitroidMapIcon</sprite>
</sprites>
</sprites>
<backgrounds name="background">
<background>background\bgScreenGuide</background>
@ -4357,29 +5065,37 @@
<script>scripts\set_widescreen.gml</script>
</scripts>
<scripts name="Nerd">
<script>scripts\wrap.gml</script>
<script>scripts\update_variables.gml</script>
<script>scripts\create_buffer.gml</script>
<script>scripts\send_seed.gml</script>
<script>scripts\popup_text_ext.gml</script>
<script>scripts\draw_character_ext.gml</script>
</scripts>
<scripts name="Misc">
<script>scripts\pal_swap_get_color_count.gml</script>
<script>scripts\pal_swap_set_depth.gml</script>
<script>scripts\wrap.gml</script>
<script>scripts\pal_swap_get_pal_count.gml</script>
<script>scripts\pal_swap_reset.gml</script>
<script>scripts\pal_swap_init_system.gml</script>
<script>scripts\pal_swap_set.gml</script>
<script>scripts\pal_swap_draw_palette.gml</script>
<script>scripts\findIndex.gml</script>
<script>scripts\update_variables.gml</script>
<script>scripts\pal_swap_set.gml</script>
<script>scripts\pal_swap_init_system.gml</script>
<script>scripts\array_clone.gml</script>
<script>scripts\strict_init.gml</script>
<script>scripts\strict_compress.gml</script>
<script>scripts\strict_decompress.gml</script>
<script>scripts\strict_encode_verb.gml</script>
<script>scripts\create_buffer.gml</script>
<script>scripts\send_seed.gml</script>
<script>scripts\popup_text_ext.gml</script>
<script>scripts\pal_swap_draw_palette.gml</script>
</scripts>
</scripts>
<shaders name="shaders">
<shader type="GLSLES">shaders\shGameBoy.shader</shader>
<shader type="GLSLES">shaders\shPaletteSwap.shader</shader>
<shader type="GLSLES">shaders\shd_grayscale.shader</shader>
<shader type="GLSLES">shaders\shd_pal_swapper.shader</shader>
<shader type="GLSLES">shaders\shd_pal_swapper_html_sprite.shader</shader>
<shader type="GLSLES">shaders\shd_pal_swapper_html_surface.shader</shader>
<shader type="GLSLES">shaders\shd_sepia.shader</shader>
<shader type="GLSLES">shaders\shd_thermal.shader</shader>
</shaders>
<fonts name="fonts">
<font>fonts\font0</font>
@ -4390,6 +5106,7 @@
<font>fonts\fontMenuTinyDefault</font>
<font>fonts\fontMenuSmall2Default</font>
<font>fonts\fontSubScrDefault</font>
<font>fonts\font_displayname</font>
</fonts>
<objects name="objects">
<objects name="Test">
@ -5420,6 +6137,7 @@
<object>objects\oA3_Missiles_Glow</object>
</objects>
<object>objects\oClient</object>
<object>objects\oNametag</object>
</objects>
<timelines name="timelines">
<timeline>timelines\timelineCrystal</timeline>

@ -615,7 +615,7 @@
<option_windows_runner_finished>Configs\Default\windows\Runner_finish.bmp</option_windows_runner_finished>
<option_windows_runner_header>Configs\Default\windows\Runner_header.bmp</option_windows_runner_header>
<option_windows_save_location>0</option_windows_save_location>
<option_windows_sleep_margin>1</option_windows_sleep_margin>
<option_windows_sleep_margin>11</option_windows_sleep_margin>
<option_windows_splash_background_colour>#000000</option_windows_splash_background_colour>
<option_windows_splash_screen>Configs\Default\windows\splash.png</option_windows_splash_screen>
<option_windows_steam_app_id>0</option_windows_steam_app_id>

@ -1,22 +1,26 @@
# AM2R-Community-Updates
## Co-op Changes
The source code here has the same requirements as the original repo in order for it to work. Only the code and my changes have been included. Also, the string compression scripts are by Homunculus: https://marketplace.yoyogames.com/assets/4560/strict
String compression scripts are by Homunculus: https://marketplace.yoyogames.com/assets/4560/strict
Currently syncs all items, metroids, events, and power-ups.
m5x7 font by Daniel Linssen: https://managore.itch.io/m5x7
Currently, pressing F1 will make an attempt to connect to the server. F2 will disconnect from the server. F3 will show the current random seed.
Special thanks to Lojical/Lojemiru and ShirtyScarab for help with programming and art.
Put the ip of the server you want to connect to into the ipaddress.txt. The server operates on port 64198 and cannot be changed at the moment.
The source code here has the same requirements as the original repo in order for it to work. Only the code and my changes have been included.
The server can be found here: https://github.com/lassiterm/AM2R-Server
Currently syncs all health, items, metroids, events, and power-ups. The Queen fight is synced, the reactor explosion sequence is synced, the transition to the credits at the end is synced, and death is synced. (There may be more things synced that I've forgotten about.)
If players die, progress will be kept for a better user experience.
Currently, pressing F1 will make an attempt to connect to the server. F2 will disconnect from the server. F3 will show the current random seed. F4 will toggle nametags.
Put the ip and port of the server you want to connect to into the mod settings.ini.
The server can be found here: https://github.com/lassiterm/AM2R-Server
## To-do List
- Save syncing
- Message that tells you what power-up has been obtained
- More definitive player data tracking by the server - kinda done but not quite
- Other things I haven't thought of yet, so if you have any ideas or suggestions, let me know in the AM2R Discord Server
- I've covered most of what I wanted to add, but if you have any suggestions, feel free to @milesthenerd in the AM2R Discord Server.
## What is this?
The source code for the AM2R Community Updates 1.5.x branch, free of copyrighted assets and trademarks.

@ -0,0 +1,15 @@
[ModSettings]
ipaddress = 127.0.0.1
displayname = name
port = 64198
Ex = "reactorsequence refers to the escape from the reactor explosion in A4"
Ex = "The 'synced' option will teleport any players within the reactor escape to the entrance when another player reaches it"
Ex = "The 'disabled' option will completely disable the reactor escape altogether, and it will already be destroyed upon entering"
Ex = "Players must ensure this option is set to the same for all"
reactorsequence = synced
Ex = "preferredcolor will set your shadow color to what you specify if it is available"
Ex = "If your specified color is already taken, you will be assigned a random one"
Ex = "The options are: green, red, blue, yellow, orange, purple, pink, white, and random"
preferredcolor = random

@ -0,0 +1,118 @@
<!--This Document is generated by GameMaker, if you edit it by hand then you do so at your own risk!-->
<font>
<name>m5x7</name>
<size>12</size>
<bold>-1</bold>
<renderhq>0</renderhq>
<italic>0</italic>
<charset>1</charset>
<aa>3</aa>
<includeTTF>0</includeTTF>
<TTFName></TTFName>
<texgroups>
<texgroup0>0</texgroup0>
</texgroups>
<ranges>
<range0>32,127</range0>
</ranges>
<glyphs>
<glyph character="32" x="66" y="2" w="6" h="13" shift="6" offset="0"/>
<glyph character="33" x="84" y="71" w="2" h="11" shift="3" offset="0"/>
<glyph character="34" x="74" y="71" w="4" h="6" shift="5" offset="0"/>
<glyph character="35" x="42" y="43" w="6" h="11" shift="7" offset="0"/>
<glyph character="36" x="114" y="43" w="6" h="11" shift="7" offset="0"/>
<glyph character="37" x="91" y="2" w="6" h="11" shift="7" offset="0"/>
<glyph character="38" x="82" y="2" w="7" h="11" shift="8" offset="0"/>
<glyph character="39" x="101" y="71" w="2" h="6" shift="3" offset="0"/>
<glyph character="40" x="48" y="71" w="3" h="12" shift="4" offset="0"/>
<glyph character="41" x="43" y="71" w="3" h="12" shift="4" offset="0"/>
<glyph character="42" x="68" y="71" w="4" h="7" shift="5" offset="0"/>
<glyph character="43" x="26" y="56" w="6" h="10" shift="7" offset="0"/>
<glyph character="44" x="38" y="71" w="3" h="12" shift="4" offset="0"/>
<glyph character="45" x="91" y="56" w="6" h="8" shift="7" offset="0"/>
<glyph character="46" x="92" y="71" w="2" h="11" shift="3" offset="0"/>
<glyph character="47" x="118" y="56" w="4" h="11" shift="5" offset="0"/>
<glyph character="48" x="98" y="30" w="6" h="11" shift="7" offset="0"/>
<glyph character="49" x="58" y="17" w="6" h="11" shift="7" offset="0"/>
<glyph character="50" x="10" y="43" w="6" h="11" shift="7" offset="0"/>
<glyph character="51" x="82" y="17" w="6" h="11" shift="7" offset="0"/>
<glyph character="52" x="66" y="43" w="6" h="11" shift="7" offset="0"/>
<glyph character="53" x="42" y="17" w="6" h="11" shift="7" offset="0"/>
<glyph character="54" x="98" y="17" w="6" h="11" shift="7" offset="0"/>
<glyph character="55" x="50" y="17" w="6" h="11" shift="7" offset="0"/>
<glyph character="56" x="2" y="43" w="6" h="11" shift="7" offset="0"/>
<glyph character="57" x="82" y="30" w="6" h="11" shift="7" offset="0"/>
<glyph character="58" x="80" y="71" w="2" h="11" shift="3" offset="0"/>
<glyph character="59" x="28" y="71" w="3" h="12" shift="4" offset="0"/>
<glyph character="60" x="22" y="71" w="4" h="10" shift="5" offset="0"/>
<glyph character="61" x="111" y="56" w="5" h="9" shift="6" offset="0"/>
<glyph character="62" x="16" y="71" w="4" h="10" shift="5" offset="0"/>
<glyph character="63" x="99" y="2" w="6" h="11" shift="7" offset="0"/>
<glyph character="64" x="98" y="43" w="6" h="11" shift="7" offset="0"/>
<glyph character="65" x="2" y="30" w="6" h="11" shift="7" offset="0"/>
<glyph character="66" x="90" y="17" w="6" h="11" shift="7" offset="0"/>
<glyph character="67" x="42" y="30" w="6" h="11" shift="7" offset="0"/>
<glyph character="68" x="106" y="43" w="6" h="11" shift="7" offset="0"/>
<glyph character="69" x="34" y="17" w="6" h="11" shift="7" offset="0"/>
<glyph character="70" x="106" y="30" w="6" h="11" shift="7" offset="0"/>
<glyph character="71" x="106" y="17" w="6" h="11" shift="7" offset="0"/>
<glyph character="72" x="34" y="43" w="6" h="11" shift="7" offset="0"/>
<glyph character="73" x="10" y="30" w="6" h="11" shift="7" offset="0"/>
<glyph character="74" x="26" y="30" w="6" h="11" shift="7" offset="0"/>
<glyph character="75" x="114" y="30" w="6" h="11" shift="7" offset="0"/>
<glyph character="76" x="58" y="30" w="6" h="11" shift="7" offset="0"/>
<glyph character="77" x="2" y="2" w="8" h="11" shift="9" offset="0"/>
<glyph character="78" x="18" y="56" w="6" h="11" shift="7" offset="0"/>
<glyph character="79" x="90" y="30" w="6" h="11" shift="7" offset="0"/>
<glyph character="80" x="74" y="30" w="6" h="11" shift="7" offset="0"/>
<glyph character="81" x="82" y="43" w="6" h="11" shift="7" offset="0"/>
<glyph character="82" x="50" y="30" w="6" h="11" shift="7" offset="0"/>
<glyph character="83" x="18" y="17" w="6" h="11" shift="7" offset="0"/>
<glyph character="84" x="74" y="17" w="6" h="11" shift="7" offset="0"/>
<glyph character="85" x="18" y="43" w="6" h="11" shift="7" offset="0"/>
<glyph character="86" x="90" y="43" w="6" h="11" shift="7" offset="0"/>
<glyph character="87" x="32" y="2" w="8" h="11" shift="9" offset="0"/>
<glyph character="88" x="114" y="17" w="6" h="11" shift="7" offset="0"/>
<glyph character="89" x="26" y="17" w="6" h="11" shift="7" offset="0"/>
<glyph character="90" x="58" y="43" w="6" h="11" shift="7" offset="0"/>
<glyph character="91" x="53" y="71" w="3" h="12" shift="4" offset="0"/>
<glyph character="92" x="2" y="71" w="4" h="11" shift="5" offset="0"/>
<glyph character="93" x="33" y="71" w="3" h="12" shift="4" offset="0"/>
<glyph character="94" x="8" y="71" w="6" h="7" shift="7" offset="0"/>
<glyph character="95" x="66" y="17" w="6" h="11" shift="7" offset="0"/>
<glyph character="96" x="96" y="71" w="3" h="6" shift="4" offset="0"/>
<glyph character="97" x="2" y="56" w="6" h="11" shift="7" offset="0"/>
<glyph character="98" x="10" y="56" w="6" h="11" shift="7" offset="0"/>
<glyph character="99" x="41" y="56" w="5" h="11" shift="6" offset="0"/>
<glyph character="100" x="74" y="43" w="6" h="11" shift="7" offset="0"/>
<glyph character="101" x="34" y="30" w="6" h="11" shift="7" offset="0"/>
<glyph character="102" x="34" y="56" w="5" h="11" shift="6" offset="0"/>
<glyph character="103" x="42" y="2" w="6" h="13" shift="7" offset="0"/>
<glyph character="104" x="10" y="17" w="6" h="11" shift="7" offset="0"/>
<glyph character="105" x="63" y="71" w="3" h="11" shift="4" offset="0"/>
<glyph character="106" x="85" y="56" w="4" h="13" shift="5" offset="0"/>
<glyph character="107" x="62" y="56" w="5" h="11" shift="6" offset="0"/>
<glyph character="108" x="58" y="71" w="3" h="11" shift="4" offset="0"/>
<glyph character="109" x="22" y="2" w="8" h="11" shift="9" offset="0"/>
<glyph character="110" x="115" y="2" w="6" h="11" shift="7" offset="0"/>
<glyph character="111" x="107" y="2" w="6" h="11" shift="7" offset="0"/>
<glyph character="112" x="50" y="2" w="6" h="13" shift="7" offset="0"/>
<glyph character="113" x="58" y="2" w="6" h="13" shift="7" offset="0"/>
<glyph character="114" x="55" y="56" w="5" h="11" shift="6" offset="0"/>
<glyph character="115" x="50" y="43" w="6" h="11" shift="7" offset="0"/>
<glyph character="116" x="48" y="56" w="5" h="11" shift="6" offset="0"/>
<glyph character="117" x="66" y="30" w="6" h="11" shift="7" offset="0"/>
<glyph character="118" x="18" y="30" w="6" h="11" shift="7" offset="0"/>
<glyph character="119" x="12" y="2" w="8" h="11" shift="9" offset="0"/>
<glyph character="120" x="2" y="17" w="6" h="11" shift="7" offset="0"/>
<glyph character="121" x="74" y="2" w="6" h="13" shift="7" offset="0"/>
<glyph character="122" x="26" y="43" w="6" h="11" shift="7" offset="0"/>
<glyph character="123" x="99" y="56" w="4" h="12" shift="5" offset="0"/>
<glyph character="124" x="88" y="71" w="2" h="11" shift="3" offset="0"/>
<glyph character="125" x="105" y="56" w="4" h="12" shift="5" offset="0"/>
<glyph character="126" x="77" y="56" w="6" h="9" shift="7" offset="0"/>
<glyph character="127" x="69" y="56" w="6" h="9" shift="7" offset="0"/>
</glyphs>
<kerningPairs/>
<image>font_displayname.png</image>
</font>

@ -112,7 +112,8 @@ alarm[0] = 5 + random(3);
<arguments>
<argument>
<kind>1</kind>
<string>if (stun &gt; 0) stun -= 1;
<string>if (global.event[101] &gt;= eventno) instance_destroy();
if (stun &gt; 0) stun -= 1;
if (flashing &gt; 0) flashing -= 1;
if (fxtimer &lt; 5) {
fxtimer += 1;

@ -34,6 +34,34 @@
mysolid.image_xscale = 2;
mysolid.image_yscale = 4;
}
</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(global.event[206] == 1){
with (oA4Rock) event_user(0);
with (oA4RockTop) event_user(0);
with (mysolid) instance_destroy();
instance_destroy();
}
</string>
</argument>
</arguments>

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

@ -25,7 +25,7 @@
<arguments>
<argument>
<kind>1</kind>
<string>text = "Another " + global.monsterStr + " 2 Remake# # # # # # # # # # # #Producer#Milton 'DoctorM64' Guasti# #Graphic Design#Ramiro Negri#Steve 'Sabre230' Rothlisberger#Jack Witty#Kirill '1Eni1' Fevralev#Jasper#MichaelGabrielR# #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#Hemse#Dragondarch#Esteban 'DruidVorse' Criado#Verneri 'Naatiska' Viljanen# #Playtest#Jennifer Potter#Mario Crestanello#Live4Truths#Torbjørn 'Falcool' Brandrud#Lise Trehjørningen#Nommiin#Gabriel Kaplan#Nicolas 'Skol' Del Negro#Darren Kerwin#Robert Sephazon# #Community Management#Dragonheart91#Ammypendent#Karrde# #Special Thanks#Nommiin#Nathan 'wickedclown' Hess#Tyler Rogers#Kousoru#Infinity's End#CapCom#Isabelle Amponin#The " + global.monsterStr + " Community# # # # # #Source Code Reconstruction#YellowAfterlife# # #Continued Revisions# #Lead - Former#Gatordile#Alex 'Wanderer' Mack# #Lead#Lojemiru# #Development#Craig Kostelecky#" + global.monsterStr + "3D# #Art Lead#Dannon 'Shmegleskimo' Yates# #Art#ShirtyScarab#Cooper Garvin#Chris 'Messianic' Oliveira#ChloePlz# #Special Thanks#Banjo, Grom PE,#King Bore, Jean-Samuel Pelletier,#Reaku The Crate, Scooterboot, #Sylandro, TheKhaosDemon, #Unknown, Iwantdevil, #PixHammer, CaptGlitch,#Nokbient, EODTex,#Electrix, gponys,#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";
<string>text = "Another " + global.monsterStr + " 2 Remake# # # # # # # # # # # #Producer#Milton 'DoctorM64' Guasti# #Graphic Design#Ramiro Negri#Steve 'Sabre230' Rothlisberger#Jack Witty#Kirill '1Eni1' Fevralev#Jasper#MichaelGabrielR# #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#Hemse#Dragondarch#Esteban 'DruidVorse' Criado#Verneri 'Naatiska' Viljanen# #Playtest#Jennifer Potter#Mario Crestanello#Live4Truths#Torbjørn 'Falcool' Brandrud#Lise Trehjørningen#Nommiin#Gabriel Kaplan#Nicolas 'Skol' Del Negro#Darren Kerwin#Robert Sephazon# #Community Management#Dragonheart91#Ammypendent#Karrde# #Special Thanks#Nommiin#Nathan 'wickedclown' Hess#Tyler Rogers#Kousoru#Infinity's End#CapCom#Isabelle Amponin#The " + global.monsterStr + " Community# # # # # #Source Code Reconstruction#YellowAfterlife# # #Continued Revisions# #Lead - Former#Gatordile#Alex 'Wanderer' Mack# #Lead#Lojemiru# #Development#Craig Kostelecky#" + global.monsterStr + "3D# #Art Lead#Dannon 'Shmegleskimo' Yates# #Art#ShirtyScarab#Cooper Garvin#Chris 'Messianic' Oliveira#ChloePlz# #Special Thanks#Banjo, Grom PE,#King Bore, Jean-Samuel Pelletier,#Reaku The Crate, Scooterboot, #Sylandro, TheKhaosDemon, #Unknown, Iwantdevil, #PixHammer, CaptGlitch,#Nokbient, EODTex,#Electrix, gponys,#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# #Co-op Mod#milesthenerd#xzackly7# # # # # # # # #In Memory of Satoru Iwata";
yoffset = 0;
fadeout = 0;

@ -254,6 +254,15 @@ if(room == rm_a7b08A){
}
}
}
if(event &gt; -1){
if(global.event[event] &gt; 0){
if(lock == 1 || lock == 2 || lock == 3){
lock = 0;
open = 1;
}
}
}
</string>
</argument>
</arguments>

@ -37,6 +37,7 @@ mealtimer = 0;
flash = 0;
chaseX = 0;
alarm1set = 0;
myid = 0;
</string>
</argument>
</arguments>
@ -84,10 +85,11 @@ followplayer = 0;
<arguments>
<argument>
<kind>1</kind>
<string>sfx_play(choose(sndHatchling,sndHatchling2,sndHatchling3,sndHatchling4));
alarm[0] = 300 + irandom(320);
roaring = 60;
<string>if(myid == 0){
sfx_play(choose(sndHatchling,sndHatchling2,sndHatchling3,sndHatchling4));
alarm[0] = 300 + irandom(320);
roaring = 60;
}
/*sfx_play(sndHatchling);
</string>
@ -112,37 +114,58 @@ roaring = 60;
<arguments>
<argument>
<kind>1</kind>
<string>if (global.event[304] == 1 &amp;&amp; distance_to_object(oA7Crystal1) &lt; 120) {
tgtobj = instance_nearest(x, y, oA7Crystal1);
if (tgtobj != -4) {
targetx = tgtobj.x + 8;
targety = tgtobj.y + 8;
accel = 0.4;
maxspeed = 3.2;
if (mealtimer &gt; 600) accel *= 2;
}
followplayer = 0;
}
else if (distance_to_object(oXPickup) &lt; 150 ) {
if (chaseX == 1)
{
tgtobj = instance_nearest(x, y, oXPickup);
<string>if(myid == 0){
if (global.event[304] == 1 &amp;&amp; distance_to_object(oA7Crystal1) &lt; 120) {
tgtobj = instance_nearest(x, y, oA7Crystal1);
if (tgtobj != -4) {
targetx = tgtobj.x;
targety = tgtobj.y - 11;
targetx = tgtobj.x + 8;
targety = tgtobj.y + 8;
accel = 0.4;
maxspeed = 3.2;
if (mealtimer &gt; 600) accel *= 2;
}
followplayer = 0;
}
else if (distance_to_object(oXPickup) &lt; 150 ) {
if (chaseX == 1)
{
tgtobj = instance_nearest(x, y, oXPickup);
if (tgtobj != -4) {
targetx = tgtobj.x;
targety = tgtobj.y - 11;
accel = 0.4;
maxspeed = 3.2;
if (mealtimer &gt; 600) accel *= 2;
}
followplayer = 0;
}
else if (alarm1set == 0)
{
alarm1set = 1;
alarm[1] = 45;
}
}
else if (alarm1set == 0)
{
alarm1set = 1;
alarm[1] = 45;
else
{
followplayer = 1;
chaseX = 0;
alarm1set = 0;
}
} else {
if(instance_exists(oClient)){
if(ds_list_size(global.hatchlingList) &gt; 0){
var findHatchlingID = ds_list_find_index(global.hatchlingList, myid);
if(findHatchlingID == -1){
instance_destroy();
}
} else {
instance_destroy();
}
} else {
instance_destroy();
}
}
/*
else if (distance_to_object(oEnemy) &lt; 120 ) {
@ -168,14 +191,7 @@ else if (distance_to_object(oEnemy) &lt; 120 ) {
}
*/
else
{
followplayer = 1;
chaseX = 0;
alarm1set = 0;
}
if (followplayer) {
if (followplayer &amp;&amp; myid == 0) {
targetx = oCharacter.x;
targety = oCharacter.y - 30;
if (distance_to_point(oCharacter.x, oCharacter.y - 16) &gt; 128) {
@ -192,6 +208,42 @@ if (followplayer) {
accel = 0.3;
maxspeed = 2.5;
}
} else if(followplayer &amp;&amp; myid != 0){
if(instance_exists(oClient)){
if(ds_list_size(global.hatchlingList) &gt; 0){
var findHatchlingID = ds_list_find_index(global.hatchlingList, myid);
if(findHatchlingID &gt;= 0){
if(ds_list_size(oClient.roomListData) &gt; 0){
for(var h=0; h&lt;ds_list_size(oClient.roomListData); h++){
var arrList = oClient.roomListData[| h];
var arrID = arrList[0];
var arrX = arrList[1];
var arrY = arrList[2];
if(arrID == myid){
targetx = arrX;
targety = arrY - 30;
if (distance_to_point(arrX, arrY - 16) &gt; 128) {
accel = 0.8;
maxspeed = 8;
}
if (distance_to_point(arrX, arrY - 16) &gt; 64) {
accel = 0.6;
maxspeed = 6;
} else if (distance_to_point(arrX, arrY - 16) &gt; 32) {
accel = 0.4;
maxspeed = 4;
} else {
accel = 0.3;
maxspeed = 2.5;
}
}
}
} else {
instance_destroy();
}
}
}
}
}
if (roaring &gt; 0) {
roaring -= 1;
@ -224,10 +276,19 @@ mealtimer += 1;
<arguments>
<argument>
<kind>1</kind>
<string>draw_self();
draw_set_blend_mode(bm_add);
draw_sprite_ext(sprite_index, -1, x, y, 1, 1, 0, -1, flash);
draw_set_blend_mode(bm_normal);
<string>if(myid == 0){
draw_self();
draw_set_blend_mode(bm_add);
draw_sprite_ext(sprite_index, -1, x, y, 1, 1, 0, -1, flash);
draw_set_blend_mode(bm_normal);
} else {
pal_swap_set(sPalMultitroidBaby, myid, false);
draw_self();
draw_sprite_ext(sprite_index, -1, x, y, 1, 1, 0, -1, flash);
pal_swap_reset();
shader_reset();
}
</string>
</argument>
</arguments>

@ -55,6 +55,31 @@ myblock = instance_create(x, y - 16, oSolidItem);
//if (item == 8) {
</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(global.item[item] == 1){
instance_destroy();
}
</string>
</argument>
</arguments>

@ -54,6 +54,7 @@ deathsound = sndMAlphaDeath;
active = 1;
target = 0;
state = 3;
alarm[1] = 120;
alarm[3] = 1;
image_speed = 0.2;
@ -71,7 +72,7 @@ mapposy = myposy + global.mapoffsety;
if (room != rm_a0h14) global.dmap[mapposx, mapposy] = 10;
else global.dmap[43, 24] = 10;
with (oControl) event_user(2);
dead = false;
</string>
</argument>
</arguments>
@ -271,10 +272,7 @@ if (state == 5 || dodging) alarm[2] = 3;
<arguments>
<argument>
<kind>1</kind>
<string>if(global.metdead[myid] == 1){
instance_destroy();
}
if (active == 1) {
<string>if (active == 1) {
if (state == 1) {
xVel = 0;
yVel = 0;
@ -497,6 +495,32 @@ if (dodging) dodgetime += 1;
if (fxtimer &lt; 5) {
fxtimer += 1;
} else fxtimer = 0;
if(global.metdead[myid] == 1 &amp;&amp; !dead){
myhealth = 0;
state = 100;
statetime = 0;
alarm[10] = 1;
alarm[11] = 160;
flashtime = 180;
turndelay = 180;
PlaySoundMono(deathsound);
check_areaclear();
global.monstersalive -= 1;
if(global.monstersalive &lt; 0){
global.monstersalive = 0;
}
if (global.monstersalive == 0) {
mus_fadeout(musAlphaFight);
oMusicV2.bossbgm = sndJump;
}
with (oMAlpha) event_user(2);
global.dmap[mapposx, mapposy] = 11;
with (oControl) event_user(2);
dead = true;
xVel = 0;
yVel = 0;
}
</string>
</argument>
</arguments>
@ -934,6 +958,7 @@ if (myhealth &lt;= 0) {
with (oMAlpha) event_user(2);
global.dmap[mapposx, mapposy] = 11;
with (oControl) event_user(2);
dead = true;
}
flashing = 1;
canbehit = 0;

@ -78,7 +78,7 @@ repeat (10) {
sy[0] = y;
x = oCharacter.x;
y = oCharacter.y;
switch (oControl.mod_fusion) {
case 1: {
///make_color_rgb(red, green, blue);
@ -99,7 +99,7 @@ repeat (10) {
{
if (global.currentsuit == 1) image_blend = make_color_rgb(oControl.Trail_V_R_F, oControl.Trail_V_G_F, oControl.Trail_V_B_F);
}
if (oControl.msr_fusionsuit == 1)
{
if (global.currentsuit == 2) image_blend = make_color_rgb(oControl.Trail_G_R_F_SR, oControl.Trail_G_G_F_SR, oControl.Trail_G_B_F_SR);
@ -149,6 +149,8 @@ repeat (10) {
draw_set_blend_mode(bm_normal);
i += 1;
}
</string>
</argument>
</arguments>

@ -90,6 +90,7 @@ inwater = 0;
speedmulti = 1;
targetx = x;
targety = y;
dead = false;
</string>
</argument>
</arguments>
@ -331,10 +332,7 @@ if (state == 5 || dodging) alarm[2] = 3;
<arguments>
<argument>
<kind>1</kind>
<string>if(global.metdead[myid] == 1){
instance_destroy();
}
if (active == 1) {
<string>if (active == 1) {
if (state == 1) {
xVel = 0;
yVel = 0;
@ -715,6 +713,34 @@ if (instance_exists(grabber)) {
grabber.y = y + legba1y + legba2y;
if (state != 5) with (grabber) instance_destroy();
}
if(global.metdead[myid] == 1 &amp;&amp; !dead){
myhealth = 0;
state = 100;
statetime = 0;
alarm[10] = 1;
alarm[11] = 160;
flashtime = 180;
turndelay = 180;
PlaySoundMono(deathsound);
check_areaclear();
global.monstersalive -= 1;
if(global.monstersalive &lt; 0){
global.monstersalive = 0;
}
if (global.monstersalive == 0) {
mus_fadeout(musGammaFight);
oMusicV2.bossbgm = sndJump;
}
if (instance_exists(grabber)) with (grabber) instance_destroy();
if (instance_exists(arms)) with (arms) instance_destroy();
if (instance_exists(shell)) with (shell) instance_destroy();
global.dmap[mapposx, mapposy] = 11;
with (oControl) event_user(2);
dead = true;
xVel = 0;
yVel = 0;
}
</string>
</argument>
</arguments>
@ -1126,6 +1152,7 @@ if (myhealth &lt;= 0) {
if (instance_exists(arms)) with (arms) instance_destroy();
global.dmap[mapposx, mapposy] = 11;
with (oControl) event_user(2);
dead = true;
}
flashing = 1;
canbehit = 0;

@ -140,6 +140,7 @@ alarm[9] = 1;
dmg = 0;
flashtime = 0;
laststate = 0;
dead = false;
</string>
</argument>
</arguments>
@ -379,10 +380,7 @@ if (instance_exists(grab_obj)) {
<arguments>
<argument>
<kind>1</kind>
<string>if(global.metdead[myid] == 1){
instance_destroy();
}
var slash_dist, msl, tl;
<string>var slash_dist, msl, tl;
slash_dist = 130;
// Target set
if (target_mode == 0) {
@ -1492,6 +1490,21 @@ if (eyes_close == 0) {
} else if (eyes_frame &lt; 4) eyes_frame += 1;
if (target_mode == 1 &amp;&amp; distance_to_point(targetx, targety) &lt; 32) target_mode = 0;
moveTo(xVel, yVel);
if(global.metdead[myid] == 1 &amp;&amp; !dead){
myhealth = 0;
state = 100;
statetime = 0;
alarm[10] = 1;
alarm[11] = 160;
event_user(2);
mus_fadeout(musOmegaFight);
oMusicV2.bossbgm = sndJump;
check_areaclear();
global.dmap[mapposx, mapposy] = 11;
with (oControl) event_user(2);
dead = true;
}
</string>
</argument>
</arguments>
@ -1706,6 +1719,7 @@ if (myhealth &lt;= 0) {
check_areaclear();
global.dmap[mapposx, mapposy] = 11;
with (oControl) event_user(2);
dead = true;
}
if (myhealth &gt; 0) {
if (dmg &lt; 100) { // missile

@ -116,6 +116,7 @@ targety = 0;
alarm[3] = 1;
alarm[9] = 1;
scan_log(14, get_text("ScanEvents", "ScanBioform"), 180, 0);
dead = false;
</string>
</argument>
</arguments>
@ -412,10 +413,7 @@ if (instance_exists(mask_obj)) {
<arguments>
<argument>
<kind>1</kind>
<string>if(global.metdead[myid] == 1){
instance_destroy();
}
var msl, fr_speed;
<string>var msl, fr_speed;
if (target_mode == 0) {
targetx = oCharacter.x;
targety = oCharacter.y;
@ -1366,6 +1364,23 @@ if (fxtimer &lt; 5) {
if (noswipe &gt; 0) noswipe -= 1;
if (roaring &gt; 0) roaring -= 1;
moveTo(xVel, yVel);
if(global.metdead[myid] == 1 &amp;&amp; !dead){
myhealth = 0;
state = 100;
statetime = 0;
alarm[10] = 1;
alarm[11] = 160;
with (body_obj) instance_destroy();
with (head_obj) instance_destroy();
with (mask_obj) instance_destroy();
mus_fadeout(musZetaFight);
oMusicV2.bossbgm = sndJump;
check_areaclear();
global.dmap[mapposx, mapposy] = 11;
with (oControl) event_user(2);
dead = true;
}
</string>
</argument>
</arguments>
@ -1553,6 +1568,7 @@ if (myhealth &lt;= 0) {
check_areaclear();
global.dmap[mapposx, mapposy] = 11;
with (oControl) event_user(2);
dead = true;
}
if (myhealth &gt; 0) {
PlaySoundMono(sndMZetaHit);

@ -72,6 +72,8 @@ spark3 = -4;
//1.4.4? Movement fixes
outside = 0;
dead = false;
</string>
</argument>
</arguments>
@ -223,9 +225,54 @@ if (instance_exists(spark3)) {
<arguments>
<argument>
<kind>1</kind>
<string>if(global.metdead[myid] == 1){
instance_destroy();
<string>if(global.metdead[myid] == 1 &amp;&amp; !dead){
dead = true;
hp = 0;
var pickup;
if (hp &lt;= 0) {
repeat (10) {
expl = instance_create(x - 16 + random(32), y - 16 + random(32), oFXAnimSpark);
expl.image_speed = 0.5 + random(0.5);
expl.additive = 0;
expl.sprite_index = sExpl1;
expl.direction = random(360);
expl.speed = 2 + random(1);
}
repeat (20) deb = instance_create(x, y - 8, oIceShard);
make_explosion4(x, y);
instance_create(x, y, oScreenFlash);
sfx_play(sndMissileExpl);
PlaySoundMono(sndIceShatter);
sfx_play(sndMonsterDeath);
if (global.monstersarea &lt; 1) global.monstersarea = 1;
if (global.monstersleft &lt; 1) global.monstersleft = 1;
pickup = choose(0, 1);
if (pickup == 0) {
if (global.missiles &lt; global.maxmissiles &amp;&amp; global.maxmissiles &gt; 0) {
repeat (3) instance_create(x + random_range(-15, 15), y + random_range(-15, 15), oMPickup);
} else pickup = 1;
}
if (pickup == 1) {
if (global.smissiles &lt; global.maxsmissiles &amp;&amp; global.maxsmissiles &gt; 0) instance_create(x, y, oSMPickup);
}
if (global.playerhealth &lt; global.maxhealth &amp;&amp; (oControl.mod_insanitymode == 0 || (global.difficulty &lt; 2 &amp;&amp; oControl.mod_insanitymode == 1))) {
repeat (3) instance_create(x + random_range(-15, 15), y + random_range(-15, 15), oHPickupBig);
}
//if (room == rm_a7b08A &amp;&amp; global.metdead[52] &gt; 0 &amp;&amp; global.metdead[53] &gt; 0 &amp;&amp; global.metdead[54] &gt; 0 &amp;&amp; global.metdead[55] &gt; 0 &amp;&amp; global.metdead[56] &gt; 0 &amp;&amp; global.metdead[57] &gt; 0 &amp;&amp; global.metdead[58] &gt; 0 &amp;&amp; global.metdead[74] &gt; 0)
if (room == rm_a7b08A &amp;&amp; instance_number(oMonster) == 1) //oMonster must == 1 here, since oMonster is checking for oMonsters!!!
{
if (global.monstersleft != 1) { global.monstersleft = 1; }
if (global.monstersarea != 1) { global.monstersarea = 1; }
instance_create(0,0,oBigQuakeQueen);
}
instance_destroy();
}
}
var tgty;
if (state == 0) {
scale = 0.5;

@ -0,0 +1,125 @@
<!--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>-1000</depth>
<persistent>-1</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>if(!instance_exists(oClient)){
instance_destroy();
}
</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(!instance_exists(oClient)){
instance_destroy();
} else {
if(ds_list_size(oClient.roomListData) &gt; 0){
for(var i=0; i&lt;ds_list_size(oClient.roomListData); i++){
var arrDraw = oClient.roomListData[| i];
var arrID = arrDraw[0];
var arrX = arrDraw[1];
var arrY = arrDraw[2];
var arrSprite = arrDraw[3];
var arrImage = arrDraw[4];
var arrA1 = arrDraw[5];
var arrA1X = arrDraw[6];
var arrA1Y = arrDraw[7];
var arrA2 = arrDraw[8];
var arrA2X = arrDraw[9];
var arrA2Y = arrDraw[10];
var arrA2A = arrDraw[11];
var arrMirror = arrDraw[12];
var arrArmmsl = arrDraw[13];
var arrRoom = arrDraw[14];
var arrName = arrDraw[15];
var arrBlend = arrDraw[16];
var arrFXTimer = arrDraw[17];
var arrRoomPrev = arrDraw[18];
if((arrRoom == room || arrRoom == rm_options || arrRoom == itemroom || arrRoom == subscreenroom || arrRoom == maproom || arrRoom == rm_subscreen) &amp;&amp; instance_exists(oCharacter) &amp;&amp; room != rm_transition){
if(oClient.showName){
var text;
if(arrRoom == room){
text = arrName;
} else {
if(arrRoom == itemroom){
text = arrName + ": collecting item"
} else {
text = arrName + ": paused";
}
}
if(arrRoom != room){
if(arrRoomPrev == room){
draw_set_font(font_displayname);
draw_set_halign(fa_center);
draw_cool_text(arrX, arrY - 52, text, c_black, c_white, c_white, 1);
}
} else {
draw_set_font(font_displayname);
draw_set_halign(fa_center);
draw_cool_text(arrX, arrY - 52, text, c_black, c_white, c_white, 1);
}
}
}
}
}
}
</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>

@ -65,7 +65,7 @@ mus_change(musArea1A);</code>
<instance objName="oGotoRoom" x="640" y="160" name="inst_108213" locked="0" code="&#xA;targetroom = rm_a1a02;&#xA;targetx = 16;&#xA;targety = 640;&#xA;height = 80;&#xA;direction = 0;&#xA;camstartx = 16;&#xA;camstarty = 640;&#xA;transitionx = 4;&#xA;transitiony = 160;&#xA;" scaleX="1" scaleY="1" colour="4294967295" rotation="0"/>
<instance objName="oFadeTiles" x="128" y="192" name="inst_108214" locked="0" code="&#xA;areax = 560;&#xA;areay = 32;&#xA;" scaleX="1" scaleY="1" colour="4294967295" rotation="0"/>
<instance objName="oGotoRoom" x="0" y="160" name="inst_108215" locked="0" code="&#xA;targetroom = rm_a1a04;&#xA;targetx = 304;&#xA;targety = 160;&#xA;height = 80;&#xA;direction = 180;&#xA;camstartx = 304;&#xA;camstarty = 160;&#xA;transitionx = 316;&#xA;transitiony = 160;&#xA;" scaleX="1" scaleY="1" colour="4294967295" rotation="0"/>
<instance objName="oDoor" x="24" y="96" name="inst_108216" locked="0" code="&#xA;lock = 1;&#xA;event = 52;&#xA;" scaleX="1" scaleY="1" colour="4294967295" rotation="0"/>
<instance objName="oDoor" x="24" y="96" name="inst_108216" locked="0" code="lock = 1;&#xA;event = 52;" scaleX="1" scaleY="1" colour="4294967295" rotation="0"/>
<instance objName="oSolid1" x="0" y="16" name="inst_108217" locked="0" code="" scaleX="3" scaleY="5" colour="4294967295" rotation="0"/>
<instance objName="oSolid1" x="48" y="16" name="inst_108218" locked="0" code="" scaleX="36" scaleY="1" colour="4294967295" rotation="0"/>
<instance objName="oSolid1" x="592" y="32" name="inst_108219" locked="0" code="" scaleX="3" scaleY="4" colour="4294967295" rotation="0"/>

@ -14,7 +14,11 @@
view_enabled = true;
view_visible[0] = true;
}
Mute_Loops();</code>
Mute_Loops();
if(instance_exists(oClient)){
oClient.phase = 0;
}</code>
<enableViews>0</enableViews>
<clearViewBackground>-1</clearViewBackground>
<clearDisplayBuffer>0</clearDisplayBuffer>

@ -892,7 +892,11 @@ if (state == SAVINGSHIP) {
statetime = 0;
}
} else {
if (statetime == 5){
global.event[308] = 1;
}
if (statetime == 120) {
global.event[308] = 2;
with (oSaveShip) instance_destroy();
with (oHatchling) instance_destroy();
instance_create(3296, 1088, oShipOutro);
@ -903,10 +907,12 @@ if (state == SAVINGSHIP) {
global.enablecontrol = 0;
}
if (statetime == 420) {
global.event[308] = 3;
instance_create(0, 0, oFinalFadeout);
mus_fadeout(musHatchling);
}
if (statetime == 760) {
global.event[308] = 4;
remove_persistent_objects();
sfx_stop_all();
global.vibL = 0;

@ -0,0 +1,35 @@
/// draw_character_ext(sprite, x, y, sprite2, s2ox, s2oy, sprite3, s3ox, s3oy, s3angle, facing, color, alpha, s3show, arrID)
var ID = argument15;
if ((oControl.mod_fusion) && (!oControl.msr_fusionsuit)) { // Fusion suit
if (global.currentsuit == 0) { // Power
pal_swap_set(sPalFusion0, 1, false);
} else if (global.currentsuit == 1) { // Varia
pal_swap_set(sPalFusion1, 1, false);
} else if (global.currentsuit == 2) { // Gravity
pal_swap_set(sPalFusion2, 1, false);
}
} else { // Custom color swaps
if (global.currentsuit == 0) { // Power
pal_swap_set(oControl.PowerPalette, 1, false);
} else if (global.currentsuit == 1) { // Varia
pal_swap_set(oControl.VariaPalette, 1, false);
} else if (global.currentsuit == 2) { // Gravity
pal_swap_set(oControl.GravityPalette, 1, false);
}
}
if(oControl.mod_fusion){
pal_swap_set(sPalMultitroidFusion, ID, false);
} else {
pal_swap_set(sPalMultitroidNew, ID, false);
}
draw_sprite_ext(argument0, argument14, argument1, argument2, argument10, 1, 0, argument11, argument12);
draw_sprite_ext(argument3, argument14, argument1 + argument4, argument2 + argument5, argument10, 1, 0, argument11, argument12);
shader_reset();
pal_swap_reset();
if (argument13 == 1) {
draw_sprite_ext(argument6, argument14, argument1 + argument7, argument2 + argument8, argument10, 1, argument9, argument11, argument12);
}

@ -249,6 +249,25 @@ draw_sprite(sGUIPBomb, 1, xoff + 1, 4);
} else draw_sprite(sGUIPBomb, 0, xoff + 1, 4);
}
}
if(instance_exists(oClient)){
if(oClient.connected){
if(ds_list_size(global.idList) > 1){
for(var f=0; f<ds_list_size(global.idList); f++){
var arrList = global.idList[| f];
var ID = arrList[0, 0];
if(ID == global.clientID){
draw_sprite(sMultitroidIcon, (ID - 1), (240 - (f * 10)) + widescreen_space, 5);
} else {
draw_sprite(sDarkMultitroidPlayer, (ID - 1), (240 - (f * 10)) + widescreen_space, 5);
}
}
} else if(ds_list_size(global.idList) == 1 || ds_list_size(global.idList) == 0){
draw_sprite(sMultitroidIcon, 0, 240 + widescreen_space, 5);
}
}
}
if (global.ophudshowmap && global.ophudshowmetrcount) {
draw_background(bgGUIMap, 250 + widescreen_space, 0);
xoff = 250;
@ -268,7 +287,19 @@ draw_background(bgGUIMetCountBG2, xoff + 4 + widescreen_space, 4);
draw_text(xoff + 6 + widescreen_space, 21, to_string_lz(global.monstersleft));
}
}
if (global.ophudshowmap) draw_gui_map(276 + widescreen_space, 0);
if (global.ophudshowmap){
draw_gui_map(276 + widescreen_space, 0);
if(instance_exists(oClient)){
for(var i=0; i<ds_list_size(oClient.posData); i++){
var arrData = oClient.posData[| i];
var xDiff = oClient.posX - arrData[1];
var yDiff = oClient.posY - arrData[2];
if(abs(xDiff) <= 2 && abs(yDiff) <= 1){
draw_sprite_ext(sMultitroidMapIcon, (arrData[0] - 1), (((276 + widescreen_space) + 16) - (xDiff * 8)), ((0 + 12) - (yDiff * 8)), 1, 1, direction, c_white, oControl.malpha);
}
}
}
}
} // if (global.classicmode == 0 && global.opshowhud)

@ -60,3 +60,4 @@ repeat (350) {
global.item[1] = 1;
reset_logs_list();
reset_hints();
global.dmapPrev = array_clone(global.dmap);

@ -8,3 +8,4 @@ if (global.event[176] == 1 || global.metdead[23] == 1 || global.metdead[24] == 1
if (file_exists(working_directory + "\swap.ini")) file_delete(working_directory + "\swap.ini");

@ -269,22 +269,22 @@ ini_open("mods/palettes/monsters/config.ini");
MonsterPalettesFusionOnly = ini_read_real('PaletteMode', 'FusionOnly', 1);
ini_close();
AlphaPalette = -1;
GammaPalette = -1;
ZetaPalette = -1;
OmegaPalette = -1;
QueenPalette = -1;
ZetaBlur = -1;
QueenDead = -1;
QueenBloodDrop = -1;
QueenBloodParticle = -1;
if (file_exists("mods/palettes/monsters/alpha.png")) AlphaPalette = sprite_add("mods/palettes/monsters/alpha.png", 1, false, false, 0, 0);
if (file_exists("mods/palettes/monsters/gamma.png")) GammaPalette = sprite_add("mods/palettes/monsters/gamma.png", 1, false, false, 0, 0);
if (file_exists("mods/palettes/monsters/zeta.png")) ZetaPalette = sprite_add("mods/palettes/monsters/zeta.png", 1, false, false, 0, 0);
if (file_exists("mods/palettes/monsters/omega.png")) OmegaPalette = sprite_add("mods/palettes/monsters/omega.png", 1, false, false, 0, 0);
if (file_exists("mods/palettes/monsters/queen.png")) QueenPalette = sprite_add("mods/palettes/monsters/queen.png", 1, false, false, 0, 0);
if (file_exists("mods/palettes/monsters/zeta_blur.png")) ZetaBlur = sprite_add("mods/palettes/monsters/zeta_blur.png", 1, false, false, sprite_get_xoffset(sMZetaBlur), sprite_get_yoffset(sMZetaBlur));
if (file_exists("mods/palettes/monsters/queen_dead.png")) QueenDead = background_add("mods/palettes/monsters/queen_dead.png", false, false);
if (file_exists("mods/palettes/monsters/queen_blood_drop.png")) QueenBloodDrop = sprite_add("mods/palettes/monsters/queen_blood_drop.png", sprite_get_number(sQueenBloodDrop), false, false, sprite_get_xoffset(sQueenBloodDrop), sprite_get_yoffset(sQueenBloodDrop));
if (file_exists("mods/palettes/monsters/queen_blood_particle.png")) QueenBloodParticle = sprite_add("mods/palettes/monsters/queen_blood_particle.png", sprite_get_number(sQueenBloodParticle), false, false, sprite_get_xoffset(sQueenBloodParticle), sprite_get_yoffset(sQueenBloodParticle));
oControl.AlphaPalette = -1;
oControl.GammaPalette = -1;
oControl.ZetaPalette = -1;
oControl.OmegaPalette = -1;
oControl.QueenPalette = -1;
oControl.ZetaBlur = -1;
oControl.QueenDead = -1;
oControl.QueenBloodDrop = -1;
oControl.QueenBloodParticle = -1;
if (file_exists("mods/palettes/monsters/alpha.png")) oControl.AlphaPalette = sprite_add("mods/palettes/monsters/alpha.png", 1, false, false, 0, 0);
if (file_exists("mods/palettes/monsters/gamma.png")) oControl.GammaPalette = sprite_add("mods/palettes/monsters/gamma.png", 1, false, false, 0, 0);
if (file_exists("mods/palettes/monsters/zeta.png")) oControl.ZetaPalette = sprite_add("mods/palettes/monsters/zeta.png", 1, false, false, 0, 0);
if (file_exists("mods/palettes/monsters/omega.png")) oControl.OmegaPalette = sprite_add("mods/palettes/monsters/omega.png", 1, false, false, 0, 0);
if (file_exists("mods/palettes/monsters/queen.png")) oControl.QueenPalette = sprite_add("mods/palettes/monsters/queen.png", 1, false, false, 0, 0);
if (file_exists("mods/palettes/monsters/zeta_blur.png")) oControl.ZetaBlur = sprite_add("mods/palettes/monsters/zeta_blur.png", 1, false, false, sprite_get_xoffset(sMZetaBlur), sprite_get_yoffset(sMZetaBlur));
if (file_exists("mods/palettes/monsters/queen_dead.png")) oControl.QueenDead = background_add("mods/palettes/monsters/queen_dead.png", false, false);
if (file_exists("mods/palettes/monsters/queen_blood_drop.png")) oControl.QueenBloodDrop = sprite_add("mods/palettes/monsters/queen_blood_drop.png", sprite_get_number(sQueenBloodDrop), false, false, sprite_get_xoffset(sQueenBloodDrop), sprite_get_yoffset(sQueenBloodDrop));
if (file_exists("mods/palettes/monsters/queen_blood_particle.png")) oControl.QueenBloodParticle = sprite_add("mods/palettes/monsters/queen_blood_particle.png", sprite_get_number(sQueenBloodParticle), false, false, sprite_get_xoffset(sQueenBloodParticle), sprite_get_yoffset(sQueenBloodParticle));

@ -2,4 +2,4 @@
with (oPopupText) instance_destroy();
var t = instance_create(0, 0, oPopupText);
t.text = argument0;
t.alarm[0] = argument1;
t.alarm[0] = argument1;

@ -7,6 +7,7 @@ repeat (80) {
writelog("Resetting " + string(i) + "," + string(j));
global.map[i, j] = "0";
global.dmap[i, j] = 0;
global.dmapPrev[i, j] = 0;
j += 1;
}
i += 1;

@ -3,8 +3,19 @@ list = ds_list_create();
ds_list_read(list, base64_decode(file_text_read_string(argument0)));
i = 0;
j = 0;
repeat (350) {
global.event[j] = readline();
j += 1;
if(!instance_exists(oClient)){
repeat (350) {
global.event[j] = readline();
j += 1;
}
} else if(instance_exists(oClient) && global.lastroom == gameoverroom){
//don't reset values
} else if(instance_exists(oClient) && global.lastroom != gameoverroom){
repeat (350) {
global.event[j] = readline();
j += 1;
}
}
ds_list_clear(list);

@ -2,19 +2,41 @@
list = ds_list_create();
ds_list_read(list, base64_decode(file_text_read_string(argument0)));
i = 0;
global.currentsuit = readline();
global.cbeam = readline();
global.ibeam = readline();
global.wbeam = readline();
global.pbeam = readline();
global.sbeam = readline();
global.morphball = readline();
global.jumpball = readline();
global.powergrip = readline();
global.spacejump = readline();
global.screwattack = readline();
global.hijump = readline();
global.spiderball = readline();
global.speedbooster = readline();
global.bomb = readline();
if(!instance_exists(oClient)){
global.currentsuit = readline();
global.cbeam = readline();
global.ibeam = readline();
global.wbeam = readline();
global.pbeam = readline();
global.sbeam = readline();
global.morphball = readline();
global.jumpball = readline();
global.powergrip = readline();
global.spacejump = readline();
global.screwattack = readline();
global.hijump = readline();
global.spiderball = readline();
global.speedbooster = readline();
global.bomb = readline();
} else if(instance_exists(oClient) && global.lastroom == gameoverroom){
//don't reset values
} else if(instance_exists(oClient) && global.lastroom != gameoverroom){
global.currentsuit = readline();
global.cbeam = readline();
global.ibeam = readline();
global.wbeam = readline();
global.pbeam = readline();
global.sbeam = readline();
global.morphball = readline();
global.jumpball = readline();
global.powergrip = readline();
global.spacejump = readline();
global.screwattack = readline();
global.hijump = readline();
global.spiderball = readline();
global.speedbooster = readline();
global.bomb = readline();
}
ds_list_clear(list);

@ -3,8 +3,19 @@ list = ds_list_create();
ds_list_read(list, base64_decode(file_text_read_string(argument0)));
i = 0;
j = 0;
repeat (350) {
global.item[j] = readline();
j += 1;
if(!instance_exists(oClient)){
repeat (350) {
global.item[j] = readline();
j += 1;
}
} else if(instance_exists(oClient) && global.lastroom == gameoverroom){
//don't reset values
} else if(instance_exists(oClient) && global.lastroom != gameoverroom){
repeat (350) {
global.item[j] = readline();
j += 1;
}
}
ds_list_clear(list);

@ -4,16 +4,34 @@ ds_list_read(list, base64_decode(file_text_read_string(argument0)));
i = 0;
global.save_room = readline();
global.difficulty = readline();
global.gametime = readline();
global.itemstaken = readline();
global.etanks = readline();
global.mtanks = readline();
global.stanks = readline();
global.ptanks = readline();
global.monstersleft = readline();
global.monstersarea = readline();
global.lavastate = readline();
global.mapmarker = readline();
global.mapmarkerx = readline();
global.mapmarkery = readline();
if(!instance_exists(oClient)){
global.gametime = readline();
global.itemstaken = readline();
global.etanks = readline();
global.mtanks = readline();
global.stanks = readline();
global.ptanks = readline();
global.monstersleft = readline();
global.monstersarea = readline();
global.lavastate = readline();
global.mapmarker = readline();
global.mapmarkerx = readline();
global.mapmarkery = readline();
} else if(instance_exists(oClient) && global.lastroom == gameoverroom){
//don't reset values
} else if(instance_exists(oClient) && global.lastroom != gameoverroom){
global.gametime = readline();
global.itemstaken = readline();
global.etanks = readline();
global.mtanks = readline();
global.stanks = readline();
global.ptanks = readline();
global.monstersleft = readline();
global.monstersarea = readline();
global.lavastate = readline();
global.mapmarker = readline();
global.mapmarkerx = readline();
global.mapmarkery = readline();
}
ds_list_clear(list);

@ -3,12 +3,27 @@ list = ds_list_create();
ds_list_read(list, base64_decode(file_text_read_string(argument0)));
i = 0;
k = 0;
repeat (80) {
j = 0;
if(!instance_exists(oClient)){
repeat (80) {
global.dmap[k, j] = readline();
j += 1;
j = 0;
repeat (80) {
global.dmap[k, j] = readline();
j += 1;
}
k += 1;
}
} else if(instance_exists(oClient) && global.lastroom == gameoverroom){
//don't reset values
} else if(instance_exists(oClient) && global.lastroom != gameoverroom){
repeat (80) {
j = 0;
repeat (80) {
global.dmap[k, j] = readline();
j += 1;
}
k += 1;
}
k += 1;
}
ds_list_clear(list);

@ -3,8 +3,19 @@ list = ds_list_create();
ds_list_read(list, base64_decode(file_text_read_string(argument0)));
i = 0;
j = 0;
repeat (100) {
global.metdead[j] = readline();
j += 1;
if(!instance_exists(oClient)){
repeat (100) {
global.metdead[j] = readline();
j += 1;
}
} else if(instance_exists(oClient) && global.lastroom == gameoverroom){
//don't reset values
} else if(instance_exists(oClient) && global.lastroom != gameoverroom){
repeat (100) {
global.metdead[j] = readline();
j += 1;
}
}
ds_list_clear(list);

@ -3,9 +3,19 @@
scr_default_global_items();
var header;
load_character_vars();
reset_map();
init_map();
if(!instance_exists(oClient)){
load_character_vars();
reset_map();
init_map();
} else if(instance_exists(oClient) && global.lastroom == gameoverroom){
//don't reset values
} else if(instance_exists(oClient) && global.lastroom != gameoverroom){
load_character_vars();
reset_map();
init_map();
}
filename = argument0;
if (os_is_native) {
file_copy(filename, filename + "d");
@ -70,5 +80,4 @@ if (header != "[AM2R SaveData V7.0]") {
room_change(global.start_room, 1);
} // if (header != "[AM2R SaveData V7.0]") else

@ -35,6 +35,7 @@ switch(argument0){
global.currentsuitPrev = global.currentsuit;
global.monstersareaPrev = global.monstersarea;
global.lavastatePrev = global.lavastate;
global.dmapPrev = array_clone(global.dmap);
break;
case "updateprev":
for(var i=0; i<ds_grid_height(global.onlineReceived); i++){
@ -56,7 +57,7 @@ switch(argument0){
} else if(global.onlineReceived[# 2, i] == 25 && global.receivedClientID == global.clientID){
global.smissilesPrev = global.smissiles;
}
/*
if(global.onlineReceived[# 2, i] == 2 && global.receivedClientID != global.clientID){
global.itemstaken = global.onlineReceived[# 1, i];
if(global.itemstakenPrev != global.itemstaken){
@ -101,7 +102,7 @@ switch(argument0){
} else if(global.onlineReceived[# 2, i] == 8 && global.receivedClientID == global.clientID){
global.maxhealthPrev = global.maxhealth;
}
*/
if(global.onlineReceived[# 2, i] == 9 && global.receivedClientID != global.clientID){
global.playerhealth = global.onlineReceived[# 1, i];
if(global.playerhealthPrev != global.playerhealth){
@ -116,6 +117,11 @@ switch(argument0){
if(global.morphballPrev != global.morphball){
global.morphballPrev = global.morphball;
}
if(global.morphball == 1){
popup_text("Morph enabled");
} else {
popup_text("Morph disabled");
}
} else if(global.onlineReceived[# 2, i] == 10 && global.receivedClientID == global.clientID){
global.morphballPrev = global.morphball;
}
@ -125,6 +131,11 @@ switch(argument0){
if(global.jumpballPrev != global.jumpball){
global.jumpballPrev = global.jumpball;
}
if(global.jumpball == 1){
popup_text("Springball enabled");
} else {
popup_text("Springball disabled");
}
} else if(global.onlineReceived[# 2, i] == 11 && global.receivedClientID == global.clientID){
global.jumpballPrev = global.jumpball;
}
@ -134,6 +145,11 @@ switch(argument0){
if(global.powergripPrev != global.powergrip){
global.powergripPrev = global.powergrip;
}
if(global.powergrip == 1){
popup_text("Powergrip enabled");
} else {
popup_text("Powergrip disabled");
}
} else if(global.onlineReceived[# 2, i] == 12 && global.receivedClientID == global.clientID){
global.powergripPrev = global.powergrip;
}
@ -143,6 +159,11 @@ switch(argument0){
if(global.spacejumpPrev != global.spacejump){
global.spacejumpPrev = global.spacejump;
}
if(global.spacejump == 1){
popup_text("Spacejump enabled");
} else {
popup_text("Spacejump disabled");
}
} else if(global.onlineReceived[# 2, i] == 13 && global.receivedClientID == global.clientID){
global.spacejumpPrev = global.spacejump;
}
@ -152,6 +173,11 @@ switch(argument0){
if(global.screwattackPrev != global.screwattack){
global.screwattackPrev = global.screwattack;
}
if(global.screwattack == 1){
popup_text("Screwattack enabled");
} else {
popup_text("Screwattack disabled");
}
} else if(global.onlineReceived[# 2, i] == 14 && global.receivedClientID == global.clientID){
global.screwattackPrev = global.screwattack;
}
@ -161,6 +187,11 @@ switch(argument0){
if(global.hijumpPrev != global.hijump){
global.hijumpPrev = global.hijump;
}
if(global.hijump == 1){
popup_text("Hi jump enabled");
} else {
popup_text("Hi jump disabled");
}
} else if(global.onlineReceived[# 2, i] == 15 && global.receivedClientID == global.clientID){
global.hijumpPrev = global.hijump;
}
@ -170,6 +201,11 @@ switch(argument0){
if(global.spiderballPrev != global.spiderball){
global.spiderballPrev = global.spiderball;
}
if(global.spiderball == 1){
popup_text("Spiderball enabled");
} else {
popup_text("Spiderball disabled");
}
} else if(global.onlineReceived[# 2, i] == 16 && global.receivedClientID == global.clientID){
global.spiderballPrev = global.spiderball;
}
@ -179,6 +215,11 @@ switch(argument0){
if(global.speedboosterPrev != global.speedbooster){
global.speedboosterPrev = global.speedbooster;
}
if(global.speedbooster == 1){
popup_text("Speedbooster enabled");
} else {
popup_text("Speedbooster disabled");
}
} else if(global.onlineReceived[# 2, i] == 17 && global.receivedClientID == global.clientID){
global.speedboosterPrev = global.speedbooster;
}
@ -188,6 +229,11 @@ switch(argument0){
if(global.bombPrev != global.bomb){
global.bombPrev = global.bomb;
}
if(global.bomb == 1){
popup_text("Bombs enabled");
} else {
popup_text("Bombs disabled");
}
} else if(global.onlineReceived[# 2, i] == 18 && global.receivedClientID == global.clientID){
global.bombPrev = global.bomb;
}
@ -197,6 +243,11 @@ switch(argument0){
if(global.ibeamPrev != global.ibeam){
global.ibeamPrev = global.ibeam;
}
if(global.ibeam == 1){
popup_text("Ice beam enabled");
} else {
popup_text("Ice beam disabled");
}
} else if(global.onlineReceived[# 2, i] == 19 && global.receivedClientID == global.clientID){
global.ibeamPrev = global.ibeam;
}
@ -206,6 +257,11 @@ switch(argument0){
if(global.wbeamPrev != global.wbeam){
global.wbeamPrev = global.wbeam;
}
if(global.wbeam == 1){
popup_text("Wave beam enabled");
} else {
popup_text("Wave beam disabled");
}
} else if(global.onlineReceived[# 2, i] == 20 && global.receivedClientID == global.clientID){
global.wbeamPrev = global.wbeam;
}
@ -215,6 +271,11 @@ switch(argument0){
if(global.pbeamPrev != global.pbeam){
global.pbeamPrev = global.pbeam;
}
if(global.pbeam == 1){
popup_text("Plasma beam enabled");
} else {
popup_text("Plasma beam disabled");
}
} else if(global.onlineReceived[# 2, i] == 21 && global.receivedClientID == global.clientID){
global.pbeamPrev = global.pbeam;
}
@ -224,6 +285,11 @@ switch(argument0){
if(global.sbeamPrev != global.sbeam){
global.sbeamPrev = global.sbeam;
}
if(global.sbeam == 1){
popup_text("Spazer beam enabled");
} else {
popup_text("Spazer beam disabled");
}
} else if(global.onlineReceived[# 2, i] == 22 && global.receivedClientID == global.clientID){
global.sbeamPrev = global.sbeam;
}
@ -233,6 +299,11 @@ switch(argument0){
if(global.cbeamPrev != global.cbeam){
global.cbeamPrev = global.cbeam;
}
if(global.cbeam == 1){
popup_text("Charge beam enabled");
} else {
popup_text("Charge beam disabled");
}
} else if(global.onlineReceived[# 2, i] == 23 && global.receivedClientID == global.clientID){
global.cbeamPrev = global.cbeam;
}
@ -245,7 +316,7 @@ switch(argument0){
} else if(global.onlineReceived[# 2, i] == 26 && global.receivedClientID == global.clientID){
global.pbombsPrev = global.pbombs;
}
/*
if(global.onlineReceived[# 2, i] == 27 && global.receivedClientID != global.clientID){
global.etanks = global.onlineReceived[# 1, i];
if(global.etanksPrev != global.etanks){
@ -281,12 +352,19 @@ switch(argument0){
} else if(global.onlineReceived[# 2, i] == 30 && global.receivedClientID == global.clientID){
global.ptanksPrev = global.ptanks;
}
*/
if(global.onlineReceived[# 2, i] == 31 && global.receivedClientID != global.clientID){
global.currentsuit = global.onlineReceived[# 1, i];
if(global.currentsuitPrev != global.currentsuit){
global.currentsuitPrev = global.currentsuit;
}
if(global.currentsuit == 2){
popup_text("Gravity suit enabled");
} else if(global.currentsuit == 1){
popup_text("Varia suit enabled");
} else if(global.currentsuit == 0){
popup_text("Power suit enabled");
}
} else if(global.onlineReceived[# 2, i] == 31 && global.receivedClientID == global.clientID){
global.currentsuitPrev = global.currentsuit;
}
@ -294,24 +372,24 @@ switch(argument0){
}
break;
case "onlinevars":
ds_grid_set(global.onlineList, 0, 0, global.itemPrev);
ds_grid_set(global.onlineList, 1, 0, global.item);
ds_grid_set(global.onlineList, 0, 1, global.metdeadPrev);
ds_grid_set(global.onlineList, 1, 1, global.metdead);
ds_grid_set(global.onlineList, 0, 2, global.itemstakenPrev);
ds_grid_set(global.onlineList, 1, 2, global.itemstaken);
ds_grid_set(global.onlineList, 0, 3, global.eventPrev);
ds_grid_set(global.onlineList, 1, 3, global.event);
ds_grid_set(global.onlineList, 0, 4, global.monstersleftPrev);
ds_grid_set(global.onlineList, 1, 4, global.monstersleft);
ds_grid_set(global.onlineList, 0, 5, global.maxmissilesPrev);
ds_grid_set(global.onlineList, 1, 5, global.maxmissiles);
ds_grid_set(global.onlineList, 0, 6, global.maxsmissilesPrev);
ds_grid_set(global.onlineList, 1, 6, global.maxsmissiles);
ds_grid_set(global.onlineList, 0, 7, global.maxpbombsPrev);
ds_grid_set(global.onlineList, 1, 7, global.maxpbombs);
ds_grid_set(global.onlineList, 0, 8, global.maxhealthPrev);
ds_grid_set(global.onlineList, 1, 8, global.maxhealth);
//ds_grid_set(global.onlineList, 0, 0, global.itemPrev);
//ds_grid_set(global.onlineList, 1, 0, global.item);
//ds_grid_set(global.onlineList, 0, 1, global.metdeadPrev);
//ds_grid_set(global.onlineList, 1, 1, global.metdead);
//ds_grid_set(global.onlineList, 0, 2, global.itemstakenPrev);
//ds_grid_set(global.onlineList, 1, 2, global.itemstaken);
//ds_grid_set(global.onlineList, 0, 3, global.eventPrev);
//ds_grid_set(global.onlineList, 1, 3, global.event);
//ds_grid_set(global.onlineList, 0, 4, global.monstersleftPrev);
//ds_grid_set(global.onlineList, 1, 4, global.monstersleft);
//ds_grid_set(global.onlineList, 0, 5, global.maxmissilesPrev);
//ds_grid_set(global.onlineList, 1, 5, global.maxmissiles);
//ds_grid_set(global.onlineList, 0, 6, global.maxsmissilesPrev);
//ds_grid_set(global.onlineList, 1, 6, global.maxsmissiles);
//ds_grid_set(global.onlineList, 0, 7, global.maxpbombsPrev);
//ds_grid_set(global.onlineList, 1, 7, global.maxpbombs);
//ds_grid_set(global.onlineList, 0, 8, global.maxhealthPrev);
//ds_grid_set(global.onlineList, 1, 8, global.maxhealth);
ds_grid_set(global.onlineList, 0, 9, global.playerhealthPrev);
ds_grid_set(global.onlineList, 1, 9, global.playerhealth);
ds_grid_set(global.onlineList, 0, 10, global.morphballPrev);
@ -348,31 +426,31 @@ switch(argument0){
ds_grid_set(global.onlineList, 1, 25, global.smissiles);
ds_grid_set(global.onlineList, 0, 26, global.pbombsPrev);
ds_grid_set(global.onlineList, 1, 26, global.pbombs);
ds_grid_set(global.onlineList, 0, 27, global.etanksPrev);
ds_grid_set(global.onlineList, 1, 27, global.etanks);
ds_grid_set(global.onlineList, 0, 28, global.mtanksPrev);
ds_grid_set(global.onlineList, 1, 28, global.mtanks);
ds_grid_set(global.onlineList, 0, 29, global.stanksPrev);
ds_grid_set(global.onlineList, 1, 29, global.stanks);
ds_grid_set(global.onlineList, 0, 30, global.ptanksPrev);
ds_grid_set(global.onlineList, 1, 30, global.ptanks);
//ds_grid_set(global.onlineList, 0, 27, global.etanksPrev);
//ds_grid_set(global.onlineList, 1, 27, global.etanks);
//ds_grid_set(global.onlineList, 0, 28, global.mtanksPrev);
//ds_grid_set(global.onlineList, 1, 28, global.mtanks);
//ds_grid_set(global.onlineList, 0, 29, global.stanksPrev);
//ds_grid_set(global.onlineList, 1, 29, global.stanks);
//ds_grid_set(global.onlineList, 0, 30, global.ptanksPrev);
//ds_grid_set(global.onlineList, 1, 30, global.ptanks);
ds_grid_set(global.onlineList, 0, 31, global.currentsuitPrev);
ds_grid_set(global.onlineList, 1, 31, global.currentsuit);
ds_grid_set(global.onlineList, 0, 32, global.monstersareaPrev);
ds_grid_set(global.onlineList, 1, 32, global.monstersarea);
//ds_grid_set(global.onlineList, 0, 32, global.monstersareaPrev);
//ds_grid_set(global.onlineList, 1, 32, global.monstersarea);
ds_grid_set(global.onlineList, 0, 33, global.lavastatePrev);
ds_grid_set(global.onlineList, 1, 33, global.lavastate);
break;
case "replaceglobalvars":
global.item = ds_grid_get(global.onlineList, 1, 0);
global.metdead = ds_grid_get(global.onlineList, 1, 1);
global.itemstaken = ds_grid_get(global.onlineList, 1, 2);
global.event = ds_grid_get(global.onlineList, 1, 3);
global.monstersleft = ds_grid_get(global.onlineList, 1, 4);
global.maxmissiles = ds_grid_get(global.onlineList, 1, 5);
global.maxsmissiles = ds_grid_get(global.onlineList, 1, 6);
global.maxpbombs = ds_grid_get(global.onlineList, 1, 7);
global.maxhealth = ds_grid_get(global.onlineList, 1, 8);
//global.item = ds_grid_get(global.onlineList, 1, 0);
//global.metdead = ds_grid_get(global.onlineList, 1, 1);
//global.itemstaken = ds_grid_get(global.onlineList, 1, 2);
//global.event = ds_grid_get(global.onlineList, 1, 3);
//global.monstersleft = ds_grid_get(global.onlineList, 1, 4);
//global.maxmissiles = ds_grid_get(global.onlineList, 1, 5);
//global.maxsmissiles = ds_grid_get(global.onlineList, 1, 6);
//global.maxpbombs = ds_grid_get(global.onlineList, 1, 7);
//global.maxhealth = ds_grid_get(global.onlineList, 1, 8);
global.playerhealth = ds_grid_get(global.onlineList, 1, 9);
global.morphball = ds_grid_get(global.onlineList, 1, 10);
global.jumpball = ds_grid_get(global.onlineList, 1, 11);
@ -391,12 +469,12 @@ switch(argument0){
global.missiles = ds_grid_get(global.onlineList, 1, 24);
global.smissiles = ds_grid_get(global.onlineList, 1, 25);
global.pbombs = ds_grid_get(global.onlineList, 1, 26);
global.etanks = ds_grid_get(global.onlineList, 1, 27);
global.mtanks = ds_grid_get(global.onlineList, 1, 28);
global.stanks = ds_grid_get(global.onlineList, 1, 29);
global.ptanks = ds_grid_get(global.onlineList, 1, 30);
//global.etanks = ds_grid_get(global.onlineList, 1, 27);
//global.mtanks = ds_grid_get(global.onlineList, 1, 28);
//global.stanks = ds_grid_get(global.onlineList, 1, 29);
//global.ptanks = ds_grid_get(global.onlineList, 1, 30);
global.currentsuit = ds_grid_get(global.onlineList, 1, 31);
global.monstersarea = ds_grid_get(global.onlineList, 1, 32);
//global.monstersarea = ds_grid_get(global.onlineList, 1, 32);
global.lavastate = ds_grid_get(global.onlineList, 1, 33);
break;
case "disablesame":
@ -405,6 +483,7 @@ switch(argument0){
global.onlineList[# 1, i] = global.onlineReceived[# 1, i];
}
/*
if((i == 0 || i == 1 || i == 3) && (is_array(global.onlineReceived[# 1, i]))){
var arrList = global.onlineList[# 1, i];
var arrSend = global.onlineReceived[# 1, i];
@ -437,20 +516,10 @@ switch(argument0){
}
}
}
/*
switch(i){
case 0:
global.onlineList[# 0, 0] = global.itemPrev;
break;
case 1:
global.onlineList[# 0, 1] = global.metdeadPrev;
break;
case 3:
global.onlineList[# 0, 3] = global.eventPrev;
break;
}
*/
}
*/
/*
if(i == 4){
if(global.onlineReceived[# 2, i] != -1 && global.receivedClientID != global.clientID){
global.monstersleft = global.onlineReceived[# 1, 4];
@ -471,6 +540,7 @@ switch(argument0){
global.monstersareaPrev = global.monstersarea;
}
}
*/
if(i == 33){
if(global.onlineReceived[# 2, i] != -1 && global.receivedClientID != global.clientID){
global.lavastate = global.onlineReceived[# 1, 33];

@ -0,0 +1,32 @@
<!--This Document is generated by GameMaker, if you edit it by hand then you do so at your own risk!-->
<sprite>
<type>0</type>
<xorig>0</xorig>
<yorigin>0</yorigin>
<colkind>1</colkind>
<coltolerance>0</coltolerance>
<sepmasks>0</sepmasks>
<bboxmode>0</bboxmode>
<bbox_left>0</bbox_left>
<bbox_right>8</bbox_right>
<bbox_top>0</bbox_top>
<bbox_bottom>8</bbox_bottom>
<HTile>0</HTile>
<VTile>0</VTile>
<TextureGroups>
<TextureGroup0>0</TextureGroup0>
</TextureGroups>
<For3D>0</For3D>
<width>9</width>
<height>9</height>
<frames>
<frame index="0">images\sDarkMultitroidPlayer_0.png</frame>
<frame index="1">images\sDarkMultitroidPlayer_1.png</frame>
<frame index="2">images\sDarkMultitroidPlayer_2.png</frame>
<frame index="3">images\sDarkMultitroidPlayer_3.png</frame>
<frame index="4">images\sDarkMultitroidPlayer_4.png</frame>
<frame index="5">images\sDarkMultitroidPlayer_5.png</frame>
<frame index="6">images\sDarkMultitroidPlayer_6.png</frame>
<frame index="7">images\sDarkMultitroidPlayer_7.png</frame>
</frames>
</sprite>

@ -0,0 +1,32 @@
<!--This Document is generated by GameMaker, if you edit it by hand then you do so at your own risk!-->
<sprite>
<type>0</type>
<xorig>0</xorig>
<yorigin>0</yorigin>
<colkind>1</colkind>
<coltolerance>0</coltolerance>
<sepmasks>0</sepmasks>
<bboxmode>0</bboxmode>
<bbox_left>0</bbox_left>
<bbox_right>8</bbox_right>
<bbox_top>0</bbox_top>
<bbox_bottom>8</bbox_bottom>
<HTile>0</HTile>
<VTile>0</VTile>
<TextureGroups>
<TextureGroup0>0</TextureGroup0>
</TextureGroups>
<For3D>0</For3D>
<width>9</width>
<height>9</height>
<frames>
<frame index="0">images\sMultitroidIcon_0.png</frame>
<frame index="1">images\sMultitroidIcon_1.png</frame>
<frame index="2">images\sMultitroidIcon_2.png</frame>
<frame index="3">images\sMultitroidIcon_3.png</frame>
<frame index="4">images\sMultitroidIcon_4.png</frame>
<frame index="5">images\sMultitroidIcon_5.png</frame>
<frame index="6">images\sMultitroidIcon_6.png</frame>
<frame index="7">images\sMultitroidIcon_7.png</frame>
</frames>
</sprite>

@ -0,0 +1,32 @@
<!--This Document is generated by GameMaker, if you edit it by hand then you do so at your own risk!-->
<sprite>
<type>0</type>
<xorig>0</xorig>
<yorigin>0</yorigin>
<colkind>1</colkind>
<coltolerance>0</coltolerance>
<sepmasks>0</sepmasks>
<bboxmode>0</bboxmode>
<bbox_left>0</bbox_left>
<bbox_right>7</bbox_right>
<bbox_top>0</bbox_top>
<bbox_bottom>7</bbox_bottom>
<HTile>0</HTile>
<VTile>0</VTile>
<TextureGroups>
<TextureGroup0>0</TextureGroup0>
</TextureGroups>
<For3D>0</For3D>
<width>8</width>
<height>8</height>
<frames>
<frame index="0">images\sMultitroidMapIcon_0.png</frame>
<frame index="1">images\sMultitroidMapIcon_1.png</frame>
<frame index="2">images\sMultitroidMapIcon_2.png</frame>
<frame index="3">images\sMultitroidMapIcon_3.png</frame>
<frame index="4">images\sMultitroidMapIcon_4.png</frame>
<frame index="5">images\sMultitroidMapIcon_5.png</frame>
<frame index="6">images\sMultitroidMapIcon_6.png</frame>
<frame index="7">images\sMultitroidMapIcon_7.png</frame>
</frames>
</sprite>

@ -0,0 +1,25 @@
<!--This Document is generated by GameMaker, if you edit it by hand then you do so at your own risk!-->
<sprite>
<type>0</type>
<xorig>0</xorig>
<yorigin>0</yorigin>
<colkind>1</colkind>
<coltolerance>0</coltolerance>
<sepmasks>0</sepmasks>
<bboxmode>0</bboxmode>
<bbox_left>0</bbox_left>
<bbox_right>8</bbox_right>
<bbox_top>0</bbox_top>
<bbox_bottom>9</bbox_bottom>
<HTile>0</HTile>
<VTile>0</VTile>
<TextureGroups>
<TextureGroup0>0</TextureGroup0>
</TextureGroups>
<For3D>0</For3D>
<width>9</width>
<height>10</height>
<frames>
<frame index="0">images\sPalMultitroidBaby_0.png</frame>
</frames>
</sprite>

@ -0,0 +1,25 @@
<!--This Document is generated by GameMaker, if you edit it by hand then you do so at your own risk!-->
<sprite>
<type>0</type>
<xorig>0</xorig>
<yorigin>0</yorigin>
<colkind>1</colkind>
<coltolerance>0</coltolerance>
<sepmasks>0</sepmasks>
<bboxmode>0</bboxmode>
<bbox_left>0</bbox_left>
<bbox_right>8</bbox_right>
<bbox_top>0</bbox_top>
<bbox_bottom>80</bbox_bottom>
<HTile>0</HTile>
<VTile>0</VTile>
<TextureGroups>
<TextureGroup0>0</TextureGroup0>
</TextureGroups>
<For3D>0</For3D>
<width>9</width>
<height>81</height>
<frames>
<frame index="0">images\sPalMultitroidFusion_0.png</frame>
</frames>
</sprite>

@ -0,0 +1,25 @@
<!--This Document is generated by GameMaker, if you edit it by hand then you do so at your own risk!-->
<sprite>
<type>0</type>
<xorig>0</xorig>
<yorigin>0</yorigin>
<colkind>1</colkind>
<coltolerance>0</coltolerance>
<sepmasks>0</sepmasks>
<bboxmode>0</bboxmode>
<bbox_left>0</bbox_left>
<bbox_right>8</bbox_right>
<bbox_top>0</bbox_top>
<bbox_bottom>86</bbox_bottom>
<HTile>0</HTile>
<VTile>0</VTile>
<TextureGroups>
<TextureGroup0>0</TextureGroup0>
</TextureGroups>
<For3D>0</For3D>
<width>9</width>
<height>87</height>
<frames>
<frame index="0">images\sPalMultitroidNew_0.png</frame>
</frames>
</sprite>

@ -0,0 +1,25 @@
<!--This Document is generated by GameMaker, if you edit it by hand then you do so at your own risk!-->
<sprite>
<type>0</type>
<xorig>0</xorig>
<yorigin>0</yorigin>
<colkind>1</colkind>
<coltolerance>0</coltolerance>
<sepmasks>0</sepmasks>
<bboxmode>0</bboxmode>
<bbox_left>0</bbox_left>
<bbox_right>8</bbox_right>
<bbox_top>0</bbox_top>
<bbox_bottom>68</bbox_bottom>
<HTile>0</HTile>
<VTile>0</VTile>
<TextureGroups>
<TextureGroup0>0</TextureGroup0>
</TextureGroups>
<For3D>0</For3D>
<width>9</width>
<height>69</height>
<frames>
<frame index="0">images\sPalSpiderball_0.png</frame>
</frames>
</sprite>
Loading…
Cancel
Save