namespace VPet_Simulator.Windows.Interface { /// <summary> /// 这是插件的主体内容 请继承这个类 /// </summary> public abstract class MainPlugin { /// <summary> /// MOD名称 通过插件名称定位插件, 需和MOD名称一致 /// </summary> public abstract string PluginName { get; } /// <summary> /// 主窗体, 主程序提供的各种功能和设置等 大部分参数和调用均在这里 /// </summary> public IMainWindow MW; /// <summary> /// MOD插件初始化 /// </summary> /// <param name="mainwin">主窗体</param> /// 请不要加载游戏和玩家数据,仅用作初始化 /// 加载数据(CORE)/游戏(SAVE),请使用 LoadPlugin public MainPlugin(IMainWindow mainwin) { //此处主窗体玩家,Core等信息均为空,请不要加载游戏和玩家数据 MW = mainwin; } ///// <summary>//TODO ///// 加载游戏主题 ///// </summary> ///// <param name="theme">主题</param> //public virtual void LoadTheme(Theme theme) { } /// <summary> /// 初始化程序+读取存档 /// </summary> /// 例:添加自己的Tick到 mw.Main.EventTimer /// 例:创建使用UI的桌面控件 public virtual void LoadPlugin() { } /// <summary> /// 游戏结束 (可以保存或清空等,不过保存有专门的Save()) /// </summary> public virtual void EndGame() { } /// <summary> /// 储存游戏 (可以写 GameSave.Other 储存设置和数据等) /// </summary> public virtual void Save() { } /// <summary> /// 打开代码插件设置 /// </summary> public virtual void Setting() { } /// <summary> /// 重载DIY按钮, 如需添加自定义按钮可在此处添加 /// </summary> public virtual void LoadDIY() { } } }