我的迷你项目有两个按钮。 A和B。按A时,值开始增加;按B时,值开始减小。我的值从190开始,最大值为200。我还有一个剩余值float。我想要的是,当我按下B按钮并且我的值开始减小时,例如我的值达到120。现在剩余的浮点数将显示出差异,即80(最大值-当前值)。此剩余值显示为UI.Text。例如,当我按下A按钮时,剩余值接近最大值。 79,78,77,76等。但是我想要的是,剩余值应该在UI.text上从0到80而不是80到0显示。我希望您能理解。请帮助我解决此问题。
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class numvalues: MonoBehaviour {
public float current_num = 190f;
public Text current_numtxt;
public float max_num = 200f;
public float remaining_num;
public Text remaining_numtxt;
void Start () {
}
void Update()
{
if (Input.GetKeyDown(KeyCode.W))
current_num -= 10 * Time.deltaTime;
if (Input.GetKeyDown(KeyCode.X))
current_num += 10 * Time.deltaTime;
current_numtxt.text = current_num.ToString ("0");
remaining_num = max_num - current_num;
remaining_numtxt.text = remaining_num.ToString ("0");
}
}
尝试将另一个变量保持为lastSpeed。当您设置模式时,将lastSpeed设置为您所处的速度(在这种情况下为120),并且随着速度的增加,只需执行currentValue-lastSpeed即可。