diff --git a/VPet-Simulator.Core/Display/MainDisplay.cs b/VPet-Simulator.Core/Display/MainDisplay.cs
index f9e63f1..36a6189 100644
--- a/VPet-Simulator.Core/Display/MainDisplay.cs
+++ b/VPet-Simulator.Core/Display/MainDisplay.cs
@@ -123,7 +123,7 @@ namespace VPet_Simulator.Core
if (!DisplayStop(EndAction))
EndAction?.Invoke();
}
-
+
///
/// 尝试触发移动
///
@@ -490,6 +490,7 @@ namespace VPet_Simulator.Core
Display(Core.Graph.FindGraph(name, animat, Core.Save.Mode), EndAction);
}
bool petgridcrlf = true;
+ int nodisplayLoop = 0;
///
/// 显示动画 (自动多层切换)
///
@@ -499,9 +500,28 @@ namespace VPet_Simulator.Core
{
if (graph == null)
{
- EndAction?.Invoke();
+ if (nodisplayLoop++ > 20)
+ {//无动画时运行兼容性动画
+ if (nodisplayLoop < 100)
+ Display(GraphType.Default, AnimatType.Single, EndAction);
+ else
+ {//连Nomal都没有, 证明是未完成的动画, 修改设置+退出游戏
+ Dispatcher.Invoke(() =>
+ {
+ LabelDisplay.Content = "未找到可播放动画, 已停止运行桌宠模块".Translate();
+ LabelDisplay.Visibility = Visibility.Visible;
+ IsEnabled = false;
+ });
+ }
+ }
+ else
+ EndAction?.Invoke();
return;
}
+ else
+ {
+ nodisplayLoop = 0;
+ }
//if(graph.GraphType == GraphType.Climb_Up_Left)
//{
// Dispatcher.Invoke(() => Say(graph.GraphType.ToString()));