实例 - 逐个打字功能(下)

(接上文)

接下来便是截取的过程,首先需要确定截取过程什么时候终止(毕竟循环是无尽的,但是字符串有尽,截取过程肯定是有个头的),达到这个目的很容易,只需要比较我们的“标记”是否已经到达最后一个下标就可以了

这里使用(字符串长度-1来标记最后一个下标

然后就是正式的截取过程了,这是循环的过程的图解


这样就可以依次输出:从01,从02,从03……….0到最后一个字符的所有文本啦

现在只需要改变变量Text,漂浮文字就可以自动打字啦


我们再将整个过程理一遍:

变量Text变化,比较到和上一次的Last_Text不一致,将“标记”拨回开始,“标记”在计时器循环中开始递增,每递增一次,输出的文本截取的长度都会+1,达到逐个输出的目的,当“标记”到达字符串最后一个下标的时候,停止递增

这是整个打字触发器:


(3)全局优化

这一步主要是优化整个打字过程的整体效果

1.漂浮文字对齐的优化:

如果你希望你做出来的漂浮文字能够有更好的观赏体验,那么对漂浮文字的优化必不可少

1. 调整漂浮文字的对其方式,用过Offfice或者WPS的玩家应该很容易懂,这就可以举一个例子:

左对齐

居中对齐

右对齐

很容易理解吧,在IC当中的对齐方式便分别是MiddleLeftMiddleRightMiddleCenter,使用了它之后文字就可以自动地对齐了。

2.当你换行的时候,如果你发现第一行的文字跑到上一行去了,那么一定是漂浮文字的中心点设置的问题


这里是漂浮文字中心点的图例(使用的是MiddleLeft对齐)


那么调整了中心点之后会出现什么样的效果呢?这里有几个图例来进行简单的阐释,具体需要各位玩家自行调整和深入理解

3.如果你进入下一个关卡后,还想使用这个漂浮文字,那么你就需要让它一直显示在一个位置,毕竟每一个关卡都创建一个是一种很容易出bug的行为,所以能够简单解决的问题就尽量从简安排

 

这是优化后的成果(此截图仅作参考,不同地图的需求可能并不一样,多测试才能得出适合自己地图的方案)


2.打字音效的优化:

这一步非常简单,只需要在每截取一步的时候都同时生成一个音效就好了

3.关卡切换优化:

通常情况下,关卡切换时都需要清空漂浮文字,实现起来也很简单,直接将前文几个关键变量重置即可


至于字体颜色、大小、换行、打字速度等额外设置在此不再赘述,有兴趣可以多加实践来寻找适合自己地图的方案。

(四)写在最后

        在这个触发器实例当中涉及了多方面应用,但是经过实践后你会发现:编写思路逻辑可能比编写的过程更复杂,不过理清思路后,编写过程也是一气呵成的,就像一道数学题从入手到完全解出的那种感觉。只要坚持实践与学习,多加思考,相信你也可以制作出功能强大实用的触发器。