Skip to content

Commit

Permalink
Patch
Browse files Browse the repository at this point in the history
SalticHash committed Sep 7, 2024
1 parent 53cf9ba commit 8618e56
Showing 13 changed files with 2,342 additions and 4,318 deletions.
2 changes: 1 addition & 1 deletion obj_debugcontroller/room_start.gml
Original file line number Diff line number Diff line change
@@ -8,7 +8,7 @@ if DEBUG
{
if (visible != 1 || variable_instance_exists(id, "toggle"))
{
if (object_index == obj_doorA || object_index == obj_doorB || object_index == obj_doorC || object_index == obj_doorD || object_index == obj_doorE || object_index == obj_doorF || object_index == obj_doorG || object_index == obj_solid || object_index == obj_secretblock || object_index == obj_secretbigblock || object_index == obj_secretmetalblock || object_index == obj_slope || object_index == obj_platform || object_index == obj_ladder || object_index == obj_hallway || object_index == obj_tvtrigger || object_index == obj_supriseenemyarea || object_index == obj_hiddenobjecttrigger || object_index == obj_secretroomtrigger || object_index == obj_iceblock || object_index == obj_iceblockslope || object_index == obj_mach3solid || object_index == obj_unclimbablewall || object_index == obj_pineapplemonsterzone || object_index == obj_frontcanongoblin_trigger || object_index == obj_moving_hstop || object_index == obj_moving_vstop || object_index == obj_warp_number || object_index == obj_verticalhallway || object_index == obj_tubeleft || object_index == obj_tuberight || object_index == obj_tubedown || object_index == obj_tubeup || object_index == obj_horseyleft || object_index == obj_horseyright || object_index == obj_horseydown || object_index == obj_horseyup || object_index == obj_racestart || object_index == obj_raceend || object_index == obj_lightsource || object_index == obj_chateaulight || object_index == obj_vigilantespot || object_index == obj_fakepepsolid || object_index == obj_tutorialtrap || object_index == obj_conveyordespawner || object_index == obj_arenalimit || object_index == obj_pizzaarrowtrap || object_index == obj_grindrail || object_index == obj_grindrailslope)
if (object_index == obj_doorA || object_index == obj_doorB || object_index == obj_doorC || object_index == obj_doorD || object_index == obj_doorE || object_index == obj_doorF || object_index == obj_doorG || object_index == obj_solid || object_index == obj_secretblock || object_index == obj_secretbigblock || object_index == obj_secretmetalblock || object_index == obj_slope || object_index == obj_platform || object_index == obj_ladder || object_index == obj_hallway || object_index == obj_tvtrigger || object_index == obj_supriseenemyarea || object_index == obj_hiddenobjecttrigger || object_index == obj_secretroomtrigger || object_index == obj_iceblock || object_index == obj_iceblockslope || object_index == obj_mach3solid || object_index == obj_unclimbablewall || object_index == obj_pineapplemonsterzone || object_index == obj_frontcanongoblin_trigger || object_index == obj_moving_hstop || object_index == obj_moving_vstop || object_index == obj_warp_number || object_index == obj_verticalhallway || object_index == obj_tubeleft || object_index == obj_tuberight || object_index == obj_tubedown || object_index == obj_tubeup || object_index == obj_horseyleft || object_index == obj_horseyright || object_index == obj_horseydown || object_index == obj_horseyup || object_index == obj_racestart || object_index == obj_raceend || object_index == obj_lightsource || object_index == obj_chateaulight || object_index == obj_vigilantespot || object_index == obj_fakepepsolid || object_index == obj_tutorialtrap || object_index == obj_conveyordespawner || object_index == obj_arenalimit || object_index == obj_pizzaarrowtrap || object_index == obj_grindrail || object_index == obj_grindrailslope || object_index == obj_ballslope || object_index == obj_ballslopeOLD)
{
visible = other.showcollisions
variable_instance_set(id, "toggle", 1)
23 changes: 0 additions & 23 deletions obj_debugcontroller/room_startNew.gml

This file was deleted.

145 changes: 92 additions & 53 deletions obj_levelLoader/create.gml
Original file line number Diff line number Diff line change
@@ -1,86 +1,94 @@
data = global.roomData


varInsts = [] // NEW: just this one line is NEW.


var prop = data.properties
if is_undefined(data)
return;

varInsts = [] // New

roomInsts = []
respawnOnLap2 = struct_new()
layerForce = []
var insts = struct_get(data, "instances")
for (var i = 0; i < array_length(data.instances); i++)
{
var insts = struct_get(data, "instances")
insData = insts[i]
levelInst = global.currentRoom + "_" + string(i)
levelInst = gml_Script_instanceManager_getKey(i)
if (!insData.deleted)
{
var l = _stGet("insData.layer")
gml_Script_layerConfirm("Instances", l)


// NEW: Dont worry about objects moving in the json cuz they can now use names!
var jsonObjectId = _stGet("insData.object")
if (typeof(jsonObjectId) == "string")
jsonObjectId = asset_get_index(jsonObjectId)
var objIndex = _stGet("insData.object")
if (typeof(objIndex) == "string")
objIndex = asset_get_index(objIndex)
// NEW: End of NEW.


var ins = instance_create_layer((_stGet("insData.variables.x") - _stGet("data.properties.roomX")), (_stGet("insData.variables.y") - _stGet("data.properties.roomY")), layer_get_id(gml_Script_layerFormat("Instances", l)), jsonObjectId)
gml_Script_instanceManager_checkAndSwitch(i, ins)
ins.flipX = 0
ins.flipY = 0
ins.targetRoom = "main"
var varNames = variable_struct_get_names(struct_get(insData, "variables"))
for (var j = 0; j < array_length(varNames); j++)
{
if (varNames[j] != "x" && varNames[j] != "y")
variable_instance_set(ins, varNames[j], gml_Script_varValue_ressolve(struct_get(struct_get(insData, "variables"), varNames[j]), gml_Script_varName_getType(varNames[j])))
}
ins.instID = i
if (!(variable_instance_exists(ins, "escape")))
ins.escape = 0
if variable_instance_exists(ins, "useLayerDepth")
array_push(layerForce, [ins, layer_get_id(gml_Script_layerFormat("Instances", l))])
array_push(roomInsts, [ins.id, i, ins.object_index, ins.escape])
if (ins.escape || gml_Script_array_value_exists(struct_get(global.objectData, "respawnOnLap2"), object_get_name(ins.object_index)))
struct_set(respawnOnLap2, [[string(i), "true"]])
if ins.flipX
{
var horDifference = sprite_get_width(ins.sprite_index) - sprite_get_xoffset(ins.sprite_index) * 2
ins.x += (horDifference * ins.image_xscale)
ins.image_xscale *= -1
}
if ins.flipY
{
var verDifference = sprite_get_height(ins.sprite_index) - sprite_get_yoffset(ins.sprite_index) * 2
ins.y += (verDifference * ins.image_yscale)
ins.image_yscale *= -1
}

// NEW: All variable basis
var varNames = variable_struct_get_names(struct_get(insData, "variables"))
for (var j = 0; j < array_length(varNames); j++)
if (objIndex >= obj_noisecredit)
{
if is_variable_param(varNames[j])
var ins = instance_create_layer((_stGet("insData.variables.x") - _stGet("data.properties.roomX")), (_stGet("insData.variables.y") - _stGet("data.properties.roomY")), layer_get_id(gml_Script_layerFormat("Instances", l)), objIndex)
if instance_exists(ins)
{
var val = gml_Script_varValue_ressolve(struct_get(struct_get(insData, "variables"), varNames[j]))
array_push(varInsts, [is_start_variable_param(varNames[j]), ins.id, varNames[j], val])
gml_Script_instanceManager_checkAndSwitch(levelInst, ins)
ins.flipX = 0
ins.flipY = 0
ins.targetRoom = "main"
var varNames = variable_struct_get_names(struct_get(insData, "variables"))
for (var j = 0; j < array_length(varNames); j++)
{
if (varNames[j] != "x" && varNames[j] != "y")
variable_instance_set(ins, varNames[j], gml_Script_varValue_ressolve(struct_get(struct_get(insData, "variables"), varNames[j]), gml_Script_varName_getType(varNames[j])))
}
ins.instID = i
if (!(variable_instance_exists(ins, "escape")))
ins.escape = 0
if variable_instance_exists(ins, "useLayerDepth")
array_push(layerForce, [ins, layer_get_id(gml_Script_layerFormat("Instances", l))])
array_push(roomInsts, [ins.id, i, ins.object_index, ins.escape])
if (ins.escape || gml_Script_array_value_exists(struct_get(global.objectData, "respawnOnLap2"), object_get_name(ins.object_index)))
struct_set(respawnOnLap2, [[string(i), "true"]])
if ins.flipX
{
var horDifference = sprite_get_width(ins.sprite_index) - sprite_get_xoffset(ins.sprite_index) * 2
ins.x += (horDifference * ins.image_xscale)
ins.image_xscale *= -1
}
if ins.flipY
{
var verDifference = sprite_get_height(ins.sprite_index) - sprite_get_yoffset(ins.sprite_index) * 2
ins.y += (verDifference * ins.image_yscale)
ins.image_yscale *= -1
}

// NEW: All variable basis
var varNames = variable_struct_get_names(struct_get(insData, "variables"))
for (var j = 0; j < array_length(varNames); j++)
{
if is_variable_param(varNames[j])
{
var val = gml_Script_varValue_ressolve(struct_get(struct_get(insData, "variables"), varNames[j]))
array_push(varInsts, [is_start_variable_param(varNames[j]), ins.id, varNames[j], val])
}
}
// NEW: end of NEW.
}
}
// NEW: end of NEW.
}
}

var tileLayers = variable_struct_get_names(_stGet("data.tile_data"))
for (i = 0; i < array_length(tileLayers); i++)
initTileLayer(int64(tileLayers[i]), 1)
var bgLayers = variable_struct_get_names(_stGet("data.backgrounds"))
for (i = 0; i < array_length(bgLayers); i++)
initBGLayer(global.roomData, int64(bgLayers[i]))
if (prop.song != "" && ((!global.panic) || obj_player.replacemusic == 0))
var levelData = level_load(global.levelName)
if (prop.song != "" && ((!global.panic) || global.insecret || levelData.escapeSong == "false") && prop.song != obj_customAudio.levelSongPlaying)
{
with (obj_customAudio)
levelSongPlaying = prop.song
customSong_switch(prop.song, prop.songTransitionTime)
}
if variable_struct_exists(prop, "pausecombo")
{
if (prop.pausecombo != undefined)
@@ -97,11 +105,42 @@ if (global.fromEditor || global.fromMenu)
{
if global.fromEditor
backtohubroom = rmEditor
targetDoor = "A"
targetDoor = global.startingDoor
if instance_exists(obj_exitgate)
state = states.comingoutdoor
else
state = states.normal
if (global.doPanic == "True")
{
global.panic = 1
var d = level_load(global.levelName)
global.minutes = floor(d.escape / 60)
global.seconds = d.escape % 60
global.fill = d.escape * 60 * 0.2
with (obj_tv)
chunkmax = global.fill
}
if (global.setSupertaunt == "True")
supercharged = true
movespeed = real(global.startPlayerSpeed)
if (movespeed < 0)
{
xscale = (-xscale)
movespeed = (-movespeed)
}
if (movespeed != 0)
{
if (movespeed <= 12)
{
sprite_index = spr_mach
state = states.mach2
}
else
{
sprite_index = spr_mach4
state = states.mach3
}
}
}
global.fromEditor = 0
global.fromMenu = 0
155 changes: 0 additions & 155 deletions obj_levelLoader/createNew.gml

This file was deleted.

Loading

0 comments on commit 8618e56

Please sign in to comment.