unity3d 在检查点保存分数

w8f9ii69  于 2023-02-16  发布在  其他
关注(0)|答案(1)|浏览(173)

我在一个3D小轮车侧滚与技巧系统和点。我已经准备好了检查点,当你崩溃,他们工作得很好。我的问题是,当你崩溃你的分数不会回到它是什么,当你第一次通过检查点,这意味着人们可以只是得到一个很高的分数,做了一个真正的大技巧和崩溃一遍又一遍。每个教程,我的意思是每一个都是关于在关卡结束时保存一个高分。下面是相关的脚本

private float flipScore;
private float spinScore;

void FixedUpdate()

if (!IsGrounded())
        
            flipScore += (transform.localEulerAngles.x) * Time.deltaTime * 0.5f;
            spinScore += transform.localEulerAngles.y * Time.deltaTime * 1f;

一个例子,任何人谁需要额外的澄清。你到达第一个检查点与12345点。你做了一些技巧,以获得高达15000,但崩溃之前,下一个检查点,然后你开始回到第一个检查点与12345点。
我已经尝试了几乎所有我在教程中看到的东西,但无济于事。

llycmphe

llycmphe1#

到达检查点时存储点。
重置为检查点时,将分数设置为存储的分数。

private float checkpointSpinScore;
private float checkpointFlipScore;

private void OnCheckpointReached()
{
    checkpointSpinScore = spinScore;
    checkpointFlipScore = flipScore;
}
private void OnResetToCheckpoint()
{
    spinScore = checkpointSpinScore;
    flipScore = checkpointFlipScore;
}

相关问题