diff --git a/VPet-Simulator.Core/Display/MainLogic.cs b/VPet-Simulator.Core/Display/MainLogic.cs
index 3a1676d..bd2ef16 100644
--- a/VPet-Simulator.Core/Display/MainLogic.cs
+++ b/VPet-Simulator.Core/Display/MainLogic.cs
@@ -55,7 +55,16 @@ namespace VPet_Simulator.Core
{
Display(GraphCore.Helper.Convert(type, GraphCore.Helper.AnimatType.B_Loop), () => Saying(type));
}
+ int lowstrengthAskCount = 1;
+ private void lowStrengthFood()//未来的Display
+ {
+ if (Function.Rnd.Next(lowstrengthAskCount--) == 0)
+ {
+ Say("肚子饿了,想吃东西", GraphCore.Helper.SayType.Serious);//TODO:饥饿动画//TODO:不同的饥饿说话方式
+ lowstrengthAskCount = 15;
+ }
+ }
///
/// 根据消耗计算相关数据
///
@@ -69,28 +78,110 @@ namespace VPet_Simulator.Core
//睡觉消耗
if (Core.Save.StrengthFood >= 25)
{
- Core.Save.StrengthChange(TimePass * 2);
+ Core.Save.StrengthChange(TimePass * 4);
if (Core.Save.StrengthFood >= 75)
- Core.Save.Health += TimePass / 2;
+ Core.Save.Health += TimePass * 2;
}
+ else
+ lowStrengthFood();
+ Core.Save.StrengthChangeFood(-TimePass);
break;
case WorkingState.WorkONE:
- case WorkingState.WorkTWO:
- case WorkingState.Study:
+ //工作
+ if (Core.Save.StrengthFood <= 25)
+ {
+ if (Core.Save.Strength >= TimePass)
+ {
+ Core.Save.StrengthChange(-TimePass);
+ }
+ else
+ {
+ Core.Save.Health -= TimePass;
+ }
+ lowStrengthFood();
+ var addmoney = TimePass * 10;
+ Core.Save.Money += addmoney;
+ WorkTimer.GetCount += addmoney;
+ }
+ else
+ {
+ Core.Save.StrengthChange(TimePass);
+ if (Core.Save.StrengthFood >= 75)
+ Core.Save.Health += TimePass;
+ var addmoney = TimePass * 20;
+ Core.Save.Money += addmoney;
+ WorkTimer.GetCount += addmoney;
+ }
+ Core.Save.StrengthChangeFood(-TimePass * 3);
+ break;
+ case WorkingState.WorkTWO:
+ //工作2 更加消耗体力
+ if (Core.Save.StrengthFood <= 25)
+ {
+ if (Core.Save.Strength >= TimePass * 2)
+ {
+ Core.Save.StrengthChange(-TimePass * 2);
+ }
+ else
+ {
+ Core.Save.Health -= TimePass;
+ }
+ lowStrengthFood();
+ var addmoney = TimePass * 20;
+ Core.Save.Money += addmoney;
+ WorkTimer.GetCount += addmoney;
+ }
+ else
+ {
+ if (Core.Save.StrengthFood >= 75)
+ Core.Save.Health += TimePass;
+ var addmoney = TimePass * 50;
+ Core.Save.Money += addmoney;
+ WorkTimer.GetCount += addmoney;
+ }
+ Core.Save.StrengthChangeFood(-TimePass * 5);
+ break;
+ case WorkingState.Study:
+ //学习
+ if (Core.Save.StrengthFood <= 25)
+ {
+ if (Core.Save.Strength >= TimePass)
+ {
+ Core.Save.StrengthChange(-TimePass);
+ }
+ else
+ {
+ Core.Save.Health -= TimePass;
+ }
+ lowStrengthFood();
+ var addmoney = TimePass * 12;
+ Core.Save.Exp += addmoney;
+ WorkTimer.GetCount += addmoney;
+ }
+ else
+ {
+ Core.Save.StrengthChange(TimePass);
+ if (Core.Save.StrengthFood >= 75)
+ Core.Save.Health += TimePass;
+ var addmoney = TimePass * 25;
+ Core.Save.Exp += addmoney;
+ WorkTimer.GetCount += addmoney;
+ }
+ Core.Save.StrengthChangeFood(-TimePass * 3);
break;
- //工作/娱乐等消耗
default://默认
//饮食等乱七八糟的消耗
if (Core.Save.StrengthFood >= 50)
{
- Core.Save.StrengthChange(TimePass);
+ Core.Save.StrengthChange(TimePass * 2);
if (Core.Save.StrengthFood >= 75)
- Core.Save.Health += Function.Rnd.Next(0, 1) * TimePass;
+ Core.Save.Health += Function.Rnd.Next(0, 2) * TimePass;
}
else if (Core.Save.StrengthFood <= 25)
{
Core.Save.Health -= Function.Rnd.Next(0, 1) * TimePass;
}
+ Core.Save.StrengthChangeFood(-TimePass * 2);
break;
}
@@ -99,7 +190,7 @@ namespace VPet_Simulator.Core
//{
// Core.GameSave.Health -= Function.Rnd.Next(0, 1);
//}
- Core.Save.StrengthChangeFood(-TimePass);
+ Core.Save.Exp += TimePass;
//感受提升好感度
if (Core.Save.Feeling >= 75)
{
@@ -107,7 +198,7 @@ namespace VPet_Simulator.Core
{
Core.Save.Likability += TimePass;
}
- Core.Save.Exp += TimePass;
+ Core.Save.Exp += TimePass * 2;
Core.Save.Health += TimePass;
}
else if (Core.Save.Feeling <= 25)
@@ -125,6 +216,11 @@ namespace VPet_Simulator.Core
{
//TODO:切换显示动画
Core.Save.Mode = newmod;
+ //TODO:看情况播放停止工作动画
+ if (newmod == GameSave.ModeType.Ill && (State != WorkingState.Nomal || State != WorkingState.Sleep))
+ {
+ WorkTimer.Stop();
+ }
}
}
@@ -135,7 +231,7 @@ namespace VPet_Simulator.Core
if (Core.Controller.EnableFunction)
{
- FunctionSpend(0.015);
+ FunctionSpend(0.1);
}
else
{
diff --git a/VPet-Simulator.Core/Display/WorkTimer.xaml.cs b/VPet-Simulator.Core/Display/WorkTimer.xaml.cs
index dcd2f1d..302b70f 100644
--- a/VPet-Simulator.Core/Display/WorkTimer.xaml.cs
+++ b/VPet-Simulator.Core/Display/WorkTimer.xaml.cs
@@ -41,7 +41,7 @@ namespace VPet_Simulator.Core
///
/// 累计获得的钱/经验值
///
- public int GetCount;
+ public double GetCount;
///
/// 开始时间
///
@@ -78,7 +78,7 @@ namespace VPet_Simulator.Core
case 1:
ShowTimeSpan(tleft); break;
case 2:
- tNumber.Text = GetCount.ToString();
+ tNumber.Text = GetCount.ToString("f0");
switch (m.State)
{
case Main.WorkingState.Study: