From 1f71afaf4e1f6f0cdb72ebcca646c6b330a60a5b Mon Sep 17 00:00:00 2001 From: Will Berry <73126355+wdberry@users.noreply.github.com> Date: Thu, 23 Mar 2023 10:51:34 -0400 Subject: [PATCH] addresses bug report (experimental) Non-recoverable error clearing network filter in GUI, reset_player crash on loading save --- cybersyn/scripts/gui/main.lua | 10 ++++++++++ cybersyn/scripts/migrations.lua | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/cybersyn/scripts/gui/main.lua b/cybersyn/scripts/gui/main.lua index e7826d0..76305de 100644 --- a/cybersyn/scripts/gui/main.lua +++ b/cybersyn/scripts/gui/main.lua @@ -165,4 +165,14 @@ function manager_gui.tick(global) end end +---@param i string|uint +---@param v LuaPlayer +function manager_gui.reset_player(i, v) + local player = game.get_player(i) + if player ~= nil then + v.refs.manager_window.destroy() + v.refs = manager.create(player) + end +end + return manager_gui diff --git a/cybersyn/scripts/migrations.lua b/cybersyn/scripts/migrations.lua index 3fe4897..e6292de 100644 --- a/cybersyn/scripts/migrations.lua +++ b/cybersyn/scripts/migrations.lua @@ -321,7 +321,7 @@ local migrations_table = { ---@param data ConfigurationChangedData function on_config_changed(data) - for i, v in pairs(game.players) do + for i, v in pairs(global.manager.players) do manager_gui.reset_player(i, v) end global.tick_state = STATE_INIT