我正在制作一个带有乐谱文本的游戏,并且想知道如果连续两次发生某种情况,我会如何编写一个脚本,将添加到乐谱中的点加倍?到目前为止,如果玩家在特定区域获得子弹,我有一个加2点而不是1点的区块。代码如下:
if (-0.02f < transform.forward.x && transform.forward.x < 0.03f) {
perfectScoreText.GetComponent<Animator> ().Play ("PerfectHit");
currentScore += 2;
scoreText.text = "" + currentScore;
}
我想知道我是如何将用户完成条件两次/连续三次/等连续添加两倍的代码。
感谢。
答案 0 :(得分:3)
添加一个完美命中的计数器。让我们说perfectHitCounter
。当完美命中时,将此计数器增加1,如果完美命中失败则使此计数器为零。当它达到2时,加上双倍得分并重置计数器,或者如果你的游戏有组合系统,你可以增加计数器,直到你错过了完美的镜头。
伪
我认为你提供的代码是完美命中的地方。
if (-0.02f < transform.forward.x && transform.forward.x < 0.03f) //Perfect Hit
{
//Perfect hit
perfectHitCounter += 1;
//Add normal score if you wish
}
if('not perfect score condition')
{
perfectHitCounter = 0;
}
if(perfectHitCounter >= 2)
{
currentScore += 2;
//perfectHitCounter = 0; //If there is no combo system.
}
希望这会有所帮助。干杯!