在unity3D: c# 怎样调用另外一个c#脚本里面东西?
3个回答
展开全部
对于静态Script(可以不继承MonoBehiviour)
直接用 脚本名.函数名(参数); 调用即可
对于组件
如果是静态成员,同上
如果是动态成员,可以用GetComponent<脚本名称>()来获取此脚本的类
也就是使用 GetComponent<脚本名称>().函数名(参数);调用
注意:上述其实省略了一个this对象,表示本身,意思是说你用
GetComponent<脚本名称>() 获取的对象是此脚本所挂载的对象上的此C#脚本对象
如果你要调用其他物体的脚本的成员,请使用Obj.GetComponent<脚本名称>().函数名(参数);这里Obj指的是其他物体的GameObject对象
推荐于2018-03-01
展开全部
例:第一个脚本名字为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>();
}
如果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>();
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
有2个脚本 Class_1脚本拖到物体A上。
Class-2脚本这样写
public Class_1 tt;
然后Class-2脚本拖到物体B上(这脚本必须继承monobehaviour基类)
点击B物体,右侧inspector面板多出一个tt。拖A物体到tt上,完成实例化
然后写代码,tt.speed=10f;(假设Class_1脚本有Public speed变量)
Class-2脚本这样写
public Class_1 tt;
然后Class-2脚本拖到物体B上(这脚本必须继承monobehaviour基类)
点击B物体,右侧inspector面板多出一个tt。拖A物体到tt上,完成实例化
然后写代码,tt.speed=10f;(假设Class_1脚本有Public speed变量)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询