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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

檢測/處理來自一個腳本或未附加到碰撞游戲?qū)ο蟮哪_本的所有碰撞

檢測/處理來自一個腳本或未附加到碰撞游戲?qū)ο蟮哪_本的所有碰撞

C#
LEATH 2022-01-16 14:33:49
我想控制玩家和道具之間的觸發(fā)器。我可以創(chuàng)建一個游戲?qū)ο蟛⒏郊右粋€腳本來控制所有觸發(fā)事件,而不是為每個對象創(chuàng)建一個腳本嗎?喜歡void OnTriggerEnter2D(Collider2D collision){    switch(collision.gameObject.tag){        case "Move+":            FindObjectOfType<CreatePlayer>().movesRemain += 5;            break;    }}但這樣做時,玩家必須觸發(fā)包含腳本的游戲?qū)ο蟆?
查看完整描述

1 回答

?
紅顏莎娜

TA貢獻1842條經(jīng)驗 獲得超13個贊

我可以創(chuàng)建一個游戲?qū)ο蟛⒏郊右粋€腳本來控制所有觸發(fā)事件,而不是為每個對象創(chuàng)建一個腳本嗎?


為了OnTriggerEnter2D被調(diào)用,包含它的腳本必須附加到將涉及碰撞的游戲?qū)ο?。如果不這樣做,它將不會被調(diào)用。


如果您需要一個通用腳本來處理所有碰撞檢測,則必須使用事件和委托來執(zhí)行此操作。創(chuàng)建一個delegate命名CollisionAction然后從該delegate命名的事件OnTriggered。當(dāng)OnTriggerEnter2D被調(diào)用時,調(diào)用該OnTriggered事件。將它附加到您想要檢測碰撞的所有游戲?qū)ο笊稀?/p>


public class CollisionCallback : MonoBehaviour

{

    public delegate void CollisionAction(Collider2D collision);

    public static event CollisionAction OnTriggered;


    void OnTriggerEnter2D(Collider2D collision)

    {

        if (OnTriggered != null)

            OnTriggered(collision);

    }

}

現(xiàn)在,在要用于處理碰撞的主腳本上,在函數(shù)中注冊O(shè)nTriggered事件并在OnEnable函數(shù)中取消注冊O(shè)nDisable。在腳本OnTriggerEnter2D中調(diào)用時,將調(diào)用 中注冊CollisionCallbackMainScript的函數(shù)。附加到一個空的游戲?qū)ο螅?/p>


public class MainScript : MonoBehaviour

{

    void OnEnable()

    {

        //Register to OnTriggered event

        CollisionCallback.OnTriggered += TriggerDetected;

    }



    void OnDisable()

    {

        //Un-Register to OnTriggered event

        CollisionCallback.OnTriggered -= TriggerDetected;

    }



    //This is invoked when trigger happens

    void TriggerDetected(Collider2D collision)

    {

        Debug.Log("Trigger happened with: " + collision.name);

    }

}


查看完整回答
反對 回復(fù) 2022-01-16
  • 1 回答
  • 0 關(guān)注
  • 157 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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