错误mod识别与提醒

This commit is contained in:
ZouJin 2023-08-19 16:27:00 +10:00
parent 477213a110
commit d17dc2c86c
6 changed files with 193 additions and 181 deletions

View File

@ -23,7 +23,7 @@ namespace VPet_Simulator.Windows
var expt = e.Exception.ToString();
if (expt.Contains("value") && expt.Contains("Panuon.WPF.UI.Internal.Utils") && expt.Contains("NaN"))
{
MessageBox.Show(expt, "由于修改游戏数据导致数据溢出,存档可能会出错\n开发者提醒您请不要使用过于超模的MOD".Translate());
MessageBox.Show("由于修改游戏数据导致数据溢出,存档可能会出错\n开发者提醒您请不要使用过于超模的MOD".Translate());
}
string errstr = "游戏发生错误,可能是".Translate() + (string.IsNullOrWhiteSpace(CoreMOD.NowLoading) ?

View File

@ -66,6 +66,8 @@ namespace VPet_Simulator.Windows
}
}
public CoreMOD(DirectoryInfo directory, MainWindow mw)
{
try
{
Path = directory;
LpsDocument modlps = new LpsDocument(File.ReadAllText(directory.FullName + @"\info.lps"));
@ -238,11 +240,9 @@ namespace VPet_Simulator.Windows
}
}
}
catch (Exception Exception)
catch
{
SuccessLoad = false;
string errstr = "MOD加载错误,是MOD({0})导致的\n如有可能请发送 错误信息截图和引发错误之前的操作 给开发者:service@exlb.net\n感谢您对游戏开发的支持\n".Translate() + Exception.ToString();
new winReport(mw, errstr).Show();
}
}
if (authtype != "FAIL")
@ -251,6 +251,12 @@ namespace VPet_Simulator.Windows
}
}
}
catch
{
Tag.Add("该模组已损坏");
SuccessLoad = false;
}
}
public bool IsOnMOD(MainWindow mw) => mw.Set.IsOnMod(Name);
public bool IsPassMOD(MainWindow mw) => mw.Set.IsPassMOD(Name);

View File

@ -28,6 +28,7 @@ using Line = LinePutScript.Line;
using static VPet_Simulator.Core.GraphInfo;
using System.Globalization;
using static System.Windows.Forms.VisualStyles.VisualStyleElement.ToolTip;
using System.Diagnostics.Eventing.Reader;
namespace VPet_Simulator.Windows
{
@ -608,7 +609,9 @@ namespace VPet_Simulator.Windows
//MOD报错
foreach (CoreMOD cm in CoreMODs)
if (!cm.SuccessLoad)
if (Set.IsPassMOD(cm.Name))
if (cm.Tag.Contains("该模组已损坏"))
MessageBoxX.Show("模组 {0} 插件损坏\n虚拟桌宠模拟器未能成功加载该插件\n请联系作者修复该问题".Translate(cm.Name), "{0} 未加载代码插件".Translate(cm.Name));
else if (Set.IsPassMOD(cm.Name))
MessageBoxX.Show("模组 {0} 的代码插件损坏\n虚拟桌宠模拟器未能成功加载该插件\n请联系作者修复该问题".Translate(cm.Name), "{0} 未加载代码插件".Translate(cm.Name));
else if (Set.IsMSGMOD(cm.Name))
MessageBoxX.Show("由于 {0} 包含代码插件\n虚拟桌宠模拟器已自动停止加载该插件\n请手动前往设置允许启用该mod 代码插件".Translate(cm.Name), "{0} 未加载代码插件".Translate(cm.Name));

View File

@ -6,3 +6,4 @@
保存游戏#Save game:|
手动保存桌宠存档,就算不手动保存,桌宠也会在退出的时候自动保存#Manually save the desktop pet archive, even if you do not manually save, the desktop pet will automatically save when you exit.:|
保存成功#Save successfully:|
模组 {0} 插件损坏\n虚拟桌宠模拟器未能成功加载该插件\n请联系作者修复该问题#Module {0} plug-in damage\nVirtual desktop pet simulator failed to load the plug-in\nPlease contact the author to fix the problem.:|

View File

@ -6,3 +6,4 @@
保存游戏#保存游戏:|
手动保存桌宠存档,就算不手动保存,桌宠也会在退出的时候自动保存#手动保存桌宠存档,就算不手动保存,桌宠也会在退出的时候自动保存:|
保存成功#保存成功:|
模组 {0} 插件损坏\n虚拟桌宠模拟器未能成功加载该插件\n请联系作者修复该问题#模组 {0} 插件损坏\n虚拟桌宠模拟器未能成功加载该插件\n请联系作者修复该问题:|

View File

@ -6,3 +6,4 @@
保存游戏#保存遊戲:|
手动保存桌宠存档,就算不手动保存,桌宠也会在退出的时候自动保存#手動保存桌寵存檔,就算不手動保存,桌寵也會在退出的時候自動保存:|
保存成功#保存成功:|
模组 {0} 插件损坏\n虚拟桌宠模拟器未能成功加载该插件\n请联系作者修复该问题#模組 {0} 插件損壞\n虛擬桌寵模擬器未能成功加載該插件\n請聯繫作者修復該問題:|