unity3d - Unity 可视化脚本变量
问题描述
我有一个有 3 个按钮的场景,每个级别一个。我使按钮 2 和 3 不可交互,我想这样做,所以当你赢得第一个时,你可以开始第二个等等......所以我从 button2 的选项中取消选中可交互框。然后我转到我的播放器的脚本并连接了以下部分,所以当他完成第一级时,按钮 2 可以交互。但是好像有问题。
解决方案
(此答案仅适用于您正在加载新场景。)
也许,问题在于您无法保存一个变量来告知允许哪些级别。(除非您通过实际的保存机制来执行此操作。)这是因为统一在加载新场景时会破坏场景中的所有对象。这将删除存储在变量中的所有数据。你可以通过使用来解决这个问题
DontDestroyOnLoad(gameObject);
这会保存您通过场景加载放入括号中的 gameObect 变量。您可以附加一个将变量存储到此的脚本,以保存信息。
如果您不知道如何从其他脚本中获取变量,请使用以下命令:
var newVariable = GameObjectVariable.GetComponent<scriptName>().variableName;
我看到您正在使用可视化编码,所以如果您可以尝试找出如何在其中找到这些方法,它应该可以工作。
如果您想使用实际的保存机制,请转到此链接:
推荐阅读
- html - 离子加载整页而不是小盒子
- python - python atom 的透明包装器
- ios - 将识别的语音与已知文本进行比较的最佳方法
- c - 哈希表的链表数组
- graphql - 使用嵌套变量过滤 Apollo 连接
- python-3.x - 使用 boto3 在 Dynamo 中按分区键查询所有项目
- bash - 在 bash 脚本中处理一组 git 命令
- php - 如何使用 kartik mpdf 扩展强制 PDF 在 Yii2 中打开
- java - 在 Java 中,如何在评估 emptyConstructor 条件时区别对待空类构造函数?
- c# - 在 Pcap.Net 中实现 TCP/UDP 数据包的 IP 分片