调用其他实例的脚本是一种很常用的需求,在Unity3D中实现起来也有多种方法,假设在ScriptB有一个DoSomething函数,如下所示:

using UnityEngine;

public class ScriptB : MonoBehaviour {

public void DoSomething() {

Debug.Log("Hi there");

}

}

在ScriptA中如果要访问某个GameObject的ScriptB脚本中的DoSomething函数:

using UnityEngine;

public class ScriptA : MonoBehaviour {

public ScriptB other;

void Update() {

other.DoSomething();

}

}

注意ScriptA有一个ScriptB类型的公共变量,这是一个绝妙的小技巧,如此一来你便可以通过编辑器拖拽任何含有ScriptB这一脚本的GameObject至该变量上(因为是public的,所以暴露于编辑器界面中),Unity会自动识别你需要赋值的不是那个GameObject,而是它所包含的ScriptB脚本。

除此之外,如果你不喜欢这种在编辑器中直接赋值的办法,你可以通过GameObject.Find(“somename”) 来获取GameObject:

GameObject go = GameObject.Find("somegameobjectname");

ScriptB other = (ScriptB) go.GetComponent(typeof(ScriptB));

other.DoSomething();

不过需要注意的是GameObject.Find()的执行效率非常低,所以如果可能的话还是尽可能使用“直接赋值法”吧。

unity如何调用另一个脚本中的变量相关推荐

  1. shell实例第19讲:一个脚本中调用另一个脚本的3种方法

    在Shell脚本中调用另一个脚本(3种方法) 准备:主脚本是second.sh,主脚本中调用first.sh 方法1:exec(1)执行方式:exec /home/weibo/shell_test/s ...

  2. dll放在unity哪个文件夹下_程序丨如何将你的Unity代码整理到一个DLL中?

    原标题:程序丨如何将你的Unity代码整理到一个DLL中? 翻译:林政(玄猫大人) 审校:沈晓霖 代码复用的重要性 这里有一则故事也是你听过类似的: 你下载好Unity,看完Youtube上的一些教程 ...

  3. java调用包中的类_java调用另一个包中的类的方法

    java调用另一个包中的类的方法 发布时间:2020-05-18 15:04:40 来源:亿速云 阅读:199 作者:小新 今天小编给大家分享的是java调用另一个包中的类的方法,相信很多人都不太了解 ...

  4. shell脚本中的变量

    shell脚本中的变量 1 变量的定义 2 shell脚本中变量的定义方法 2.1 环境级别 2.2 用户级别 2.3 系统级别 3 变量名称 4 变量的转译 4.1 转译 4.2 声明 4.3 变量 ...

  5. 7月11日任务 shell介绍、shell结构和执行 、date命令用法、shell脚本中的变量

    2019独角兽企业重金招聘Python工程师标准>>> 20.1 Shell脚本介绍 • shell是一种脚本语言  aming_linux  blog.lishiming.net ...

  6. 20.1 shell脚本介绍 20.2 shell脚本结构和执行 20.3 date命令用法 20.4 shell脚本中的变量...

    2019独角兽企业重金招聘Python工程师标准>>> 20.1 shell脚本介绍 shell 是一种脚本语言:和传统的开发语言比较,会比较简单 shell有自己的语法:可以使用逻 ...

  7. Linux:shell脚本中实现变量自增的几种方式

    #!/bin/sh #本脚本测试shell脚本中整型变量自增 加1的几种方法   #定义整型变量 a=1 echo $a   #第一种整型变量自增方式 a=$(($a+1)) echo $a   #第 ...

  8. linux 引用其它脚本中的变量

    前言 CentOS Linux release 7.9.2009 (Core) 引用其它脚本中的变量 a.sh var_a=zhangsan echo $var_a b.sh source a.sh ...

  9. python语言下同一个类下有多个函数,其中一个函数想调用另外一个函数里面的变量怎么调用

    一:问题,同一个类下,有多个函数,其中一个函数想调用另外一个函数里面的变量怎么调用 解决方法:在调用函数里面,初始化一下被调用的函数,然后就可以直接使用被调用函数数里面的变量了 self.被调用函数名 ...

最新文章

  1. 蓝牙模块引起电路干扰
  2. Event ID 5553 failure trying to synch sitexxxx for ContentDB xx WebApp xx. Exception message ...
  3. User Story的常见困难
  4. typora高级设置字体_Mint(Linux)系统设置优化及其常用软件安装笔记
  5. 退休老人有30万资金,如何存款最安全?
  6. 选择排序与冒泡排序的区别
  7. c 语言 while break,26 C 语言中的break和continue - C 语言基础教程
  8. 程序员,有什么资格去谈佛系?
  9. WEB安全第六篇--千里之外奇袭客户端:XSS和HTML注入
  10. 设计【SPFA】【差分约束】
  11. opencv答题卡识别
  12. 电脑使用技巧提升篇10:电脑文件夹加密
  13. Chrome和Chromium的区别
  14. AirDrop不工作?使用这 15 个技巧快速修复它
  15. 复盘:C语言中int a[][3]={1,2,3,4,5,6,7,8}什么意思,int a[3][]又是什么意思,结果为10的是
  16. 图像尺寸与Rect适配
  17. 服务器使用上突然卡了,导致服务器卡顿的原因有哪些,该怎么处理?
  18. redirect、redirect-action、chain三者的区别!
  19. 695. 岛屿的最大面积(适合 初学者 理解的java版BFS)
  20. J storm战队成员_DOTA2:林书豪队伍J.Storm阵容公布,“瑞士鲁迅”成功留队!

热门文章

  1. 32、Java——迷你图书管理器(对象+JDBC)
  2. 搜索框的代码css,css搜索框_精美css搜索框代码
  3. IBM ThinkPad 机子无法开机的解决办法 - 按开机键没有反应 - E49
  4. npm下载swiper包报错
  5. KSO-Linux下Centos7.5防火墙开放某个端口号权限
  6. 百度飞桨领航团python零基础训练营笔记
  7. 5G对广播电视的影响以及应用-论文
  8. 10 本 Linux PDF 书籍免费分享
  9. VS Code + Latex + SumatraPDF 环境(实用)
  10. 图像校正(Image Rectification)——使得在对极线上寻找对应点更加容易