<undefined> 0 0 0 -1 <undefined> <undefined> 1 603 7 0 0 -1 2 self 0 0 1 network_set_config(network_config_connect_timeout, 5000); strict_init("dictionary.json"); canSend = false; connected = false; queenHealthWait = false; queenDead = false; seed = undefined; var type; type = network_socket_tcp; var file = file_text_open_read(working_directory + "\ipaddress.txt"); ipaddress = file_text_read_string(file); file_text_close(file); port = 64198; socket = network_create_socket(type); isConnected = network_connect(socket, ipaddress, port); var size, type, alignment; size = 1024; type = buffer_grow; alignment = 1; buffer = buffer_create(size, type, alignment); global.queenhealthPrev = 600; global.queenphasePrev = 0; global.clientID = 0; global.packetID = 0; global.receivedPacketID = 0; global.onlineList = ds_grid_create(3, 35); global.onlineSend = ds_grid_create(3, 35); global.onlineReceived = ds_grid_create(3, 35); global.storedBuffers = ds_grid_create(2, 1); global.receivedPacketIDs = ds_list_create(); ds_grid_clear(global.onlineSend, -1); ds_grid_clear(global.onlineReceived, -1); for(var i=0; i<ds_grid_height(global.onlineList); i++){ ds_grid_set(global.onlineList, 2, i, i); } update_variables("initprev"); update_variables("onlinevars"); 1 603 7 0 0 -1 2 self 0 0 1 network_destroy(socket); buffer_delete(buffer); ds_grid_destroy(global.onlineList); ds_grid_destroy(global.onlineSend); ds_grid_destroy(global.onlineReceived); ds_grid_destroy(global.storedBuffers); ds_list_destroy(global.receivedPacketIDs); if(connected){ popup_text("Disconnected"); } 1 603 7 0 0 -1 2 self 0 0 1 if(queenHealthResetQueued){ if(!is_undefined(oQueenHead.myhealth) && !is_undefined(oQueen.phase)){ oQueenHead.myhealth = queenHealth; oQueen.phase = phase; if(state == 100){ oQueen.state = state; oQueen.statetime = 0; } queenHealthResetQueued = false; } alarm[1] = 5; } 1 603 7 0 0 -1 2 self 0 0 1 update_variables("onlinevars"); for(var i=0; i<ds_grid_height(global.onlineList); i++){ if(global.onlineList[# 0, i] != global.onlineList[# 1, i] && i != 0 && i != 1 && i != 3){ global.onlineSend[# 0, i] = global.onlineList[# 0, i]; global.onlineSend[# 1, i] = global.onlineList[# 1, i]; global.onlineSend[# 2, i] = global.onlineList[# 2, i]; show_debug_message(string(global.onlineSend[# 0, i]) + " " + string(global.onlineSend[# 1, i]) + " " + string(global.onlineSend[# 2, 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){ buffer_delete(buffer); var size, type, alignment; size = 1024; type = buffer_grow; alignment = 1; buffer = buffer_create(size, type, alignment); buffer_seek(buffer, buffer_seek_start, 0); buffer_write(buffer, buffer_u8, 0); buffer_write(buffer, buffer_string, strict_compress(ds_grid_write(global.onlineSend))); buffer_write(buffer, buffer_u8, global.clientID); buffer_write(buffer, buffer_u32, global.packetID); global.storedBuffers[# 0, global.packetID] = global.onlineSend; global.storedBuffers[# 1, global.packetID] = global.clientID; var result = network_send_packet(socket, buffer, buffer_tell(buffer)); show_debug_message("packetID = " + string(global.packetID)); global.packetID++; ds_grid_resize(global.storedBuffers, 2, global.packetID + 1); ds_grid_clear(global.onlineSend, -1); } if(!canSend){ alarm[0] = 30; } if(canSend){ canSend = false; alarm[0] = 75; } check_areaclear(); if(global.playerhealth <= 0){ if(oCharacter.state != oCharacter.DEFEATED){ oCharacter.alarm[0] = 6; oCharacter.state = oCharacter.DEFEATED; } } if(!is_undefined(oQueenHead.myhealth) && !is_undefined(oQueen.phase)){ if(global.queenhealthPrev != oQueenHead.myhealth){ show_debug_message("queen health sent " + string(oQueenHead.myhealth)); var size, type, alignment; size = 1024; type = buffer_grow; alignment = 1; buffer = buffer_create(size, type, alignment); buffer_seek(buffer, buffer_seek_start, 0); buffer_write(buffer, buffer_u8, 2); buffer_write(buffer, buffer_s16, oQueenHead.myhealth); buffer_write(buffer, buffer_u8, global.clientID); buffer_write(buffer, buffer_s8, oQueen.phase); buffer_write(buffer, buffer_s8, oQueen.state); var result = network_send_packet(socket, buffer, buffer_tell(buffer)); } } 1 603 7 0 0 -1 2 self 0 0 1 if(!connected){ if(isConnected >= 0){ connected = true; popup_text("Connected"); buffer_delete(buffer); var size, type, alignment; size = 1024; type = buffer_grow; alignment = 1; buffer = buffer_create(size, type, alignment); buffer_seek(buffer, buffer_seek_start, 0); buffer_write(buffer, buffer_u8, 1); var result = network_send_packet(socket, buffer, buffer_tell(buffer)); alarm[0] = 5; } else { instance_destroy(); popup_text("Failed to connect"); } } if(!is_undefined(oQueen.phase)){ if(oQueen.phase >= 1 && instance_exists(inst_146524)){ event_perform_object(oQueenFireball, ev_other, ev_user1); } if(oQueen.phase >= 2 && instance_exists(inst_146525) && instance_exists(inst_146520)){ event_perform_object(oQueenFireball, ev_other, ev_user2); } if(oQueen.phase >= 3 && instance_exists(inst_146526) && instance_exists(inst_146514)){ event_perform_object(oQueenFireball, ev_other, ev_user3); } if((oQueen.phase >= 4 || oQueen.phase == 5) && instance_exists(inst_146527)){ event_perform_object(oQueenFireball, ev_other, ev_user4); } if(global.event[303] > 0 && !queenDead){ with(oQueen){ height_target_front = 10; height_target_back = 10; head_obj.push = 0; head_obj.canhit = 0; head_obj.state = 100; head_obj.statetime = 0; leg1f_obj.canhit = 0; leg1b_obj.canhit = 0; head_target_x = x + neck_x + 40; head_target_y = y + neck_y + 5; alarm[9] = 1; alarm[10] = 300; head_obj.alarm[9] = 1; head_obj.alarm[10] = 280; canhit = 0; mus_fadeout(musQueen); mus_fadeout(musQueen3); oMusicV2.bossbgm = sndJump; sfx_play(sndQueenDeath); } queenDead = true; } } if(keyboard_check_pressed(vk_f2)){ instance_destroy(); } /* if(keyboard_check_pressed(vk_f3)){ var f = 0; repeat(41){ global.metdead[f] = 1; f++; } } */ 1 603 7 0 0 -1 2 self 0 0 1 var type_event = ds_map_find_value(async_load, "type"); switch(type_event){ case network_type_data: var _buffer = ds_map_find_value(async_load, "buffer"); show_debug_message(buffer_get_size(_buffer)); buffer_seek(_buffer, buffer_seek_start, 0); msgid = buffer_read(_buffer, buffer_u8); switch(msgid){ case 0: global.clientID = buffer_read(_buffer, buffer_u8); break; case 1: ds_grid_read(global.onlineReceived, strict_decompress(buffer_read(_buffer, buffer_string))); global.receivedClientID = buffer_read(_buffer, buffer_u8); if(global.receivedClientID == global.clientID){ global.receivedPacketIDs[| global.receivedPacketID] = buffer_read(_buffer, buffer_u32); } global.receivedPacketID++; if(global.receivedClientID != global.clientID){ update_variables("disablesame"); update_variables("replaceglobalvars"); update_variables("updateprev"); alarm[0] = 30; ds_grid_clear(global.onlineReceived, -1); } break; case 2: ds_grid_read(global.onlineReceived, strict_decompress(buffer_read(_buffer, buffer_string))); global.receivedClientID = buffer_read(_buffer, buffer_u8); update_variables("disablesame"); update_variables("updateprev"); global.itemChanges = 0; global.metdeadChanges = 0; global.eventChanges = 0; alarm[0] = 30; ds_grid_clear(global.onlineReceived, -1); break; case 3: queenHealth = buffer_read(_buffer, buffer_s16); var clientID = buffer_read(_buffer, buffer_u8); phase = buffer_read(_buffer, buffer_s8); state = buffer_read(_buffer, buffer_s8); if(clientID != global.clientID){ if(!is_undefined(oQueenHead.myhealth) && !is_undefined(oQueen.phase)){ if(oQueen.phase == phase){ if(global.queenhealthPrev != queenHealth){ global.queenhealthPrev = queenHealth; oQueenHead.myhealth = queenHealth; } } if(global.queenphasePrev != phase){ global.queenphasePrev = phase; } } else if(is_undefined(oQueenHead.myhealth) && is_undefined(oQueen.phase)){ queenHealthResetQueued = true; alarm[1] = 5; } } else { if(!is_undefined(oQueenHead.myhealth) && !is_undefined(oQueen.phase)){ if(oQueen.phase == phase){ if(global.queenhealthPrev != queenHealth){ global.queenhealthPrev = queenHealth; oQueenHead.myhealth = queenHealth; } } if(global.queenphasePrev != phase){ global.queenphasePrev = phase; } } } break; case 4: var _seed = buffer_read(_buffer, buffer_f64); var clientID = buffer_read(_buffer, buffer_u8); if(clientID != global.clientID){ if(seed != _seed){ seed = _seed; show_debug_message("seed received"); popup_text("Seed received"); } } break; } } 1 603 7 0 0 -1 2 self 0 0 1 network_destroy(socket); buffer_delete(buffer); ds_grid_destroy(global.onlineList); ds_grid_destroy(global.onlineSend); ds_grid_destroy(global.onlineReceived); ds_grid_destroy(global.storedBuffers); ds_list_destroy(global.receivedPacketIDs); 0 0 0 0.5 0.100000001490116 0 0.100000001490116 0.100000001490116 0.200000002980232 -1 0