diff --git a/AM2R.project.gmx b/AM2R.project.gmx
index 3e973b7d..bd886f32 100644
--- a/AM2R.project.gmx
+++ b/AM2R.project.gmx
@@ -3,8 +3,8 @@
Configs\Default
-
-
+
+
czech.ini
-1
@@ -158,7 +158,7 @@
languages.txt
-
+
castellano_a1_f24_b0_c3_d19_e21.png
-1
@@ -857,7 +857,7 @@
russian_a8_f19_b0_c3_d14_e16.png
-
+
04b09.ttf
-1
@@ -1047,8 +1047,8 @@
dictionary.json
-
-
+
+
config.ini
-1
@@ -1084,8 +1084,8 @@
titlebackground.png
-
-
+
+
alpha.png
-1
@@ -1257,7 +1257,7 @@
zeta_blur.png
-
+
fusion_gravity.png
-1
@@ -1360,7 +1360,7 @@
varia.png
-
+
fusion_gravity.png
-1
@@ -1464,7 +1464,7 @@
varia.png
-
+
fusion_gravity.png
-1
@@ -1568,7 +1568,7 @@
varia.png
-
+
fusion_gravity.png
-1
@@ -1673,6 +1673,490 @@
+
+
+ baby_metroid.png
+ -1
+ 220
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ baby_metroid.png
+
+
+ multitroid.png
+ -1
+ 885
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ multitroid.png
+
+
+ multitroid_fusion.png
+ -1
+ 830
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ multitroid_fusion.png
+
+
+ spiderball.png
+ -1
+ 988
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ spiderball.png
+
+
+
+ sDarkMultitroidPlayer_0.png
+ -1
+ 159
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sDarkMultitroidPlayer_0.png
+
+
+ sDarkMultitroidPlayer_1.png
+ -1
+ 156
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sDarkMultitroidPlayer_1.png
+
+
+ sDarkMultitroidPlayer_2.png
+ -1
+ 160
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sDarkMultitroidPlayer_2.png
+
+
+ sDarkMultitroidPlayer_3.png
+ -1
+ 159
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sDarkMultitroidPlayer_3.png
+
+
+ sDarkMultitroidPlayer_4.png
+ -1
+ 160
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sDarkMultitroidPlayer_4.png
+
+
+ sDarkMultitroidPlayer_5.png
+ -1
+ 159
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sDarkMultitroidPlayer_5.png
+
+
+ sDarkMultitroidPlayer_6.png
+ -1
+ 160
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sDarkMultitroidPlayer_6.png
+
+
+ sDarkMultitroidPlayer_7.png
+ -1
+ 157
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sDarkMultitroidPlayer_7.png
+
+
+
+
+ sMultitroidIcon_0.png
+ -1
+ 163
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sMultitroidIcon_0.png
+
+
+ sMultitroidIcon_1.png
+ -1
+ 163
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sMultitroidIcon_1.png
+
+
+ sMultitroidIcon_2.png
+ -1
+ 164
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sMultitroidIcon_2.png
+
+
+ sMultitroidIcon_3.png
+ -1
+ 164
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sMultitroidIcon_3.png
+
+
+ sMultitroidIcon_4.png
+ -1
+ 163
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sMultitroidIcon_4.png
+
+
+ sMultitroidIcon_5.png
+ -1
+ 164
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sMultitroidIcon_5.png
+
+
+ sMultitroidIcon_6.png
+ -1
+ 164
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sMultitroidIcon_6.png
+
+
+ sMultitroidIcon_7.png
+ -1
+ 164
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sMultitroidIcon_7.png
+
+
+
+
+ sMultitroidMapIcon_0.png
+ -1
+ 147
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sMultitroidMapIcon_0.png
+
+
+ sMultitroidMapIcon_1.png
+ -1
+ 146
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sMultitroidMapIcon_1.png
+
+
+ sMultitroidMapIcon_2.png
+ -1
+ 148
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sMultitroidMapIcon_2.png
+
+
+ sMultitroidMapIcon_3.png
+ -1
+ 148
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sMultitroidMapIcon_3.png
+
+
+ sMultitroidMapIcon_4.png
+ -1
+ 147
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sMultitroidMapIcon_4.png
+
+
+ sMultitroidMapIcon_5.png
+ -1
+ 147
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sMultitroidMapIcon_5.png
+
+
+ sMultitroidMapIcon_6.png
+ -1
+ 147
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sMultitroidMapIcon_6.png
+
+
+ sMultitroidMapIcon_7.png
+ -1
+ 146
+ 2
+
+ 0
+ -1
+ 0
+ 0
+
+
+ 9223372036854775807
+
+
+ sMultitroidMapIcon_7.png
+
+
+
@@ -6124,6 +6608,7 @@
+
diff --git a/objects/oClient.object.gmx b/objects/oClient.object.gmx
index 36fd77e2..fb49ec32 100644
--- a/objects/oClient.object.gmx
+++ b/objects/oClient.object.gmx
@@ -47,7 +47,7 @@ connected = false;
queenHealthWait = false;
queenDead = false;
sameRoom = false;
-queenHealth = 600;
+queenHealth = global.mod_queenHstart + (global.mtanks * 10);
phase = 0;
maxpbombsTimer = 10;
maxhealthTimer = 10;
@@ -59,12 +59,13 @@ teleportTimer = 180;
disconnectTimer = 600;
pingTimer = 90;
teleport = false;
+noName = false;
state = undefined;
seed = undefined;
var type;
type = network_socket_tcp;
-ini_open(working_directory + "\mod settings.ini");
+ini_open(working_directory + "\mod_settings.ini");
ipaddress = ini_read_string("ModSettings", "ipaddress", "127.0.0.1");
name = ini_read_string("ModSettings", "displayname", "name");
port = ini_read_real("ModSettings", "port", 64198);
@@ -76,11 +77,17 @@ ini_close();
var nameLength = string_length(name);
if(nameLength > 15){
name = string_copy(name, 1, 15);
- ini_open(working_directory + "\mod settings.ini");
+ ini_open(working_directory + "\mod_settings.ini");
ini_write_string("ModSettings", "displayname", name);
ini_close();
}
+if(string_length(name) == 0){
+ noName = true;
+ popup_text_ext("Set a name before connecting", 180);
+ instance_destroy();
+}
+
socket = network_create_socket(type);
isConnected = network_connect(socket, ipaddress, port);
@@ -129,7 +136,7 @@ type = buffer_grow;
alignment = 1;
buffer = buffer_create(size, type, alignment);
-global.queenhealthPrev = 600;
+global.queenhealthPrev = global.mod_queenHstart + (global.mtanks * 10);;
global.queenphasePrev = 0;
@@ -219,21 +226,23 @@ trail = 0;
var result = network_send_packet(socket, buffer, buffer_tell(buffer));
}
-network_destroy(socket);
-buffer_delete(buffer);
-ds_grid_destroy(global.onlineList);
-ds_grid_destroy(global.onlineSend);
-ds_grid_destroy(global.onlineReceived);
-ds_list_destroy(global.onlineItem);
-ds_list_destroy(global.onlineMetdead);
-ds_list_destroy(global.onlineEvent);
-ds_list_destroy(global.onlineMap);
-ds_list_destroy(global.receivedPacketIDs);
-ds_list_destroy(roomList);
-ds_list_destroy(roomListData);
-ds_list_destroy(global.idList);
-ds_list_destroy(posData);
-ds_list_destroy(global.hatchlingList);
+if(!noName){
+ network_destroy(socket);
+ buffer_delete(buffer);
+ ds_grid_destroy(global.onlineList);
+ ds_grid_destroy(global.onlineSend);
+ ds_grid_destroy(global.onlineReceived);
+ ds_list_destroy(global.onlineItem);
+ ds_list_destroy(global.onlineMetdead);
+ ds_list_destroy(global.onlineEvent);
+ ds_list_destroy(global.onlineMap);
+ ds_list_destroy(global.receivedPacketIDs);
+ ds_list_destroy(roomList);
+ ds_list_destroy(roomListData);
+ ds_list_destroy(global.idList);
+ ds_list_destroy(posData);
+ ds_list_destroy(global.hatchlingList);
+}
global.canConnect = false;
oControl.alarm[10] = 90;
@@ -911,66 +920,6 @@ for(var i=0; i<ds_grid_height(global.onlineList); i++){
canSend = true;
alarm[0] = 600;
}
-
- /*
- if(i == 0){
- var v = 0;
- var itemPrev = global.onlineList[# 0, 0];
- var item = global.onlineList[# 1, 0];
- for(var f=0; f<array_length_1d(item); f++){
- if(itemPrev[f] != item[f]){
- global.itemChanges[v, 0] = global.item[f];
- global.itemChanges[v, 1] = f;
- global.onlineSend[# 1, 0] = global.itemChanges;
- global.onlineSend[# 2, 0] = global.onlineList[# 2, 0];
- show_debug_message(string(global.itemPrev[f]) + " " + string(global.item[f]));
- show_debug_message("item changed");
- canSend = true;
- v++;
-
- }
- }
- }
-
- if(i == 1){
- var v = 0;
- var metdeadPrev = global.onlineList[# 0, 1];
- var metdead = global.onlineList[# 1, 1];
- for(var f=0; f<array_length_1d(metdead); f++){
- if(metdeadPrev[f] != metdead[f]){
- global.metdeadChanges[v, 0] = global.metdead[f];
- global.metdeadChanges[v, 1] = f;
- global.onlineSend[# 1, 1] = global.metdeadChanges;
- global.onlineSend[# 2, 1] = global.onlineList[# 2, 1];
- show_debug_message(string(global.metdeadPrev[f]) + " " + string(global.metdead[f]));
- show_debug_message("metdead changed");
- canSend = true;
- v++;
-
- }
- }
- }
-
- if(i == 3){
- var v = 0;
- var eventPrev = global.onlineList[# 0, 3];
- var event = global.onlineList[# 1, 3];
- for(var f=0; f<array_length_1d(eventPrev) - 1; f++){
- if(eventPrev[f] != event[f]){
- global.eventChanges[v, 0] = global.event[f];
- global.eventChanges[v, 1] = f;
- global.onlineSend[# 1, 3] = global.eventChanges;
- global.onlineSend[# 2, 3] = global.onlineList[# 2, 3];
- show_debug_message(string(global.eventPrev[f]) + " " + string(global.event[f]));
- show_debug_message("event changed");
- canSend = true;
- v++;
-
- }
- }
- }
- */
-
}
if(canSend){
@@ -1075,6 +1024,7 @@ if(itemCount != global.itemstaken){
buffer = buffer_create(size, type, alignment);
buffer_seek(buffer, buffer_seek_start, 0);
buffer_write(buffer, buffer_u8, 1);
+ buffer_write(buffer, buffer_string, name)
var result = network_send_packet(socket, buffer, buffer_tell(buffer));
instance_create(x, y, oNametag);
} else {
@@ -1095,7 +1045,7 @@ if(global.event[303] > 0){
if(room == rm_death){
phase = 0;
- queenHealth = 600;
+ queenHealth = global.mod_queenHstart + (global.mtanks * 10);;
}
if((room == rm_a4b02 || room == rm_a4b03 || room == rm_a4b04 || room == rm_a4b05 || room == rm_a4b06 || room == rm_a4b07 || room == rm_a4b08 || room == rm_a4b09 || room == rm_a4b10 || room == rm_a4b11 || room == rm_a4b12 || room == rm_a4b13 || room == rm_a4b14 || room == rm_a4b15 || room == rm_a4b16 || room == rm_a4b17 || room == rm_a4b18 || room == rm_a4b19) && global.event[203] > 0 && global.event[203] < 9 && !instance_exists(oA4EscapeControl)){
@@ -1146,9 +1096,6 @@ if(keyboard_check_pressed(vk_f2)){
if(keyboard_check_pressed(vk_f3)){
popup_text_ext(string(oControl.seed), 300);
- global.targetx = 864;
- global.targety = 96;
- room_change(rm_a7c01, 1);
}
if(keyboard_check_pressed(vk_f4)){
@@ -1721,6 +1668,7 @@ switch(type_event){
break;
case 0:
global.clientID = buffer_read(_buffer, buffer_u8);
+ show_debug_message(string(msgid) + " " + string(global.clientID));
alarm[0] = 5;
alarm[2] = 5;
alarm[3] = 5;
@@ -2128,12 +2076,155 @@ switch(type_event){
global.item[i] = receivedItem;
global.itemPrev[i] = global.item[i];
- //ADD POWERUP ACTIVATIONS HERE FOR WHEN ITEMS ARE JUST RECEIVED
if(i == 0){
global.bomb = 1;
global.bombPrev = global.bomb;
popup_text("Bombs enabled");
}
+
+ if(i == 1){
+ global.powergrip = 1;
+ global.powergripPrev = global.powergrip;
+ popup_text("Powergrip enabled");
+ }
+
+ if(i == 2){
+ global.spiderball = 1;
+ global.spiderballPrev = global.spiderball;
+ popup_text("Spiderball enabled");
+ }
+
+ if(i == 3){
+ global.jumpball = 1;
+ global.jumpballPrev = global.jumpball;
+ popup_text("Springball enabled");
+ }
+
+ if(i == 4){
+ global.hijump = 1;
+ global.hijumpPrev = global.hijump;
+ popup_text("Hi jump enabled");
+ }
+
+ if(i == 5){
+ global.currentsuit = 1;
+ global.currentsuitPrev = global.currentsuit;
+ popup_text("Varia suit enabled");
+ if(sfx_isplaying(sndSpinJump)){
+ sfx_stop(sndSpinJump);
+ }
+
+ if(sfx_isplaying(sndSpaceJump)){
+ sfx_stop(sndSpaceJump);
+ }
+
+ if(sfx_isplaying(sndScrewAttack)){
+ sfx_stop(sndScrewAttack);
+ }
+
+ if(sfx_isplaying(sndSpaceScrewAttack)){
+ sfx_stop(sndSpaceScrewAttack);
+ }
+ }
+
+ if(i == 6){
+ global.spacejump = 1;
+ global.spacejumpPrev = global.spacejump;
+ popup_text("Spacejump enabled");
+ if(sfx_isplaying(sndSpinJump)){
+ sfx_stop(sndSpinJump);
+ }
+
+ if(sfx_isplaying(sndSpaceJump)){
+ sfx_stop(sndSpaceJump);
+ }
+
+ if(sfx_isplaying(sndScrewAttack)){
+ sfx_stop(sndScrewAttack);
+ }
+
+ if(sfx_isplaying(sndSpaceScrewAttack)){
+ sfx_stop(sndSpaceScrewAttack);
+ }
+ }
+
+ if(i == 7){
+ global.speedbooster = 1;
+ global.speedboosterPrev = global.speedbooster;
+ popup_text("Speedbooster enabled");
+ }
+
+ if(i == 8){
+ global.screwattack = 1;
+ global.screwattackPrev = global.screwattack;
+ popup_text("Screwattack enabled");
+ if(sfx_isplaying(sndSpinJump)){
+ sfx_stop(sndSpinJump);
+ }
+
+ if(sfx_isplaying(sndSpaceJump)){
+ sfx_stop(sndSpaceJump);
+ }
+
+ if(sfx_isplaying(sndScrewAttack)){
+ sfx_stop(sndScrewAttack);
+ }
+
+ if(sfx_isplaying(sndSpaceScrewAttack)){
+ sfx_stop(sndSpaceScrewAttack);
+ }
+ }
+
+ if(i == 9){
+ global.currentsuit = 2;
+ global.currentsuitPrev = global.currentsuit;
+ popup_text("Gravity suit enabled");
+ if(sfx_isplaying(sndSpinJump)){
+ sfx_stop(sndSpinJump);
+ }
+
+ if(sfx_isplaying(sndSpaceJump)){
+ sfx_stop(sndSpaceJump);
+ }
+
+ if(sfx_isplaying(sndScrewAttack)){
+ sfx_stop(sndScrewAttack);
+ }
+
+ if(sfx_isplaying(sndSpaceScrewAttack)){
+ sfx_stop(sndSpaceScrewAttack);
+ }
+ }
+
+ if(i == 10){
+ global.cbeam = 1;
+ global.cbeamPrev = global.cbeam;
+ popup_text("Charge beam enabled");
+ }
+
+ if(i == 11){
+ global.ibeam = 1;
+ global.ibeamPrev = global.ibeam;
+ popup_text("Ice beam enabled");
+ }
+
+ if(i == 12){
+ global.wbeam = 1;
+ global.wbeamPrev = global.wbeam;
+ popup_text("Wave beam enabled");
+ }
+
+ if(i == 13){
+ global.sbeam = 1;
+ global.sbeamPrev = global.sbeam;
+ popup_text("Spazer beam enabled");
+ }
+
+ if(i == 14){
+ global.pbeam = 1;
+ global.pbeamPrev = global.pbeam;
+ popup_text("Plasma beam enabled");
+ }
} else if(receivedItem == 0 && global.item[i] == 1){
resend = true;
}
@@ -2216,12 +2307,14 @@ switch(type_event){
case 51:
var resend = false;
for(var i=0; i<array_length_1d(global.event); i++){
- var receivedEvent = buffer_read(_buffer, buffer_u8);
- if(receivedEvent > global.event[i]){
- global.event[i] = receivedEvent;
- global.eventPrev[i] = global.event[i];
- } else if(receivedEvent < global.event[i]){
- resend = true;
+ if(i < 350){
+ var receivedEvent = buffer_read(_buffer, buffer_u8);
+ if(receivedEvent > global.event[i]){
+ global.event[i] = receivedEvent;
+ global.eventPrev[i] = global.event[i];
+ } else if(receivedEvent < global.event[i]){
+ resend = true;
+ }
}
}
@@ -2562,10 +2655,14 @@ ds_list_destroy(global.hatchlingList);
if(arrSprite == sSpiderMorphBall || arrSprite == sGSpiderMorphBall || arrSprite == sVSpiderMorphBall || arrSprite == sSpiderMorphBall_fusion || arrSprite == sSpiderMorphBall_fusion_gravity || arrSprite == sSpiderMorphBall_fusion_varia){
draw_set_blend_mode(bm_add);
draw_set_alpha(arrFXTimer * 0.1);
- pal_swap_set(sPalSpiderball, arrID, false);
+ if(global.shaders_compiled){
+ pal_swap_set(oControl.SpiderballPalette, arrID, false);
+ }
draw_sprite_ext(sSpiderballFX, -1, arrX, arrY, 1, 1, 0, -1, 0.2 + arrFXTimer * 0.1);
- pal_swap_reset();
- shader_reset();
+ if(global.shaders_compiled){
+ pal_swap_reset();
+ shader_reset();
+ }
draw_set_alpha(1);
draw_set_blend_mode(bm_normal);
}
@@ -2587,7 +2684,7 @@ if(instance_exists(oMapCursor)){
var arrID = arrMapIcon[0];
var arrX = arrMapIcon[1];
var arrY = arrMapIcon[2];
- draw_sprite_ext(sMultitroidMapIcon, (arrID - 1), (arrX * 8), ((arrY * 8) + 32), 1, 1, direction, c_white, oMapCursor.image_alpha);
+ draw_sprite_ext(oControl.MultitroidMapIcon, (arrID - 1), (arrX * 8), ((arrY * 8) + 32), 1, 1, direction, c_white, oMapCursor.image_alpha);
}
}
}
diff --git a/objects/oControl.object.gmx b/objects/oControl.object.gmx
index 14f877d8..d8a33c3c 100644
--- a/objects/oControl.object.gmx
+++ b/objects/oControl.object.gmx
@@ -321,6 +321,8 @@ global.fontVersion = font_add_sprite_ext(sVersionFont, "V.0123456789", true, 1);
global.am2r_version = "V1.5.2"; // no longer dynamic, not worth the effort to maintain - mostly because of Android oddities.
+global.multitroid_version = "V1.2";
+
// Android
global.gamestarted = 0;
global.wave_height = 1;
@@ -396,11 +398,9 @@ global.canConnect = true;
reset_map();
load_character_vars();
-multitroidPalette = -1;
-if (file_exists("mods/palettes/sPalMultitroid.png")) multitroidPalette = sprite_add("mods/palettes/sPalMultitroid.png", 1, false, false, 0, 0);
-if(!(file_exists(working_directory + "\mod settings.ini"))){
+if(!(file_exists(working_directory + "\mod_settings.ini"))){
//Create new file
- ini_open(working_directory + "\mod settings.ini");
+ ini_open(working_directory + "\mod_settings.ini");
ini_write_string("ModSettings", "ipaddress", "127.0.0.1");
ini_write_string("ModSettings", "displayname", "name");
ini_write_real("ModSettings", "port", 64198);
@@ -409,7 +409,7 @@ if(!(file_exists(working_directory + "\mod settings.ini"))){
ini_write_string("ModSettings", "showname", "enabled");
ini_close();
}
-ini_open(working_directory + "\mod settings.ini");
+ini_open(working_directory + "\mod_settings.ini");
ipaddress = ini_read_string("ModSettings", "ipaddress", "127.0.0.1");
name = ini_read_string("ModSettings", "displayname", "name");
port = ini_read_real("ModSettings", "port", 64198);
@@ -421,7 +421,7 @@ ini_close();
var nameLength = string_length(name);
if(nameLength > 15){
name = string_copy(name, 1, 15);
- ini_open(working_directory + "\mod settings.ini");
+ ini_open(working_directory + "\mod_settings.ini");
ini_write_string("ModSettings", "displayname", name);
ini_close();
}
diff --git a/objects/oDrawTitleBG.object.gmx b/objects/oDrawTitleBG.object.gmx
index 40ea151d..a43015ba 100644
--- a/objects/oDrawTitleBG.object.gmx
+++ b/objects/oDrawTitleBG.object.gmx
@@ -122,6 +122,8 @@ draw_background_ext(bgURL, 198+(oControl.widescreen_space/2), 232, 1, 1, 0, -1,
draw_set_font(global.fontVersion);
draw_background_ext(bgVersion, 0-(oControl.widescreen_space/2), 0, string_width(global.am2r_version) + 1, 1, 0, -1, image_alpha);
draw_text_colour(1-(oControl.widescreen_space/2), 1, global.am2r_version, -1, -1, -1, -1, image_alpha);
+draw_background_ext(bgVersion, 0-(oControl.widescreen_space/2), 9, string_width(global.multitroid_version) + 1, 1, 0, -1, image_alpha);
+draw_text_colour(1-(oControl.widescreen_space/2), 10, global.multitroid_version, -1, -1, -1, -1, image_alpha);
diff --git a/objects/oHatchling.object.gmx b/objects/oHatchling.object.gmx
index b7b8d042..0eaf3165 100644
--- a/objects/oHatchling.object.gmx
+++ b/objects/oHatchling.object.gmx
@@ -283,7 +283,7 @@ mealtimer += 1;
draw_set_blend_mode(bm_normal);
} else {
if(global.shaders_compiled){
- pal_swap_set(sPalMultitroidBaby, myid, false);
+ pal_swap_set(oControl.MultitroidBabyPalette, myid, false);
}
draw_self();
draw_sprite_ext(sprite_index, -1, x, y, 1, 1, 0, -1, flash);
diff --git a/objects/oNametag.object.gmx b/objects/oNametag.object.gmx
index 6617d62a..b684384b 100644
--- a/objects/oNametag.object.gmx
+++ b/objects/oNametag.object.gmx
@@ -76,7 +76,16 @@
var arrFXTimer = arrDraw[17];
var arrRoomPrev = arrDraw[18];
if((arrRoom == room || arrRoom == rm_options || arrRoom == itemroom || arrRoom == subscreenroom || arrRoom == maproom || arrRoom == rm_subscreen) && instance_exists(oCharacter) && room != rm_transition){
- if(oClient.showName){
+ var showName = true;
+ switch(oControl.showname){
+ case "disabled":
+ showName = false;
+ break;
+ case "enabled":
+ showName = true;
+ break;
+ }
+ if(showName){
var text;
if(arrRoom == room){
text = arrName;
@@ -89,13 +98,13 @@
}
if(arrRoom != room){
if(arrRoomPrev == room){
- draw_set_font(font_displayname);
+ draw_set_font(fontGUI2);
draw_set_halign(fa_center);
draw_cool_text(arrX, arrY - 52, text, c_black, c_white, c_white, 1);
draw_set_halign(fa_left);
}
} else {
- draw_set_font(font_displayname);
+ draw_set_font(fontGUI2);
draw_set_halign(fa_center);
draw_cool_text(arrX, arrY - 52, text, c_black, c_white, c_white, 1);
draw_set_halign(fa_left);
diff --git a/objects/oOptionLRMod.object.gmx b/objects/oOptionLRMod.object.gmx
new file mode 100644
index 00000000..01f1a7d0
--- /dev/null
+++ b/objects/oOptionLRMod.object.gmx
@@ -0,0 +1,93 @@
+
+
diff --git a/objects/oOptionsMod.object.gmx b/objects/oOptionsMod.object.gmx
index 53c02ff4..cb8c5db5 100644
--- a/objects/oOptionsMod.object.gmx
+++ b/objects/oOptionsMod.object.gmx
@@ -280,6 +280,7 @@ if (active) {
keyboard_string = ip;
}
sfx_play(sndMenuSel);
+ event_user(2);
}
if (global.curropt == num_port) {
editing = !editing;
@@ -288,6 +289,7 @@ if (active) {
keyboard_string = port;
}
sfx_play(sndMenuSel);
+ event_user(2);
}
if (global.curropt == num_name) {
editing = !editing;
@@ -296,6 +298,7 @@ if (active) {
keyboard_string = name;
}
sfx_play(sndMenuSel);
+ event_user(2);
}
if (global.curropt == num_connection){
if(!instance_exists(oClient) && global.canConnect){
@@ -310,6 +313,7 @@ if (active) {
op[num_connection].label = connectiontxt;
}
sfx_play(sndMenuSel);
+ event_user(2);
}
if (global.curropt == lastitem) {
save_gameoptions();
@@ -319,7 +323,6 @@ if (active) {
instance_destroy();
sfx_play(sndMenuSel);
}
- event_user(2);
} // if (oControl.kMenu1 && oControl.kMenu1PushedSteps == 0)
/*
@@ -351,7 +354,6 @@ if (active) {
name = keyboard_string;
op[num_name].optext = name;
}
-
} // if (active)
if (targety != y) y += (targety - y) / 10;
timer -= 1;
@@ -523,7 +525,7 @@ switch(showname){
break;
}
-ini_open(working_directory + "\mod settings.ini");
+ini_open(working_directory + "\mod_settings.ini");
ini_write_string("ModSettings", "ipaddress", ip);
ini_write_real("ModSettings", "port", real(port));
ini_write_string("ModSettings", "displayname", name);
@@ -593,7 +595,7 @@ op[50].text = "Multitroid settings";
var tempcount = 1;
-op[num_ip] = instance_create(x, y + sep * tempcount++, oOptionLR);
+op[num_ip] = instance_create(x, y + sep * tempcount++, oOptionLRMod);
op[num_ip].label = "IP Address";
op[num_ip].optionid = num_ip;
@@ -605,11 +607,11 @@ if (global.mod_gamebeaten == 0) {
canedit[num_exmonsters] = 0;
}*/
-op[num_port] = instance_create(x, y + sep * tempcount++, oOptionLR);
+op[num_port] = instance_create(x, y + sep * tempcount++, oOptionLRMod);
op[num_port].label = "Port";
op[num_port].optionid = num_port;
-op[num_name] = instance_create(x, y + sep * tempcount++, oOptionLR);
+op[num_name] = instance_create(x, y + sep * tempcount++, oOptionLRMod);
op[num_name].label = "Display name";
op[num_name].optionid = num_name;
diff --git a/scripts/draw_character_ext.gml b/scripts/draw_character_ext.gml
index 38ff8e17..a2f43307 100644
--- a/scripts/draw_character_ext.gml
+++ b/scripts/draw_character_ext.gml
@@ -23,9 +23,9 @@ if(global.shaders_compiled){
if(global.shaders_compiled){
if(oControl.mod_fusion){
- pal_swap_set(sPalMultitroidFusion, ID, false);
+ pal_swap_set(oControl.MultitroidPaletteFusion, ID, false);
} else {
- pal_swap_set(sPalMultitroidNew, ID, false);
+ pal_swap_set(oControl.MultitroidPalette, ID, false);
}
}
@@ -33,7 +33,7 @@ if(global.shaders_compiled){
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);
if(global.shaders_compiled){
- pal_swap_set(sPalMultitroidNew, ID, false);
+ pal_swap_set(oControl.MultitroidPalette, ID, false);
}
if (argument13 == 1) {
draw_sprite_ext(argument6, argument14, argument1 + argument7, argument2 + argument8, argument10, 1, argument9, argument11, argument12);
diff --git a/scripts/draw_gui.gml b/scripts/draw_gui.gml
index 066c5e1c..88c8721d 100644
--- a/scripts/draw_gui.gml
+++ b/scripts/draw_gui.gml
@@ -256,14 +256,16 @@ if(instance_exists(oClient)){
for(var f=0; f