|
|
@@ -271,7 +271,7 @@ namespace PunkHPX8_RT.Modules.PlatingCell
|
|
|
DATA.Subscribe($"{Module}.FsmState", () => ((PlatingCellState)fsm.State).ToString(), SubscriptionAttribute.FLAG.IgnoreSaveDB);
|
|
|
DATA.Subscribe($"{Module}.CurrentRecipe", () => _currentRecipe != null ? _currentRecipe.Ppid : "", SubscriptionAttribute.FLAG.IgnoreSaveDB);
|
|
|
DATA.Subscribe($"{Module}.TotalTime", () => _recipeTime, SubscriptionAttribute.FLAG.IgnoreSaveDB);
|
|
|
- DATA.Subscribe($"{Module}.TimeRemain", () => _recipeTime != 0 && _runRecipeRoutine != null ? (_recipeTime - Math.Round((double)_runRecipeRoutine.ElapsedMilliseconds / 1000, 0)) : 0, SubscriptionAttribute.FLAG.IgnoreSaveDB);
|
|
|
+ DATA.Subscribe($"{Module}.TimeRemain", () => CalculateRecipeTimeRemain(), SubscriptionAttribute.FLAG.IgnoreSaveDB);
|
|
|
DATA.Subscribe($"{Module}.Chemistry", () => Chemistry, SubscriptionAttribute.FLAG.IgnoreSaveDB);
|
|
|
DATA.Subscribe($"{Module}.AchievedCycle", () => AchievedCycle, SubscriptionAttribute.FLAG.IgnoreSaveDB);
|
|
|
|
|
|
@@ -360,6 +360,28 @@ namespace PunkHPX8_RT.Modules.PlatingCell
|
|
|
EnumLoop<PlatingCellState>.ForEach((item) => { fsm.MapMessage((int)item, item.ToString()); });
|
|
|
}
|
|
|
/// <summary>
|
|
|
+ /// 计算recipe的剩余时间
|
|
|
+ /// </summary>
|
|
|
+ /// <returns></returns>
|
|
|
+ private int CalculateRecipeTimeRemain()
|
|
|
+ {
|
|
|
+ if (!IsInRecipe)
|
|
|
+ {
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+ int remainTime = 0;
|
|
|
+ if(_recipeTime != 0 && !_isCurrentRunDummyRecipe)
|
|
|
+ {
|
|
|
+ remainTime = (int)(_recipeTime - Math.Round((double)_runRecipeRoutine.ElapsedMilliseconds / 1000));
|
|
|
+ }
|
|
|
+ if (_recipeTime != 0 && _isCurrentRunDummyRecipe)
|
|
|
+ {
|
|
|
+ remainTime = (int)(_recipeTime - Math.Round((double)_dummyRinseRunRecipeRoutine.ElapsedMilliseconds / 1000));
|
|
|
+ }
|
|
|
+ return remainTime;
|
|
|
+
|
|
|
+ }
|
|
|
+ /// <summary>
|
|
|
/// Abort Recipe
|
|
|
/// </summary>
|
|
|
/// <param name="param"></param>
|
|
|
@@ -569,7 +591,7 @@ namespace PunkHPX8_RT.Modules.PlatingCell
|
|
|
if (result)
|
|
|
{
|
|
|
_recipeTime = recipe.CalculateRecipeTotalTime() * _cycle;
|
|
|
- //run dummy recipe不需要纪律当前recipe
|
|
|
+ //run dummy recipe不需要记录当前recipe
|
|
|
}
|
|
|
return result;
|
|
|
}
|