【问题标题】:Passing/Accessing Variable from Another Script c# [duplicate]从另一个脚本c#传递/访问变量[重复]
【发布时间】:2018-08-14 05:36:28
【问题描述】:

你能告诉我如何从另一个脚本访问一个脚本的变量吗?我什至已经阅读了统一网站上的所有内容,但我仍然做不到。我知道如何访问另一个对象但不知道另一个变量。

情况如下:我在脚本 B 中,我想从脚本 A 访问变量 X。变量 X 是布尔值。你能帮帮我吗?

顺便说一句,我需要在脚本 B 中不断更新 X 的值,我该怎么做?在更新功能中访问它如果你能给我一个带有这些字母的例子,那就太好了!

谢谢

【问题讨论】:

  • int foo = GetComponent<YourScript>().YourVariable
  • @FCin 不要在 cmets 中回答,让它成为答案 ;)
  • @WhiteMaple 我太懒了
  • @FCin 谢谢!有了这个,我可以access 来自另一个脚本的变量。那么我怎样才能change另一个脚本上的另一个变量呢?
  • @FCin 例如 scriptB 有一个 isAlive=true 布尔值。我想把它从 scriptA 改成false

标签: c# unity3d


【解决方案1】:

您的问题在这里得到解答:

https://answers.unity.com/questions/7555/how-do-i-call-a-function-in-another-gameobjects-sc.html

基本上,您在脚本 B 中创建一个类型为“ScriptA”的变量,并将包含脚本 A 的游戏对象放入该变量的值字段中。然后就可以在脚本B中访问脚本A的所有公共函数和变量了。

【讨论】:

  • 谢谢!我在脚本方面有点天真。你能提供一个非常基本/简单的例子吗?
  • 我目前没有在我的系统上安装 unity,但是如果您按照我提供的链接中提供的代码示例进行操作,您应该会在 gameObject 的检查器中看到一个字段“ScriptA”,其中包含脚本 B。然后您创建一个包含脚本 A 的空游戏对象(或使用已经包含脚本 A 的游戏对象)并将其拖放到字段中。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-19
  • 1970-01-01
  • 2014-02-24
  • 1970-01-01
  • 2021-10-11
相关资源
最近更新 更多