(接上文)
接下来便是截取的过程,首先需要确定截取过程什么时候终止(毕竟循环是无尽的,但是字符串有尽,截取过程肯定是有个头的),达到这个目的很容易,只需要比较我们的“标记”是否已经到达最后一个下标就可以了
这里使用(字符串长度-1)来标记最后一个下标
然后就是正式的截取过程了,这是循环的过程的图解
这样就可以依次输出:从0到1,从0到2,从0到3……….从0到最后一个字符的所有文本啦
现在只需要改变变量Text,漂浮文字就可以自动打字啦
我们再将整个过程理一遍:
变量Text变化,比较到和上一次的Last_Text不一致,将“标记”拨回开始,“标记”在计时器循环中开始递增,每递增一次,输出的文本截取的长度都会+1,达到逐个输出的目的,当“标记”到达字符串最后一个下标的时候,停止递增
这是整个打字触发器:
(3)全局优化
这一步主要是优化整个打字过程的整体效果
1.漂浮文字对齐的优化:
如果你希望你做出来的漂浮文字能够有更好的观赏体验,那么对漂浮文字的优化必不可少
1.
左对齐
居中对齐
右对齐
很容易理解吧,在IC当中的对齐方式便分别是MiddleLeft,MiddleRight,MiddleCenter,使用了它之后文字就可以自动地对齐了。
2.当你换行的时候,如果你发现第一行的文字跑到上一行去了,那么一定是漂浮文字的中心点设置的问题
这里是漂浮文字中心点的图例(使用的是MiddleLeft对齐)
那么调整了中心点之后会出现什么样的效果呢?这里有几个图例来进行简单的阐释,具体需要各位玩家自行调整和深入理解
3.如果你进入下一个关卡后,还想使用这个漂浮文字,那么你就需要让它一直显示在一个位置,毕竟每一个关卡都创建一个是一种很容易出bug的行为,所以能够简单解决的问题就尽量从简安排
这是优化后的成果(此截图仅作参考,不同地图的需求可能并不一样,多测试才能得出适合自己地图的方案)
2.打字音效的优化:
这一步非常简单,只需要在每截取一步的时候都同时生成一个音效就好了
3.关卡切换优化:
通常情况下,关卡切换时都需要清空漂浮文字,实现起来也很简单,直接将前文几个关键变量重置即可
至于字体颜色、大小、换行、打字速度等额外设置在此不再赘述,有兴趣可以多加实践来寻找适合自己地图的方案。
(四)写在最后
在这个触发器实例当中涉及了多方面应用,但是经过实践后你会发现:编写思路逻辑可能比编写的过程更复杂,不过理清思路后,编写过程也是一气呵成的,就像一道数学题从入手到完全解出的那种感觉。只要坚持实践与学习,多加思考,相信你也可以制作出功能强大实用的触发器。