using Godot; using System; public partial class Mods : Control { GlobalManager global = GlobalManager.Instance; ItemList modsItemList = null!; public override void _Ready() { // TODO modsItemList = GetNode("VBoxContainer/VScrollBar/ItemList"); FlushModState(); } private void FlushModState() { modsItemList.Clear(); foreach (var mod in global.Mods.ModList) { var item = modsItemList.AddItem(mod.Key); } } private void OnEnableMods(bool enable) { if (enable) { global.Mods.LoadAllMods(); } else { global.Mods.ClearAllMods(); } } private void OnReSearchMods() { global.Mods.SearchAllMods(true); } public void OnOpenModFileDir() { string path = global.ConfigManager.GetValue("mods_fpath") ?? "user://mods"; OS.ShellOpen(ProjectSettings.GlobalizePath(path)); } public void OnBack() { ArgumentNullException.ThrowIfNull(global); global.GotoScene("res://Main.tscn"); } }