蓝图有一种称为“Switch”的动作,它根据输入值来决定执行流程。下面的图片显示的这些行动称为“Switch on Int”以一个整型值作为输入。
在"Switch on Int"中有一个 "Add Pin" 按钮,添加了整型的序列输出值,从0开始。你可以在细节面板中改变初始值的大小
“默认”的判断动作是在输入值不匹配输出值时被执行
作为使用“Switch on Int”的例子,让我们重新回顾上一次说的建筑脚本,在前面的文章中创造了一个例子,利用“Switch on Int”但没有改变脚本的结果。建筑脚本变成了:
上一篇文章中提及到的另一个利用“Switch on Int”语句可以改善蓝图的就是利用枚举类型的变量来代替整型变量“meshtype”。上一篇中的三个整型变量1,2,3,代表着可能被使用的静态网格。这些值可能会对那些没有亲自编辑关卡的人造成困扰,不知道1,2,3,分别代表什么。但是使用枚举就可以使用有意义的名称
第一步是创建一个新的枚举。在“内容浏览器”,点击“新建”按钮,在“蓝图”子菜单中选择“枚举”,如下面的图片
在新创建的枚举中输入名称“EMeshType”,双击来编辑枚举。单击“New”来添加名字。写入名字 "Capsule", "Cone" 以及"Cube"如图
现在我们需要在包含结构脚本的蓝图中创建一个新变量。变量的名字是“meshtypeenum”,类型为“emeshtype”,这是枚举了。点击“编辑”选项,在“类别”中选择或键入“Construction Options
整型变量”meshtype”可以删除。变量的“meshtypeenum”蓝图的细节选项卡将出现这样的选项:
蓝图上有一种基于枚举的“判断”执行。这类判断直接从枚举获取输出值。下面的图像显示了如何成为构建脚本的新版本,通过新变量”meshtypeenum”和“Switch on EMeshType”来改变整数变量”meshtype”和“Switch on Int“
另一种类型的判断是“Switch on String”:
此判断执行接收输入类型为字符串的变量,输出值必须被添加到 "Switch On String"的细节面板上, 在"Pin Names" 做如下设置:
原文标题:Switchs and Enumerations in Blueprints
原文链接: