Unity中CS脚本于JS脚本交互

来源:互联网 发布:网络分销商管理制度 编辑:程序博客网 时间:2024/05/16 14:06

这里需要注意的是被调用的脚本必须放在 "Standard Assets"、 "Pro Standard Assets" "Plugins" 这三个文件夹中的任何一个里,而调用它的脚本不能在一个目录文件夹中,否则无法编译通过,原因是Unity会最先编译这三个文件夹,“Editor”目录里的脚本稍后编译,其他的脚本最后编译(既 CS调用JSCS脚本放在其他文件家中,JS脚本要放在 如上三个文件夹中先编译;JS调用CSJS脚本放在其他文件夹中,CS脚本要放在如上三个文件夹中先编译)


一、CS调用JS脚本

     JsMM.js

    //JsMM脚本中的方法    function spoken()    {        print("js  js   js   js  js ");    }

Test.cs 脚本

public class Test : MonoBehaviour {    void OnGUI()    {        if (GUI.Button(new Rect(50, 150, 100, 50), "diaoyong JS"))        {            //获取 JsMM脚本            JsMM js = (JsMM)GetComponent<JsMM>();            //调用 js脚本中的方法            js.spoken();        }    }}


将 JsMM.js和 Test.cs都挂在一个物体上,运行即可



二、JS调用CS


    CsMM.cs 脚本


using UnityEngine;using System.Collections;public class CsMM : MonoBehaviour {    public void AAA()    {        Debug.Log("aaaaaaa");    }}



JsCode.js


//#pragma strictfunction OnGUI(){    if (GUI.Button(new Rect(50, 300, 100, 50), " JS  DIAO YONG cs")){        var csMMScript = gameObject.GetComponent("CsMM");        csMMScript.AAA();    }}


运行即可


注意在JS脚本中注释   //#pragma strict   不然会报错 找不到 CS脚本中的方法






0 0
原创粉丝点击