Fungus 变量存在于流程图上。它们就像黑板一样,允许Command(指令)、Block(块)和Flowchart(流程图)设置和共享数据。
什么是变量?
如果您之前编写过脚本或编程,那么您很可能熟悉这个概念。最简单的说,变量是保存数据的名称空间或位置。由于 Fungus 中的变量存在于Flowchart上,因此它们在Flowchart的整个生命周期中都存在。它们通常用于跟踪玩家的进度或选择。它们也通常用于将数据从一个命令传递到另一个命令。
变量不会在应用程序运行期间自动保存和恢复。但是,可以使用保存机制将变量加载和保存到磁盘。
变量列表(Variable list)
它们位于Flowchart Window左下角和Flowchart的属性当中
Variables的大按钮可以显示或隐藏变量列表。当流程图上有大量变量并且需要额外的屏幕空间来查看窗口内的流程图块或您想要查看的游戏对象上的其他组件时,隐藏该按钮会很有用。
这是添加(创建)和删除Fungus变量的地方。单击加号按钮将显示一个菜单,用于选择要添加的变量类型。按减号按钮将从列表中删除当前选定的变量。
当变量被当前选定的 %Commmand 引用时,它们将会高亮显示。
每个变量都需要一个名称,这就是它在Commands下拉菜单中向您显示的方式,也是在字符串中使用变量替换时引用它的方式。对于大多数变量类型,您可以直接在变量列表中赋值。在所有情况下,您都需要确保初始值有意义。例如,名为 Lives 的整型变量可能需要初始值为3。
什么是变量类型?
参考 c#,Fungus 变量声明它们将包含的数据类型。
简单的应用最常会使用布尔值(表示真或假的变量)、字符串、Unicode 字符(例如单词、句子和段落)。
什么是变量范围?
变量的作用域决定了该变量如何被fungus使用以及如何暴露给系统的其他部分。
目前可以将它们设置为Private(私有的)、Public(公共的)或Global(全局的)。
Private类型不能直接供其他流程图使用。表示变量仅与其声明的流程图相关且仅供其使用。这并不限制其被命令使用的能力。
Public类型表示该变量可以被其他流程图找到,并可供其他流程图使用或修改。其他流程图需要能够直接访问声明变量的流程图才能对其进行修改。Public 还使该变量在变量替换期间可供其他流程图使用。
Global类型允许在所有流程图之间共享状态,而无需直接访问其他流程图。它还允许变量的值比声明它的流程图的寿命更长。所有具有相同类型和名称的变量且可全局访问的流程图都具有相同的底层值,存储在 FungusManager 上。
在变量替换过程中,流程图会自行查找名称匹配项。然后查找所有活动流程图上的公共变量。
什么是Fungus变量数据?
块内的命令可以直接使用变量引用或变量数据。变量数据是 Fungus 使用 Fungus 变量或手动输入的相同类型的值的机制。这允许使用更通用的命令。