Files

44 lines
1.1 KiB
C#

using Godot;
using System;
public partial class Mods : Control {
GlobalManager global = GlobalManager.Instance;
ItemList modsItemList = null!;
public override void _Ready() {
// TODO
modsItemList = GetNode<ItemList>("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<string>("mods_fpath") ?? "user://mods";
OS.ShellOpen(ProjectSettings.GlobalizePath(path));
}
public void OnBack() {
ArgumentNullException.ThrowIfNull(global);
global.GotoScene("res://Main.tscn");
}
}