From e9333b3c6c84ffe4cec8986e408c1a8a77726094 Mon Sep 17 00:00:00 2001 From: ZouJin Date: Fri, 25 Aug 2023 06:22:09 +1000 Subject: [PATCH] =?UTF-8?q?=E8=B6=85=E6=A8=A1=E9=A3=9F=E7=89=A9/=E7=89=A9?= =?UTF-8?q?=E5=93=81=E6=A3=80=E6=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- VPet-Simulator.Windows.Interface/Mod/Food.cs | 8 ++++++-- VPet-Simulator.Windows/MainWindow.cs | 4 ++-- VPet-Simulator.Windows/WinDesign/winBetterBuy.xaml.cs | 11 +++++++++++ 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/VPet-Simulator.Windows.Interface/Mod/Food.cs b/VPet-Simulator.Windows.Interface/Mod/Food.cs index b1b0266..f940166 100644 --- a/VPet-Simulator.Windows.Interface/Mod/Food.cs +++ b/VPet-Simulator.Windows.Interface/Mod/Food.cs @@ -151,14 +151,18 @@ namespace VPet_Simulator.Windows.Interface public string Image; private bool? isoverload = null; /// + /// 当前物品推荐价格 + /// + public double RealPrice => ((Exp / 4 + Strength / 5 + StrengthDrink / 3 + StrengthFood / 2 + Feeling / 6) / 3 + Health + Likability * 10); + /// /// 该食物是否超模 /// public bool IsOverLoad() { if (isoverload == null) { - double realp = ((Exp / 4 + Strength / 5 + StrengthDrink / 3 + StrengthFood / 2 + Feeling / 6) / 3 + Health + Likability * 5); - isoverload = Price > realp * 1.3 || Price < realp * 0.7;//30%容错 + double relp = RealPrice; + isoverload = Price > (relp + 10) * 1.3;// || Price < (relp - 10) * 0.7;//30%容错 } return isoverload.Value; } diff --git a/VPet-Simulator.Windows/MainWindow.cs b/VPet-Simulator.Windows/MainWindow.cs index d6e8c46..802e500 100644 --- a/VPet-Simulator.Windows/MainWindow.cs +++ b/VPet-Simulator.Windows/MainWindow.cs @@ -257,7 +257,7 @@ namespace VPet_Simulator.Windows if (food.Count == 0) return; var item = food[Function.Rnd.Next(food.Count)]; - Core.Save.Money -= item.Price * 1.2; + Core.Save.Money -= item.Price * 0.2; TakeItem(item); Main.Display(GraphType.Eat, item.ImageSource, Main.DisplayToNomal); } @@ -267,7 +267,7 @@ namespace VPet_Simulator.Windows if (food.Count == 0) return; var item = food[Function.Rnd.Next(food.Count)]; - Core.Save.Money -= item.Price * 1.2; + Core.Save.Money -= item.Price * 0.2; TakeItem(item); Main.Display(GraphType.Drink, item.ImageSource, Main.DisplayToNomal); } diff --git a/VPet-Simulator.Windows/WinDesign/winBetterBuy.xaml.cs b/VPet-Simulator.Windows/WinDesign/winBetterBuy.xaml.cs index 6e8bc26..0ea1d47 100644 --- a/VPet-Simulator.Windows/WinDesign/winBetterBuy.xaml.cs +++ b/VPet-Simulator.Windows/WinDesign/winBetterBuy.xaml.cs @@ -208,6 +208,17 @@ namespace VPet_Simulator.Windows , "金钱不足".Translate()); return; } + //看看是否超模 + if (mw.HashCheck && item.IsOverLoad()) + { + if (MessageBoxX.Show("当前食物/物品属性超模,是否继续使用?\n使用超模食物可能会导致游戏发生不可预料的错误\n使用超模食物不影响大部分成就解锁\n本物品推荐价格为{0:f0}" + .Translate(item.RealPrice), "超模食物/物品使用提醒".Translate(), MessageBoxButton.YesNo) != MessageBoxResult.Yes) + { + return; + } + mw.HashCheck = false; + } + mw.TakeItem(item); } if (showeatanm)