A.script (JS) :
public static var hello : String = "This is a string";
public var hello2 : String = "This is a 2 string";
public var hello2 : String = "This is a 2 string";
B.script (C#) :
using UnityEngine;
using System.Collections;
using System.Collections;
public class B : MonoBehaviour
{
public GameObject A_OB;
public A A_script;
void Awake()
{
A_script = A_OB.GetComponent<A>();
}
void OnGUI()
{
if(GUILayout.Button("CS Call JS static"))
{
Debug.Log("A" + A.hello);
}
if(GUILayout.Button("CS Call JS public"))
{
Debug.Log("A2" + A_script.hello2);
}
}
}
public GameObject A_OB;
public A A_script;
void Awake()
{
A_script = A_OB.GetComponent<A>();
}
void OnGUI()
{
if(GUILayout.Button("CS Call JS static"))
{
Debug.Log("A" + A.hello);
}
if(GUILayout.Button("CS Call JS public"))
{
Debug.Log("A2" + A_script.hello2);
}
}
}
這里必須要注意的是JS文件必須是在 "Standard Assets"、 "Pro Standard Assets" 和 "Plugins" 這三個目錄中的任何一個里,而CS文件不能與JS文件在一個目錄中。原因是,這三個目錄里的腳本被最先編譯,"Editor"目錄里的稍后編譯,其他的腳本最后編譯。
沒有留言:
張貼留言