unity调用脚本
Ⅰ Unity3D如何正确调用与修改另一个脚本中的全局变量(在碰撞检测中)
voidOnCollisionEnter2D(Collision2Dcol)///Collision2Dco1碰撞的那个碰撞物体信息
{
varyk=col.transform.GetComponent<bringkey>();//获取那个碰撞物体上的类BringKey
if(yk.yellowkey>0)
{
Destroy(gameObject);
yk.yellowkey--;
}
}
要获取的是已经存在于场景中的对象,继承MonoBehaviour的类相当于你贴到对象上的一个脚本控件。你要获取的是一个已经存在与场景内的对象,不能使用New,OnCollisionEnter2D函数中发生碰撞的那一刻会把与当前物体接触的那个物体碰撞信息通过参数Collision2D col传递进来。可以通过这个传递过来的值,修改传递过来物体上脚本的参数。
Ⅱ Unity3D中用JavaScript写脚本,如何引用其他JS脚本
1、方法定义为static,直接类名.方法名调用;
如
class Main1{
public static function Add(j:int,i:int):void
{
Debug.Log(i+j);
}
}
Main1.Add(1,2);
2、new 一个对象,对象调用,如
var m:Main1 = new Main1();
m.Add(2,3);
3、GameObject.Find(),得到那个有这个脚本组件的GameObject,这个GameObject再GetComponent,得到script,scirpt再调用方法。
Ⅲ 在unity3D: c# 怎样调用另外一个c#脚本里面东西
例:第一个脚本名字为Class_1,第二个脚本名字为Class_2,Class_1调用Class_2
如果Class_2没有绑定在任何GameObject上,那在Class_1里写法:
Class_2 c2 = new Class_2();
如果Class_2绑定在GameObject上,那在 Class_1里写法:
Class_2 c2 = null;
void Start()
{
c2 = GameObject.Find("绑定的GameObject名字").GetComponent<Class_2>();
}
Ⅳ unity的js脚本怎么调用c#的类
在c#中一般会封装成dll文件对外提供接口调用,unity的js脚本也是这样的调用方式。
一、创建dll文件并备腔
1。打开vs文件->新建-> 项目->C#->类库,输入项目的名称,创建一个dll项目;
2。引绝衫入 UnityEngine UnityEditor ;这两个文件放在unity安装目录的Unity\Editor\Data\Managed路径下,
具体添加步骤滚宏:右键点击解决方案->添加引用->浏览;
3。如果加入了UnityEngine UnityEditor,在项目中就可以using UnityEngine 和 UnityEditor;如果项目中不需要,也可以省略第二步;
举例说明:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using UnityEngine;
using UnityEditor;
using System.Collections;
namespace dlltest
{
class Class2 : MonoBehaviour
{
void Start()
{
Debug.Log("this is unity call C# dll test!");
}
}
}
5。F5启动生成解决方案(debug或者release),把生成的dll放到unity工程的asset下;
6。如果继承了Monobehaviour的类在dll的子对象中有显示,这样就可以绑定到GameObject上了,如果是要引用dll的类,需要using 命名空间,名字一般和项目名称一致才能调用。