适配C2划船机课程和menu
This commit is contained in:
1 parent
e0649f7ea1
commit
06aefb93c4
6 files changed
+162
-77
No files matched your search
@@ -186,6 +186,7 @@ public class RowerHomeScript : PFUIPanel
|
||||
//UIManager.ShowRowerWelldone("81A85D49-ACAA-C764-101A-02555E6AC81A");
|
||||
//return;
|
||||
if (checkRowing()) return;
|
||||
if (C2RowerData.IsEnabled == true && C2RowerData.rowerType != null) return;
|
||||
UIManager.ShowRowerTaskPanel(type=>
|
||||
{
|
||||
rowerType = type;
|
||||
@@ -212,7 +213,17 @@ public class RowerHomeScript : PFUIPanel
|
||||
UIManager.AddEvent(transform.Find("Stopped/Confirm/BtnDrop").gameObject, UnityEngine.EventSystems.EventTriggerType.PointerClick, b =>
|
||||
{
|
||||
transform.Find("Stopped").gameObject.SetActive(false);
|
||||
Init();
|
||||
openTimer = false;
|
||||
isPause = true;
|
||||
if (C2RowerData.IsEnabled == true)
|
||||
{
|
||||
Utils.showToast(null, "Please press Menu to save.",int.MaxValue, stopFunc: () => C2RowerData.isReadyStatus, endCallback: Init);
|
||||
}
|
||||
else
|
||||
{
|
||||
Init();
|
||||
}
|
||||
|
||||
});
|
||||
Init();
|
||||
}
|
||||
@@ -271,8 +282,20 @@ public class RowerHomeScript : PFUIPanel
|
||||
btnStart.GetComponent<Image>().sprite = spriteDict["Start"];
|
||||
btnStart.tag = "Start";
|
||||
transform.Find("Stopped").gameObject.SetActive(false);
|
||||
Save();
|
||||
Init();
|
||||
//Utils.showToast()
|
||||
Action f = () =>
|
||||
{
|
||||
Save();
|
||||
Init();
|
||||
};
|
||||
if (C2RowerData.IsEnabled == true)
|
||||
{
|
||||
Utils.showToast(null, "Please press Menu to save.",int.MaxValue, stopFunc: () => C2RowerData.isReadyStatus, endCallback: f);
|
||||
}
|
||||
else
|
||||
{
|
||||
f.Invoke();
|
||||
}
|
||||
}
|
||||
private IRowerCommonData RowerCommonDataInstance => Rower != null ? (C2RowerData.IsEnabled == true ? (IRowerCommonData)Rower.c2RowerData : (IRowerCommonData)Rower.rowerData) : null;
|
||||
private void HandleStartOrPause()
|
||||
@@ -462,7 +485,7 @@ public class RowerHomeScript : PFUIPanel
|
||||
if (rowerType.type == 1)
|
||||
{
|
||||
bottom.Find("Time/Value").GetComponent<Text>().text = "---";
|
||||
bottom.Find("KM/Value").GetComponent<Text>().text = $"{rowerType.value}M";
|
||||
bottom.Find("KM/Value").GetComponent<Text>().text = $"{rowerType.value}";
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -511,14 +534,18 @@ public class RowerHomeScript : PFUIPanel
|
||||
private void ResChanged(object sender, EventArgs e)
|
||||
{
|
||||
print("收到阻力" + sender);
|
||||
slider.GetComponent<PFUISlider>().SetValue((Convert.ToSingle(sender) - 50) / 300f);
|
||||
if ((Convert.ToSingle(sender) > 50))
|
||||
{
|
||||
slider.GetComponent<PFUISlider>().SetValue((Convert.ToSingle(sender) - 50) / 300f);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public bool checkRowing()
|
||||
{
|
||||
if (seconds > 0)
|
||||
{
|
||||
Utils.showToast(null, "Please end this training.", isLowest: true);
|
||||
Utils.showToast(null, "Please end this training.", isLowest: true, isOnly: true);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
@@ -627,43 +654,17 @@ public class RowerHomeScript : PFUIPanel
|
||||
totalDistance = (uint)distance;
|
||||
|
||||
var pace = RowerData.InstantaneousPace;
|
||||
if (rowerType.type == 2)
|
||||
{
|
||||
var remainTime = rowerType.value - (seconds++);
|
||||
if (remainTime == 0)
|
||||
{
|
||||
records.Add($"{strokeCount},{RowerData.ElapsedTime},{distance},{RowerData.InstantaneousPower},{RowerData.InstantaneousPace},{RowerData.StrokeRate},{RowerData.ResistanceLevel},{heartRate},{energy}");
|
||||
tmpdata = new TempRowerCalc() { strokeCount = strokeCount, pace = pace, power = power, rate = rate, heartRate = heartRate, distance = distance, energy = energy };
|
||||
values.Add(tmpdata);
|
||||
SendDataToRace(tmpdata);
|
||||
HandleSaveDirect();
|
||||
return;
|
||||
}
|
||||
bottom.Find("Time/Value").GetComponent<Text>().text = TimeSpan.FromSeconds(remainTime).ToPFString();
|
||||
}
|
||||
else
|
||||
{
|
||||
bottom.Find("Time/Value").GetComponent<Text>().text = TimeSpan.FromSeconds(seconds++).ToPFString();
|
||||
}
|
||||
if (rowerType.type == 1)
|
||||
{
|
||||
var remainDistance = rowerType.value - totalDistance;
|
||||
if (remainDistance < 0)
|
||||
{
|
||||
records.Add($"{strokeCount},{RowerData.ElapsedTime},{distance},{RowerData.InstantaneousPower},{RowerData.InstantaneousPace},{RowerData.StrokeRate},{RowerData.ResistanceLevel},{heartRate},{energy}");
|
||||
tmpdata = new TempRowerCalc() { strokeCount = strokeCount, pace = pace, power = power, rate = rate, heartRate = heartRate, distance = distance, energy = energy };
|
||||
values.Add(tmpdata);
|
||||
SendDataToRace(tmpdata);
|
||||
HandleSaveDirect();
|
||||
return;
|
||||
}
|
||||
bottom.Find("KM/Value").GetComponent<Text>().text = remainDistance.ToString();
|
||||
}
|
||||
else
|
||||
{
|
||||
bottom.Find("KM/Value").GetComponent<Text>().text = totalDistance.ToString();
|
||||
}
|
||||
if (pace != 0)
|
||||
|
||||
|
||||
mid.Find("W/Value").GetComponent<Text>().text = power.ToString();
|
||||
bottom.Find("500/Value").GetComponent<Text>().text = TimeSpan.FromSeconds(pace).ToPFString();
|
||||
bottom.Find("MS/Value").GetComponent<Text>().text = rate.ToString();
|
||||
left.Find("Times/Value").GetComponent<Text>().text = strokeCount.ToString();
|
||||
left.Find("Calories/Value").GetComponent<Text>().text = energy.ToString();
|
||||
mid.Find("AvgForce/Value").GetComponent<Text>().text = RowerCommonDataInstance.AverageDriveForce.ToString("#0");
|
||||
mid.Find("PeakForce/Value").GetComponent<Text>().text = RowerCommonDataInstance.PeakDriveForce.ToString("#0");
|
||||
|
||||
if (pace != 0)
|
||||
{
|
||||
if (rowerType.type == 1)
|
||||
{
|
||||
@@ -694,28 +695,43 @@ public class RowerHomeScript : PFUIPanel
|
||||
bottom.Find("Expected/Value").GetComponent<Text>().text = $"{dis.ToString("#0")}";
|
||||
}
|
||||
}
|
||||
|
||||
//RowerPanel/Rower/Bottom/Expected/Value
|
||||
|
||||
mid.Find("W/Value").GetComponent<Text>().text = power.ToString();
|
||||
//bottom.Find("W/AvgValue").GetComponent<Text>().text = RowerData.AveragePower.ToString();
|
||||
|
||||
bottom.Find("500/Value").GetComponent<Text>().text = TimeSpan.FromSeconds(pace).ToPFString();
|
||||
//bottom.Find("500/AvgValue").GetComponent<Text>().text = TimeSpan.FromSeconds(RowerData.AveragePace).ToString(@"mm\:ss");
|
||||
|
||||
bottom.Find("MS/Value").GetComponent<Text>().text = rate.ToString();
|
||||
//bottom.Find("MS/AvgValue").GetComponent<Text>().text = RowerData.AverageStrokeRate.ToString();
|
||||
//if (ushort.TryParse(left.Find("Times/Value").GetComponent<Text>().text, out ushort originStroke))
|
||||
//{
|
||||
// if (strokeCount != originStroke)
|
||||
// {
|
||||
// left.Find("Rower").GetComponent<RowerAnimation>().StartAnimation();
|
||||
// }
|
||||
//}
|
||||
left.Find("Times/Value").GetComponent<Text>().text = strokeCount.ToString();
|
||||
left.Find("Calories/Value").GetComponent<Text>().text = energy.ToString();
|
||||
mid.Find("AvgForce/Value").GetComponent<Text>().text = RowerCommonDataInstance.AverageDriveForce.ToString("#0");
|
||||
mid.Find("PeakForce/Value").GetComponent<Text>().text = RowerCommonDataInstance.PeakDriveForce.ToString("#0");
|
||||
if (rowerType.type == 2)
|
||||
{
|
||||
var remainTime = rowerType.value - (seconds++);
|
||||
bottom.Find("Time/Value").GetComponent<Text>().text = TimeSpan.FromSeconds(remainTime).ToPFString();
|
||||
if (remainTime == 0)
|
||||
{
|
||||
records.Add($"{strokeCount},{RowerData.ElapsedTime},{distance},{RowerData.InstantaneousPower},{RowerData.InstantaneousPace},{RowerData.StrokeRate},{RowerData.ResistanceLevel},{heartRate},{energy}");
|
||||
tmpdata = new TempRowerCalc() { strokeCount = strokeCount, pace = pace, power = power, rate = rate, heartRate = heartRate, distance = distance, energy = energy };
|
||||
values.Add(tmpdata);
|
||||
SendDataToRace(tmpdata);
|
||||
HandleSaveDirect();
|
||||
return;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
bottom.Find("Time/Value").GetComponent<Text>().text = TimeSpan.FromSeconds(seconds++).ToPFString();
|
||||
}
|
||||
if (rowerType.type == 1)
|
||||
{
|
||||
var remainDistance = rowerType.value - totalDistance;
|
||||
if (remainDistance < 0)
|
||||
{
|
||||
bottom.Find("KM/Value").GetComponent<Text>().text = "0";
|
||||
records.Add($"{strokeCount},{RowerData.ElapsedTime},{distance},{RowerData.InstantaneousPower},{RowerData.InstantaneousPace},{RowerData.StrokeRate},{RowerData.ResistanceLevel},{heartRate},{energy}");
|
||||
tmpdata = new TempRowerCalc() { strokeCount = strokeCount, pace = pace, power = power, rate = rate, heartRate = heartRate, distance = distance, energy = energy };
|
||||
values.Add(tmpdata);
|
||||
SendDataToRace(tmpdata);
|
||||
HandleSaveDirect();
|
||||
return;
|
||||
}
|
||||
bottom.Find("KM/Value").GetComponent<Text>().text = remainDistance.ToString();
|
||||
}
|
||||
else
|
||||
{
|
||||
bottom.Find("KM/Value").GetComponent<Text>().text = totalDistance.ToString();
|
||||
}
|
||||
records.Add($"{strokeCount},{RowerData.ElapsedTime},{distance},{RowerData.InstantaneousPower},{RowerData.InstantaneousPace},{RowerData.StrokeRate},{RowerData.ResistanceLevel},{heartRate},{energy}");
|
||||
tmpdata = new TempRowerCalc() { strokeCount = strokeCount, pace = pace, power = power, rate = rate, heartRate = heartRate, distance = distance, energy = energy };
|
||||
values.Add(tmpdata);
|
||||
@@ -748,7 +764,7 @@ public class RowerHomeScript : PFUIPanel
|
||||
#if !UNITY_EDITOR
|
||||
if (!openTimer)
|
||||
{
|
||||
if (y > 0)
|
||||
if (y > 0 && !isPause)
|
||||
{
|
||||
//RowerCommonDataInstance.PullChanged -= PaintPullCurve;
|
||||
//RowerCommonDataInstance.PullChanged += PaintPullCurve;
|
||||
@@ -852,5 +868,13 @@ public class RowerHomeScript : PFUIPanel
|
||||
transform.Find("Ready/Text").gameObject.SetActive(flag);
|
||||
transform.Find("Ready/DeviceStatusConnect").gameObject.SetActive(flag);
|
||||
}
|
||||
if (Rower != null)
|
||||
{
|
||||
if (C2RowerData.IsEnabled == true && !openTimer && !isPause && C2RowerData.rowerType!=null)
|
||||
{
|
||||
rowerType = C2RowerData.rowerType;
|
||||
HandleSelectType();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user