
什么是打字机效果。
打字机效果就是文字像老式打字机一样一个字一个字蹦出来,非常带感。在蛋仔派对的地图编辑里很多大神用这个效果做剧情对话或者谜题提示。我刚开始看到时也觉得神奇后来研究透了才发现并不难。核心就是控制文本控件的显示内容随时间逐步增加。
准备工作很简单。
你需要打开蛋仔派对的地图编辑器找到UI组件里的文本控件。拖一个到画布上调整好位置和大小。再准备一个事件触发器比如计时器或者玩家点击触发的逻辑。我推荐用计时器因为可以精确控制每个字的出现间隔。另外你还需要一个字符串变量来存储完整的句子以及一个数字变量记录当前已经显示到第几个字。
核心原理得讲清楚。
文本控件本身只能显示固定字符串无法自动逐字出现。所以我们要借用触发器的逻辑循环。每次触发时从完整句子中截取前N个字符赋值给文本控件。N从1开始每触发一次加1直到N等于句子长度。这样看起来就像打字机。注意蛋仔派对编辑器里的字符串截取函数我记得有一个“取子串”功能参数是起始位置和长度。起始位置固定为0长度就是当前的计数器。
具体操作步骤我一步步说。
第一步创建变量。在编辑器左侧变量面板新建一个字符串变量命名为“完整内容”填入你要显示的文字比如“欢迎来到蛋仔派对”。再新建一个数字变量命名为“当前字数”初始值设为0。第二步设置文本控件。选中文本控件在属性里将内容绑定为动态值?不对不能直接绑定我们需要通过触发器来动态赋值。第三步创建计时器事件。添加一个计时器设置触发间隔为0.1秒重复触发。计时器的触发事件里写逻辑先将“当前字数”增加1。然后使用“取子串”功能从“完整内容”中取从索引0开始长度为“当前字数”的字符串再把这个字符串赋值给文本控件的“内容”属性。第四步设置停止条件。当“当前字数”大于等于“完整内容”的长度时关闭计时器。这样文字显示完毕就停止。
常见问题与技巧要记住。
很多新手会犯一个错误就是忘记把文本控件的初始内容清空。如果初始有文字会和新出现的文字叠加。建议在开始前手动将文本控件的内容设置为空字符串。另外计时器间隔不要太快0.1秒已经很快了太快会显得不自然。如果想要更丰富的效果比如每个字有音效可以在这个逻辑里增加播放音效的步骤。还有遇到标点符号时可以适当延长间隔让阅读更流畅。这个需要你手动调整比如遇到句号就暂停0.5秒。
进阶玩法让地图更炫酷。
你可以把打字机效果做成多行对话配合头像和名字。每次点击或者时间到了自动切换到下一段文字。甚至可以用多个文本控件实现多人对话效果。另外还可以加入闪烁光标在文本最后加一个不断闪烁的竖线符号模仿打字机光标。这个需要另一个文本控件和计时器来控制显隐。作为资深玩家我强烈建议你试试组合不同的触发条件比如玩家走到某个区域触发显示这样能做出沉浸式的剧情体验。
最后想说纸上得来终觉浅。
光看教程不如自己动手试试。在蛋仔派对编辑器里多实验几次你就能掌握这些技巧了。当你看到自己做的地图里文字一行行跳出那种成就感是其他游戏给不了的。如果遇到问题可以去社区看看其他大神的作品参考或者直接问我。记住创意才是最重要的技术只是工具。
相关文章