diff --git a/VPet-Simulator.Core/Display/Main.xaml b/VPet-Simulator.Core/Display/Main.xaml
index d4e54cb..1ad9889 100644
--- a/VPet-Simulator.Core/Display/Main.xaml
+++ b/VPet-Simulator.Core/Display/Main.xaml
@@ -1,15 +1,17 @@
 <pu:ContentControlX x:Class="VPet_Simulator.Core.Main" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
-        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:pu="clr-namespace:Panuon.WPF.UI;assembly=Panuon.WPF.UI"
+        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+        xmlns:pu="clr-namespace:Panuon.WPF.UI;assembly=Panuon.WPF.UI"
         xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
         xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:local="clr-namespace:VPet_Simulator.Core"
         mc:Ignorable="d" d:DesignHeight="250" d:DesignWidth="250">
     <Viewbox>
-        <Grid x:Name="MainGrid" Width="500" Height="500" MouseLeftButtonDown="MainGrid_MouseLeftButtonDown" x:FieldModifier="public"
-                MouseLeftButtonUp="MainGrid_MouseLeftButtonUp" MouseRightButtonDown="MainGrid_MouseRightButtonDown" MouseMove="MainGrid_MouseWave">
-            <Grid x:Name="UIGrid_Back" x:FieldModifier="public"/>
+        <Grid x:Name="MainGrid" Width="500" Height="500" MouseLeftButtonDown="MainGrid_MouseLeftButtonDown"
+                x:FieldModifier="public" MouseLeftButtonUp="MainGrid_MouseLeftButtonUp"
+                MouseRightButtonDown="MainGrid_MouseRightButtonDown" MouseMove="MainGrid_MouseWave">
+            <Grid x:Name="UIGrid_Back" x:FieldModifier="public" />
             <Border x:Name="PetGrid" VerticalAlignment="Bottom" />
             <Border x:Name="PetGrid2" VerticalAlignment="Bottom" />
-            <Grid x:Name="UIGrid" x:FieldModifier="public"/>
+            <Grid x:Name="UIGrid" x:FieldModifier="public" />
         </Grid>
     </Viewbox>
 </pu:ContentControlX>
diff --git a/VPet-Simulator.Core/Display/MessageBar.xaml.cs b/VPet-Simulator.Core/Display/MessageBar.xaml.cs
index ded6b25..8652741 100644
--- a/VPet-Simulator.Core/Display/MessageBar.xaml.cs
+++ b/VPet-Simulator.Core/Display/MessageBar.xaml.cs
@@ -91,8 +91,7 @@ namespace VPet_Simulator.Core
         {
             if (m.UIGrid.Children.IndexOf(this) != m.UIGrid.Children.Count - 1)
             {
-                m.UIGrid.Children.Remove(this);
-                m.UIGrid.Children.Add(this);
+                Panel.SetZIndex(this, m.UIGrid.Children.Count);             
             }
             TText.Text = "";
             outputtext = text.ToList();
diff --git a/VPet-Simulator.Core/Display/ToolBar.xaml.cs b/VPet-Simulator.Core/Display/ToolBar.xaml.cs
index a86f42c..96bfa22 100644
--- a/VPet-Simulator.Core/Display/ToolBar.xaml.cs
+++ b/VPet-Simulator.Core/Display/ToolBar.xaml.cs
@@ -103,8 +103,7 @@ namespace VPet_Simulator.Core
         {
             if (m.UIGrid.Children.IndexOf(this) != m.UIGrid.Children.Count - 1)
             {
-                m.UIGrid.Children.Remove(this);
-                m.UIGrid.Children.Add(this);
+                Panel.SetZIndex(this, m.UIGrid.Children.Count);
             }
             Visibility = Visibility.Visible;
             if (CloseTimer.Enabled)
diff --git a/VPet-Simulator.Windows/MainWindow.xaml.cs b/VPet-Simulator.Windows/MainWindow.xaml.cs
index 4656fd1..78aaa47 100644
--- a/VPet-Simulator.Windows/MainWindow.xaml.cs
+++ b/VPet-Simulator.Windows/MainWindow.xaml.cs
@@ -182,6 +182,9 @@ namespace VPet_Simulator.Windows
                 Dispatcher.Invoke(new Action(() => LoadingText.Content = $"尝试加载 MOD数据: {di.Name}"));
                 CoreMODs.Add(new CoreMOD(di, this));
             }
+            foreach (CoreMOD cm in CoreMODs)
+                if (!cm.SuccessLoad)
+                    MessageBoxX.Show($"由于 {cm.Name} 包含代码插件\n虚拟桌宠模拟器已自动停止加载该插件\n请手动前往设置允许启用该mod 代码插件", $"{cm.Name} 未加载代码插件");
             Dispatcher.Invoke(new Action(() => LoadingText.Content = "尝试加载游戏存档"));
 
             //加载游戏内容
diff --git a/VPet-Simulator.Windows/WinDesign/winGameSetting.xaml b/VPet-Simulator.Windows/WinDesign/winGameSetting.xaml
index 889f276..6b74e04 100644
--- a/VPet-Simulator.Windows/WinDesign/winGameSetting.xaml
+++ b/VPet-Simulator.Windows/WinDesign/winGameSetting.xaml
@@ -555,7 +555,7 @@
                                             Foreground="{DynamicResource DARKPrimary}" BorderThickness="2" />
                                 <TextBlock x:Name="ButtonSetting" HorizontalAlignment="Left" Margin="0,2,0,0"
                                             TextWrapping="Wrap" Text="MOD设置" VerticalAlignment="Top" FontSize="14"
-                                             Foreground="DimGray" TextDecorations="Underline" Cursor="Hand" MouseDown="ButtonSetting_MouseDown"
+                                            Foreground="{DynamicResource DARKPrimaryDarker}" TextDecorations="Underline" Cursor="Hand" MouseDown="ButtonSetting_MouseDown"
                                               />
                                 <Button x:Name="ButtonAllow" Content="启用代码插件" HorizontalAlignment="Left"
                                             VerticalAlignment="Top" Background="#FFFF2C2C" Foreground="White"
diff --git a/VPet-Simulator.Windows/WinDesign/winGameSetting.xaml.cs b/VPet-Simulator.Windows/WinDesign/winGameSetting.xaml.cs
index b8ebe24..cd377e5 100644
--- a/VPet-Simulator.Windows/WinDesign/winGameSetting.xaml.cs
+++ b/VPet-Simulator.Windows/WinDesign/winGameSetting.xaml.cs
@@ -20,6 +20,7 @@ using System.Windows.Media.Imaging;
 using System.Windows.Navigation;
 using System.Windows.Shapes;
 using VPet_Simulator.Core;
+using VPet_Simulator.Windows.Interface;
 
 namespace VPet_Simulator.Windows
 {
@@ -267,6 +268,17 @@ namespace VPet_Simulator.Windows
 
             ButtonAllow.Visibility = mod.SuccessLoad ? Visibility.Collapsed : Visibility.Visible;
             ButtonSetting.Visibility = ButtonAllow.Visibility;
+
+            
+            foreach (var mainplug in mw.Plugins)
+            {
+                if (mainplug.PluginName == mod.Name)
+                {
+                    ButtonSetting.Visibility = Visibility.Visible;
+                    return;
+                }
+            }
+            ButtonSetting.Visibility = Visibility.Collapsed;
         }
         private void FullScreenBox_Check(object sender, RoutedEventArgs e)
         {
@@ -738,7 +750,14 @@ namespace VPet_Simulator.Windows
 
         private void ButtonSetting_MouseDown(object sender, MouseButtonEventArgs e)
         {
-
+            foreach(var mainplug in mw.Plugins)
+            {
+                if(mainplug.PluginName == mod.Name)
+                {
+                    mainplug.Setting();
+                    return; 
+                }
+            }
         }
 
         private void StartPlace_Checked(object sender, RoutedEventArgs e)
diff --git a/VPet-Simulator.Windows/mod/1100_DemoClock b/VPet-Simulator.Windows/mod/1100_DemoClock
new file mode 120000
index 0000000..2fc72b6
--- /dev/null
+++ b/VPet-Simulator.Windows/mod/1100_DemoClock
@@ -0,0 +1 @@
+C:/Users/ZouJin/Documents/Visual Studio 2022/Project/VPet.Plugin.DemoClock/VPet.Plugin.DemoClock/1100_DemoClock
\ No newline at end of file