1
0
mirror of https://github.com/ComfyFactory/ComfyFactorio.git synced 2025-02-09 13:37:02 +02:00
This commit is contained in:
MewMew 2019-10-22 10:18:28 +02:00
parent 8de20e2bd5
commit e7d18d09d6
3 changed files with 3 additions and 44 deletions

View File

@ -4,7 +4,6 @@
--require "modules.biter_noms_you"
require "modules.biter_evasion_hp_increaser"
require "modules.wave_defense.main"
--require "modules.dense_rocks"
require "functions.soft_reset"
require "functions.basic_markets"
require "modules.biters_yield_coins"

View File

@ -41,8 +41,6 @@ end
local function on_init()
game.surfaces[1].request_to_generate_chunks({0,0}, 16)
game.surfaces[1].force_generate_chunk_requests()
global.wave_defense.next_wave = 3600 * 15
end
local event = require 'utils.event'

View File

@ -1,5 +1,6 @@
require "modules.wave_defense.biter_rolls"
require "modules.wave_defense.threat_events"
local update_gui = require "modules.wave_defense.gui"
local threat_values = require "modules.wave_defense.threat_values"
local math_random = math.random
local side_target_types = {"accumulator", "assembling-machine", "beacon", "boiler", "container", "electric-pole", "furnace", "lamp", "lab",
@ -191,6 +192,8 @@ end
local function spawn_attack_groups()
debug_print("spawn_attack_groups")
if not global.wave_defense.target then return end
if not global.wave_defense.target.valid then return end
if global.wave_defense.active_biter_count >= global.wave_defense.max_active_biters then return false end
if global.wave_defense.threat <= 0 then return false end
wave_defense_set_unit_raffle(global.wave_defense.wave_number)
@ -330,47 +333,6 @@ local function give_commands_to_unit_groups()
end
end
local function create_gui(player)
local frame = player.gui.top.add({ type = "frame", name = "wave_defense"})
frame.style.maximal_height = 38
local label = frame.add({ type = "label", caption = " ", name = "label"})
label.style.font_color = {r=0.88, g=0.88, b=0.88}
label.style.font = "default-bold"
label.style.left_padding = 4
label.style.right_padding = 4
label.style.minimal_width = 68
label.style.font_color = {r=0.33, g=0.66, b=0.9}
local progressbar = frame.add({ type = "progressbar", name = "progressbar", value = 0})
progressbar.style.minimal_width = 128
progressbar.style.maximal_width = 128
progressbar.style.top_padding = 10
local line = frame.add({type = "line", direction = "vertical"})
line.style.left_padding = 4
line.style.right_padding = 4
local label = frame.add({ type = "label", caption = " ", name = "threat", tooltip = "high threat may empower biters"})
label.style.font_color = {r=0.88, g=0.88, b=0.88}
label.style.font = "default-bold"
label.style.left_padding = 4
label.style.right_padding = 4
label.style.minimal_width = 10
label.style.font_color = {r=0.99, g=0.0, b=0.5}
end
local function update_gui(player)
if not player.gui.top.wave_defense then create_gui(player) end
player.gui.top.wave_defense.label.caption = "Wave: " .. global.wave_defense.wave_number
if global.wave_defense.wave_number == 0 then player.gui.top.wave_defense.label.caption = "First wave in " .. math.floor((global.wave_defense.next_wave - game.tick) / 60) + 1 end
local interval = global.wave_defense.next_wave - global.wave_defense.last_wave
player.gui.top.wave_defense.progressbar.value = 1 - (global.wave_defense.next_wave - game.tick) / interval
local value = global.wave_defense.threat
if value < 0 then value = 0 end
player.gui.top.wave_defense.threat.caption = "Threat: " .. value
end
local tick_tasks = {
[30] = set_main_target,
[60] = set_enemy_evolution,