Unity3D中的js调用js
在Unity3D中的js文件如何调用另一个js文件的方法。
当前unity软件的版本号为4.3.4f1
具体示例如下: 2个js文件,分别是 js001.js和js002.js
js001.js的代码
(第1种调用方法)代码如下:
#pragma strict var mSpeed = 50; function Start () { } function Update () { //js002为js002.js的文件名,不要写文件名后缀 var mControl:js002 = gameObject.GetComponent("js002"); if(Input.GetKey(KeyCode.W)){ mControl.GForward(); } if(Input.GetKey(KeyCode.Q)){ mControl.leftRotate(Vector3.up*Time.deltaTime*mSpeed*(-1)); } }
js001.js的代码
(第2种调用方法)代码如下:
#pragma strict var mSpeed = 50; function Start () { } function Update () { //js002为js002.js的文件名,不要写文件名后缀 var mControl = GetComponent(js002); if(Input.GetKey(KeyCode.W)){ mControl.GForward(); } if(Input.GetKey(KeyCode.Q)){ mControl.leftRotate(Vector3.up*Time.deltaTime*mSpeed*(-1)); } }
js001.js的代码
(第3种调用方法)代码如下:
#pragma strict var mSpeed = 50; var mControl : js002; function Start () { } function Update () { //js002为js002.js的文件名,不要写文件名后缀 mControl = GetComponent(js002); if(Input.GetKey(KeyCode.W)){ mControl.GForward(); } if(Input.GetKey(KeyCode.Q)){ mControl.leftRotate(Vector3.up*Time.deltaTime*mSpeed*(-1)); } }
js002.js的代码如下:
#pragma strict //speed var mSpeed = 50; function Start () { } function Update () { } //go forward function GForward(){ transform.Translate(Vector3.forward*Time.deltaTime*mSpeed); } //right rotate function leftRotate(mSpeed){ transform.Rotate(mSpeed); }
像上面例子中的代码,这样js001.js就可以调用js002.js文件中的方法了。