停止降低玩家在相反方向移动时的距离值?
我有一个玩家在碰到平台时跳跃。有点像涂鸦跳。得分基于在y轴上行进的距离。问题是,当玩家跳起来时,距离值(分数)增加,但是当玩家返回平台时,距离值减小,因此分数也减小。我想阻止分数下降。这里的脚本:停止降低玩家在相反方向移动时的距离值?
public GameObject player; float beginPos;
float curPos;
public int Multiplier;
void Start() {
beginPos = player.transform.position.y;
}
void Update() {
curPos = player.transform.position.y - beginPos;
int Distance = Mathf.RoundToInt(curPos * Multiplier);
Debug.log(Distance);
}
回答:
设定的最高高度只有更新的分数,如果你去过去达成的最大高度。
float beginPos; float curPos;
public int Multiplier;
float maxHeight;
void Start() {
beginPos = player.transform.position.y;
maxHeight = beginPos;
}
void Update() {
curPos = player.transform.position.y - beginPos;
if(curPos > maxHeight)
{
int Distance = Mathf.RoundToInt(curPos* Multiplier);
maxHeight = curPos;
Debug.log(Distance);
}
}
回答:
void Update() { curPos = player.transform.position.y - beginPos;
if (curPos > 0) {
distance = Mathf.RoundToInt(curPos * Multiplier);
}
}
以上是 停止降低玩家在相反方向移动时的距离值? 的全部内容, 来源链接: utcz.com/qa/266469.html