From 68404927ac94da1e443a8bf9ed1731c211d308dd Mon Sep 17 00:00:00 2001 From: Gerkiz Date: Fri, 8 Apr 2022 16:11:06 +0200 Subject: [PATCH] fix collapse and shuffle the zones more --- maps/mountain_fortress_v3/breached_wall.lua | 4 ++++ maps/mountain_fortress_v3/terrain.lua | 19 ++++++++++++++++--- 2 files changed, 20 insertions(+), 3 deletions(-) diff --git a/maps/mountain_fortress_v3/breached_wall.lua b/maps/mountain_fortress_v3/breached_wall.lua index 0e39d38e..5e88e035 100644 --- a/maps/mountain_fortress_v3/breached_wall.lua +++ b/maps/mountain_fortress_v3/breached_wall.lua @@ -276,6 +276,10 @@ local function distance(player) Task.set_timeout_in_ticks(550, collapse_message, data) end + if Collapse.start_now() then + clear_breach_text_and_render() + end + RPG.set_value_to_player(index, 'bonus', bonus + 1) RPG.gain_xp(player, bonus_xp_on_join * bonus) diff --git a/maps/mountain_fortress_v3/terrain.lua b/maps/mountain_fortress_v3/terrain.lua index c2bb0fc6..ad0cf790 100644 --- a/maps/mountain_fortress_v3/terrain.lua +++ b/maps/mountain_fortress_v3/terrain.lua @@ -341,7 +341,7 @@ local function wall(p, data) force = 'player', callback = stone_wall } - if not alert_zone_1 then + if not alert_zone_1 and data.y >= -zone_settings.zone_depth then local x_min = -zone_settings.zone_width / 2 local x_max = zone_settings.zone_width / 2 WPT.set('zone1_beam1', surface.create_entity({name = 'electric-beam', position = {x_min, p.y}, source = {x_min, p.y}, target = {x_max, p.y}})) @@ -2568,8 +2568,21 @@ local function init_terrain(adjusted_zones) count = count + 1 end - adjusted_zones.size = count - adjusted_zones.shuffled_zones = shuffled_zones + count = count - 1 + + local shuffle_again = {} + + local size = 132 + + for inc = 1, size do + local map = shuffled_zones[random(1, count)] + if map then + shuffle_again[inc] = map + end + end + + adjusted_zones.size = size + adjusted_zones.shuffled_zones = shuffle_again adjusted_zones.init_terrain = true end