第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

分?jǐn)?shù)系統(tǒng)中的點(diǎn)組合乘數(shù)

分?jǐn)?shù)系統(tǒng)中的點(diǎn)組合乘數(shù)

C#
青春有我 2022-07-23 17:35:54
我對(duì)編程很陌生,目前正在使用 c# 在 Unity 上開發(fā)一個(gè)無(wú)盡的運(yùn)行游戲。我堅(jiān)持讓我的評(píng)分系統(tǒng)正常工作。玩家根據(jù)行駛距離收集分?jǐn)?shù)。所以在管理分?jǐn)?shù)的腳本中,Update()我有:distance += Vector2.Distance(Player.transform.position, lastPosition);lastPosition = Player.transform.position;baseScore = distance;  這很好用。在這個(gè)游戲中,你會(huì)因?yàn)樵谝欢ň嚯x內(nèi)沒有撞到障礙物而獲得獎(jiǎng)勵(lì),所以在玩家控制器腳本中我寫了:public void Update(){    distanceTraveled += Vector2.Distance(transform.position, lastPosition);    lastPosition = transform.position;    if (distanceTraveled >= 10)    {        NoHitCombo = NoHitCombo + 2;        distanceTraveled = 0;    }    [...]  }和public void OnTriggerEnter2D(Collider2D other)if (other.gameObject.tag == "Obstacle"){    NoHitCombo = 0;    distanceTraveled = 0;}因此,如果我沒有擊中任何東西,我的得分增益,而 NoHitCombo > 0 應(yīng)該是 *2、*4、*6 等。例如:在開始時(shí),我正在獲得距離作為得分。雖然 NoHitCombo 為 2,但我想計(jì)算一個(gè)新值,即"Distance since NoHitCombo value has changed * NoHitCombo". 如果它的 4 我想要另一個(gè)值來(lái)計(jì)算距離 * 4 等等。我試著像這樣寫smt Update():Finalscore = baseScore * NoHitCombo; 但這不起作用,因?yàn)槲业姆謹(jǐn)?shù)隨著 NoHitCombo 值的變化而變化。我嘗試了一些東西,if (nohitcombo > 0)但沒有按預(yù)期工作。我想我錯(cuò)過(guò)了一些東西來(lái)完成這個(gè)謎題,我嘗試的一切都是錯(cuò)誤的。我想不出解決這個(gè)問題。我可能確實(shí)需要在乘數(shù)處于活動(dòng)狀態(tài)時(shí)存儲(chǔ)行駛距離的值,并且一旦它發(fā)生變化,它應(yīng)該將該值添加到分?jǐn)?shù)中任何幫助將不勝感激 ps 英語(yǔ)不是我的母語(yǔ),對(duì)此感到抱歉!
查看完整描述

1 回答

?
瀟瀟雨雨

TA貢獻(xiàn)1833條經(jīng)驗(yàn) 獲得超4個(gè)贊

如何重新使用您已經(jīng)獲得的“自上一幀以來(lái)的距離”值


private void Update()

{

    var distanceSinceLastFrame = Vector2.Distance(transform.position, lastPosition);

    lastPosition = transform.position;


    // ...


    distanceTraveled += distanceSinceLastFrame;

    if (distanceTraveled >= 10)

    {

        NoHitCombo = NoHitCombo + 2;

        distanceTraveled = 0;

    }


    // ...


                                           // if NoHitCombo is 0 use 1 instead

    FinalScore += distanceSinceLastFrame * NoHitCombo == 0 ? 1 : NoHitCombo;

}

因此,不要總是將 設(shè)置FinalScore為固定計(jì)算值,而是將其添加distanceSinceLastFrame * NoHitCombo到當(dāng)前值。


查看完整回答
反對(duì) 回復(fù) 2022-07-23
  • 1 回答
  • 0 關(guān)注
  • 92 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)