2-2 加速功能
我们优化完细节之后当然是要来添加新功能啦~
制作加速功能
首先!我们先日常添加一个新的扩展
白猫的高级鼠标!有了他就可以分别检测鼠标左键和右键了
首先我们回到贪吃蛇的角色
我们从扩展中拖出“鼠标 左键 被按下” 并放进如果否则中
然后我们将判断内分别放上移动15步和移动10步
随后将判断替换掉原来的移动
就像这样!
然后我们制作一下加速的时候会慢慢的消耗分数
如果按下鼠标左键就将分数减少0.03
然后我们来运行一下看看
嗯... 确实加速了 但是加速久了分数直接减成负数了
我们来加一个判断解决这个问题
如果按下鼠标左键以及分数大于7再加速
非常完美!现在分数最低只会到达7
不过现在有一个小问题 就是速度明显太快了~
就像这样!
但是我们会发现现在间距太奇怪了
不过这个问题非常好解决
首先我们先创建一个变量 名字叫加速
然后我们在判断中添加上设置变量
就像这样,如果加速那么就设为1 否则设为0
然后我们来到控制间距这里
我们将代码改成这样~ 添加了个判断 如果没有加速那么就等两帧如果加速了就等一帧
好了,非常完美!
不过现在还有一个点可以优化,就是现在没有体现的出来速度感
首先!让我们制作一个加速时身体产生的特效
创建一个新的变量 叫做“渐变”
我们来到舞台角色
然后来编写一段脚本
当开始游戏的时候 重复执行将变量渐变 增加2
当然 刚开始记得将变量设为0
然后我们回到贪吃蛇角色中
创建一个新的积木叫做 渐变效果
创建完新函数先不着急写,让我们来学习一个新功能
对准脚本区同时按住 鼠标左键 + A 创建一个代码分区
然后我们将分区名称改为函数 这样以后更方便我们管理脚本~
我们就可以一次性拖动一堆积木了~
好了 言归正传,现在让我们来开始编写这个自定义积木中的代码
首先我们来判断一下是否在加速模式
还记的我们之前克隆体中的变量 i 吗,我们就用这个制作渐变效果
就像这样!如果正在加速那么就将颜色特效设置为 i 减 渐变,否则就设为默认
然后我们将这个积木添加到克隆体和本体中
OK 大功告成!
非常好渐变 爱来自酷可mc(
做完渐变之后还感觉速度感不够怎么办
这个时候就要让我们的摄像头缩放动起来了
首先我们来到摄像机角色
让我们来写一个判断
如果正在加速 那么就将缩放非线性到 60% 否则 非线性到 80%
很好!现在是不是有速度感多了
但是在做新的之前让我们先来优化一下这段代码
你们在此之前有没有想过 布尔值 如果用来当数字会怎么样?
诶那么这个时候就要了解一下布尔值的特性了
布尔值
当谈到布尔值时,我们通常指的是逻辑数据类型,它只有两个可能的值:true(真)和false(假)。布尔值用于表示逻辑条件的真假状态。
在计算机编程中,
true
通常被表示为1,而false
通常被表示为0。这种表示方式可以方便地进行数学运算和逻辑操作。在计算机内部,布尔值的存储可能采用不同的表示方法,但常见的方式是使用一个字节(8位),其中的每一位表示一个布尔值。
可以将布尔值看作是对某个条件的回答。如果条件成立,布尔值为
true
(1),表示"是"或"真";如果条件不成立,布尔值为false
(0),表示"否"或"假"。
这也就是布尔值的神奇之处
那么我们就可以利用这个特性整点花活了,比如说我们可以这样写
布尔值是true那么就代表1,1*20=20,80 - 20就等于60,如果是false那么就是0 0*20还是0
那么这是不是相当于直接将判断简化成了一段计算
因此,我们可以像这样写
效果和使用判断是相同的,并且使用的块状积木更少
接下来我们顺手修一下这个因为速度变化导致吃彩豆的吸收位置不对
其实我们只需要来到动画角色将移动距离从50缩小到40即可~
最后让我们添加一下灵魂,那就是!音效
我们在贪吃蛇中上传一下贪吃蛇加速的音效
然后让我们来新开一个循环用来检测加速并且播放音效
就像这样!这样的话相当于只要加速状态变为1那么就会触发一次 直到下次再变为1
然后我们就大功告成了!
<iframe
width="100%"
height="800px"
scrolling="no"
src="https://www.ccw.site/embed?id=snake/mckuke/Lec2/02&type=comment"
title="贪吃蛇中级教程-第二课第二节"
frameBorder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
allowFullScreen
scrolling="0"
></iframe>