/*! * Copyright (c) 2020 Aleksej Komarov * SPDX-License-Identifier: MIT */ /client/var/datum/tgui_panel/tgui_panel /** * tgui panel / chat troubleshooting verb */ GAME_VERB(/client, fix_tgui_panel, "Fix chat", "OOC") var/action log_tgui(src, "Started fixing.", context = "verb/fix_tgui_panel") nuke_chat() // Failed to fix, using tg_alert as fallback action = tg_alert(src, "Did that work?", "", "Yes", "No, switch to old ui") if (action == "No, switch to old ui") winset(src, OUTPUT_SELECTOR_LEGACY_OUTPUT_SELECTOR, "left=output_legacy") log_tgui(src, "Failed to fix.", context = "verb/fix_tgui_panel") /client/proc/nuke_chat() // Catch all solution (kick the whole thing in the pants) winset(src, OUTPUT_SELECTOR_LEGACY_OUTPUT_SELECTOR, "left=output_legacy") if(!tgui_panel || !istype(tgui_panel)) log_tgui(src, "tgui_panel datum is missing", context = "verb/fix_tgui_panel") tgui_panel = new(src) tgui_panel.initialize(force = TRUE) // Force show the panel to see if there are any errors winset(src, OUTPUT_SELECTOR_LEGACY_OUTPUT_SELECTOR, "left=output_browser") GAME_VERB(/client, refresh_tgui, "Refresh TGUI", "OOC") for(var/window_id in tgui_windows) var/datum/tgui_window/window = tgui_windows[window_id] window.reinitialize()