首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Scratch中英文逐字显示特效

我们都知道,Scratch中显示说话内容有两个模块,“说…”和“说…2秒”。Scratch将文字内容显示出来,分别是说话几秒和说话直到被下一句话顶掉,但这两个都不够酷,我们想要让文字一个字一个字的冒出来,这样的特效看上去效果就很好,那么要怎么实现呢?

其实也不难,我们要只要用一个循环就搞定了,从对话列表里面取一条要说的话,然后不断的用“第某个字符:”的功能,从话里面一个个的把字取出来,然后跟已经取出的话,连接起来,再不停的说出来,效果就达到了。

01

中文逐字显示

新建三个变量“输入的中文”“次数”“说出的文案”。变量“输入的中文”用于储存我们显示的所有文字;变量“次数”用于每次循环的索引;变量“说出的文案”用于逐字显示功能(图1)。

变量“输入的中文”有多少字符,我们就重复执行多少次。每一次的执行把变量“说出的文案”赋在变量“输入的中文”的第变量“次数”个字符上。让后说的模块指令说出变量“说出的文案”。在把变量“次数”增加1,主要用于跟变量“输入的中文”字符数同步。利用等待时间模块指令实现控制逐字显示快慢功能,如果想显示快就把时间设置大点,慢就设置小点。

02

英文逐字显示示

英文显示和中文显示区别在于中文一个字体一个字符,英文是一个单词很多个字符。这里用到了电脑键盘空格站字符位来隔开两单词直接的分割,把每一个字符(包括空格键占的字符)加入到列表,然后把列表每一项读出来的原理实现逐字显示功能。

同样的变量“输入的英文”“次数”“说出的文案”,再加一个“字符”的变量和新建列表“英文字符串”。

这里变量的作用和中文逐字显示一样,变量“输入的英文”用于储存我们显示的所有文字;变量“次数”用于每次循环的索引;变量“说出的文案”用于逐字显示,列表用于每项存储一个字符(图2)。

点击小绿旗,分别把变量“输入的英文”“次数”“说出的文案”赋值为“Hello everyone Welcome to subscribe to ( Computer News ) .”“1”“空”。

同样重复执行“输入的英文”的字符数次。每一次执行将“输入的英文”的第“次数”个的字符加入列表“英文字符串”,然后把“说出的文案”设为列表“英文字符”的第“次数”项,说“说出的文案”内容。“把变量“次数”增加1”,显示时间快慢用“等待多少秒”来调节,英文逐字功能就实现了。

本文主要的知识点是利用Scratch编程来实现逐字显示功能。对学过Scratch有基础的同学们来说,我们可以利用这样的逐字显示思路把执行的线程封装成函数,如果封装带参函数还可以实现优化代码量。

加入以后同学们在完成其它某个项目的时候需要多次用到逐字显示功能时,先封装函数,调用此函数即可,此函数我们可以理解成逐字显示引擎,项目需要时调用起来非常方便。

编辑|张毅

审核|吴新

  • 发表于:
  • 原文链接https://page.om.qq.com/page/O9gUNEHWorA6ryRMkNKD0Tjw0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券