dev: 更新代码,并准备LuaMod

This commit is contained in:
ZZY
2025-06-14 14:38:28 +08:00
parent 3fa39fc71e
commit 13450ea09a
20 changed files with 486 additions and 397 deletions

View File

@ -3,24 +3,37 @@ using System;
public partial class Mods : Control {
GlobalManager global = GlobalManager.Instance;
public override void _Ready() {
// RunDemo();
ItemList modsItemList = null!;
// ModManager modManager = new();
// modManager.RegistryFunc("OnInit", () => { GD.Print("OnInit"); }, true);
// modManager.RegistryFunc("foo", () => { GD.Print("Hello"); });
// LuaMod mod = new(ProjectSettings.GlobalizePath("res://Protos/test.lua"));
// mod.BindFunc(modManager);
// try {
// modManager.InvokeFunc<Action>("OnInit");
// }
// catch (System.Exception e) {
// GD.PrintErr("OnInit error: ", e.Message, e.StackTrace);
// }
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() {
OS.ShellOpen(global.ConfigManager.GetValue<string>("mods_fpath") ?? "user://Mods/");
string path = global.ConfigManager.GetValue<string>("mods_fpath") ?? "user://mods";
OS.ShellOpen(ProjectSettings.GlobalizePath(path));
}
public void OnBack() {