簡體   English   中英

如何將c#函數作為參數統一傳遞給UnityScript?

[英]How to passing c# function as a param to UnityScript in unity?

我有一個使用UnityScript的類,如下所示:

public class Responder{
    private var completeHandler:Function;

    public function addHandlers(completeHandler:Function):void {
        completeHandler();
    }
}

現在,我想在C#代碼中使用此類,

public class MyGame : MonoBehaviour{
    void Start(){
        Responder res = new Responder();
        res.addHandlers(?????);   //how to pass the param??
    }
}

謝謝!

將Javascript類放在資產下名為Plugins的文件夾中。 您將能夠從C#腳本調用用JS編寫的方法。

在我看來,JS中的Function類型在C#中為Boo.Lang.ICallable 由於默認情況下我無法導入Boo.Lang,因此我從Unity3D安裝文件夾中Boo.Lang.dll ,並將其復制到項目中的同一Plugins文件夾中,然后using Boo.Lang;進行添加using Boo.Lang; 在我的C#腳本的頂部。

現在,您可以創建一個新的ICallable類型並將其作為參數從C#傳遞給JS。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM