挑战五分钟,用边层边写一个小游戏,咱们把这个作品呢分成五步来完成,第一步是控制木板的左右移动,第二步呢是球的随机移动效果,第三步是球碰到木板过后的反弹效果, 第四步是小球碰到地上,我们所有的游戏都结束了。第五步呢是分数的增加,首先呢我们完成木板的移动, 木板我们会发现他是左右移动的,那其实他的 x 坐标就是控制左右移动的上下呢,是由 y 坐标来控制,在这呢, y 坐标他是一个固定的书,我们将 y 坐标设置为负的一百五十二,也就是现在木板的位置, 然后将 x 坐标设置为多少呢? x 坐标是跟着我鼠标移动而进行移动的,所以说鼠标的 x 坐标是多少,那么目 板的 x 坐标就应该是哆嗦。我们来到侦测界面,有一个鼠标的 x 坐标,将木板的 x 坐标设置为鼠标的 x 坐标,让它重复执行。 现在我们点小绿旗试一下,木板就能跟着鼠标进行移动了。紧接着我们再来完成小球,当小绿旗被点击时,我们让小球面向一个随机的方向移动, 面相里边添加一个随机数,就能够实现这样的效果。那么随机数应该是几到几之间呢?我们来到方向这个地方, 用鼠标去拖动一下,看看它能够到达的最小数是多少,那这个地方它的最小数是负的一百七十九。好,最大数呢是正的幺八零啊,那我们把这两个数分别填到这两个框框 里边,负的一百七十九,正的幺八零,让他面向这个随机方向,然后开始移动,在运动下边添加移动十步,那我们可以把十步稍微变小一点,移动五步,并且让他重复执行, 那我们小球在移动的过程中有可能会碰到屏幕的边缘,我们再添加运动下边的,碰到边缘就反弹,让小球碰到我们屏幕边缘能够反弹, 好,现在小球就能够哎移动起来了。接着第三步,当小球碰到木板的时候,他还是在运动,只是说他的运动方向改变了,所以说我们再重复执行里边去添加一个如果,那么判断小球有没有 碰到木板,选择木板,如果小球碰到了木板,这个时候他的方向会改变,所以说我们让他的方向 再次面向一个随机方向,那这个随机方向就有讲究了,我们去拉动鼠标看一看往左上方到往右上方这个区域是多少,我们能够看到这个区域是负的四十八到正的四十八之间,那我们把这两个书填进去, 现在就变成了小球如果碰到木板,我们就让他朝着左上方到右上方这个区间进行移动,我们来再试一下效果。 第四步,如果小球没有被木板接住,而是掉到了地上呢?我们再添加一个判断语句,如果,那么碰到地上,我们怎么去判断呢?我们其实能够看到地上这一块,他的颜色和其他的颜色是不一样的,这一块的颜色呢是一个棕色,对吧?我们就选择碰到棕色, 那如果自己去拉取这个颜色的话,很难能调出这个颜色,那我们可以选择下边的选取。把鼠标拖回到舞台上,选取地上的这个颜色啊,然后就变成了如果碰到棕色,那这个时候游戏就结束了,所以说我们要让他停止所全部的脚本。 现在我们就剩下最后一步了,添加一个变量来获取小球现在的分数,建立一个变量变量名,我们根据自己的需求来更改选择分数。 然后这个分数有两个积木块,我们是经常用到的,一个是将分数设置为,一个是将分数增加。那什么时候分数是零呢?是在点绿旗的时候分数是零,那么什么时候分数增加一呢?碰到木板的时候分数应该增加一。那现在再来试一下效果, 这样一个好玩的游戏就做完了,看看最后的效果吧。
粉丝103获赞645


此跨基础入门教程第三期,今天的案例主打一个简单又好玩,名字就叫千万别落地,这个彩球用鼠标点一下就弹起来,同时发出声音和变色,碰到上边或者侧边就会反弹,如果碰到蝙蝠就立即掉头往相反方向,如果掉到底部的红色区域,游戏失败结束。 而这个蝙蝠的特点呢,是满屏乱飞,飞到一个地方之后呢,等一会又飞走,没有规律。下面开始制作,上来先删掉我们的小猫角色,这个垃圾桶一点就可以了,做多了你就会发现,通常我们打开 spa 是第一件事,就是删除小猫。添加角色,先找到我们的球添加进去, 再把蝙蝠找到,可以按类别筛选一下,蝙蝠属于动物,背景也要调整一下,不是默认的大白屏了,我们选 只要绘制一个背景,其实也很简单,就是在底部增加一个红色的区域,用矩形工具来实现 调整颜色,放在最下边,把底部铺满就可以了。素材准备完毕,开始编码,试着先挑软的捏。这蝙蝠的动作你不觉得跟我们上个视频里的老鼠有点像吗? 都是不停的移到随机位置,只不过呢,老鼠是瞬移过去的,蝙蝠是慢慢过去的。我们在运动类别里边找积木,有一个一秒内滑行的随机位置就是它了,可以先试一下效果啊,点击一次滑行到新的位置。 整个游戏过程中,蝙蝠要不停的切换位置,所以还是得用重复直行包起来,再给他加一个等待时间,让他到新位置之后呢,停留一会,把等待一秒加进来,等待的 时间可以根据你自己的喜好进行修改,最后头顶加上绿旗积木,蝙蝠就 ok 了。搞定了,蝙蝠开始给这个球编码,分析一下这个球啊,最主要的特点,他在不停的移动中,你点击他也只是改变方向而已。 碰到边缘或者碰到蝙蝠也只是改变方向,唯有运动是永恒不变,直到碰到这个红色区域才停止。 那注意了,我又要开始当翻译了。浓缩一下刚才的话,球不断移动,点击改变方向,碰到边缘改变方向,碰到蝙蝠改变方向,碰到红色停止。 我们一句话一句话的把它翻译成代码移动,我们太熟了,拖进来那不断移动也很受尽,就是重复执行,拖进来包起来。哎,这就不断移动了。 碰到边缘改变方向,去积木区里就找这个关键词啊,看能不能找到跟碰到边缘有关的,你可以暂停视频找一下,我呢就先公布答案了。运动类里有一个碰到边缘就反弹,他的功能真就是字面意思啊,我把它放进来你看看, 不停的运动当中,碰到舞台边缘啊,就反弹了。继续翻译,碰到蝙蝠改变方向 关键词还是这个,碰到。回想到上个视频里边猫可以碰到老鼠,我们是在侦测类别里边找到积木来解决的。同样的道理, 碰到这个积木拖过来,下拉框里选择蝙蝠这个角色,但是别忘了这个尖角形的积木啊,是一个判断条件,积木,他可以告诉你这个条件是否成立,但是单独不能用,需要配合控制类积木里的入股纳木八 碰到蝙蝠作为条件填进去,如果碰到蝙蝠,那么要改变方向,这里我们设计的是碰到蝙蝠直接反向移动,也就是向后转,体育课上过吧。向后转就是旋转一百八十度,那我们就利用这个旋转积木,左右都无所谓了,因为转一百八十度,向左向右都一样。 接下来是碰到红色停止游戏啊,有点抽象啊,怎么还能碰到颜色啊? surprise 还真就提供了, 还是侦测类的题目。碰到颜色用法跟碰到角色呢?是类似的,也是跟,如果那么配合 点击这个色块的位置,可以进入提取颜色的模式,我们用取色器在舞台上找到你想侦测的颜色,点击一下就可以了,当碰到这个颜色的时候,条件达成执行。那么当中的代码块 呢?我们需要的是游戏停止,在控制类节目里边有一个停止全部脚本,把它拖过来看一下。他有一个独特之处,他的底部是平的,意思是说呢,不能在他下边再添加任何其他节目呢,因为他一执行,所有脚本都停了,不会再有后续了。 还差一句,最关键的,当球被点击时改变方向,那我怎么知道他被点击了呢?事件类积木给我们准备好了,当角色被点击啊,把这个加进来,只要球被点击,立刻开始执行他下边的代码。 同样是改变方向,但方式不同,这里我们希望球是向上运动的,但又不是直上直下,而是带一点角度的。那么把面向积木先加进来,我们来研究一下向上的角度都有哪些。通过圆盘的调整可以看到, 其实我们想要的大致范围呢,就是往左偏一点到往右偏一点之间,而观察这个数值呢,是负三十度到三十度之间, 只要在这个范围内是多少都行,那么就隆重推出我们的计算类积木,这里有一个随机数,这是个圆头的积木啊,在 surprise 里呢,圆头积木代表一个数值,可以被填充到圆框之中,就像这样, 那这个随机数有什么用呢?每次执行他都可以产生一个数字,这个数字呢处在你限定的范围之内,但是是随机的,我们刚才想要的角度范围呢,是负三十到三十,那就更改随机数的范围, 把它放进面向节目里,这样每次执行的时候,角色就会面向负三十到三十之间的某一个方向了, 稍微的再美化一下,点击的时候呢,切换下一个造型,同时增加一点音效。这次我们用这个播放声音,但是没有等待, 区别就在于没有等待的积木播放声音的同时,立刻就执行后续代码了,而如果用了等待播完,就会在声音播放完之后,再去执行后边的代码, 最后来做个收尾工作。球的启动条件呢是点击率齐,但是在正式移动之前,我们先给他一个初始的位置和方向,可以用这个移道积木啊,我们在舞台上移动角色的时候呢,这里的数值也会跟随变化, 调整好想要的位置后呢,直接拖过来就是对应的数据了,方向我们就让他向下吧,也就是一百八十度,一个锻炼反应能力的小游戏就完成了。最后我们来保存一下左上角 点文件,点保存到电脑,那选择一个你想要的文件路径,然后给他改个名字保存就可以了。下次想要打开他还是点文件从电脑中打开,哎,找到相应的文件点击就可以了。

好,同学们,我们今天做一个弹板的小游戏,这个呢我们先看一下游戏的成品效果,小球崩到弹板会反弹,我们的弹板是跟着鼠标移动,下面我们开始编码, 首先找到事件模块去找到,当绿棋被点击时, 然后找到运动加一个移动,然后 x 和 y 轴, 那么 x 我们设置为零, y 设置为一百六,那么是不是要让小球随机方向弹回? 我们在运动找到面相,在运算区找到在什么和 什么之间,取一个随机数,放到面相里面设置一个数,一百三十五到二百二十五之间,那么这样小球就随机弹回, 那么下面我们是不是要让他一直动起来,而不是重复点击率级,我们在控制找到重复执行,那么如何让小球动起来,我们在运动找到移动,这样小球就一直动起来了, 那么这样小球下来之后是不是不反弹了? 我们在运动找到 碰到边缘就反弹,我看一下小球 碰到边缘是不是反弹了,这样小球只是碰到边缘就反弹,我们需要他碰到弹板反弹,下面我们在控制里找到如果,那么 再去侦测里加一个碰到弹板,碰到弹板之后,我们是不是要让他随机反弹,在运动找到面相, 在运算里面找到,在什么和什么之间取一个随机数,这么和和上面一样,我们讲到的 负三十到三十之间,那么小球就可以随机反弹回去,我们找到声音加一个弹跳声音,我们这样点击绿棋,是不是小球一直可以反复弹跳, 我们是不是要增加点挑战,那么我们在控制里面找到如果,那么我们在侦测里面找到,碰到颜色加到如果,那么里面如果碰到红色,我们会怎么样? 我们在外观里找到,说什么你好,这名的文字呢?同学们可以自己更改, 那么下面我们来制作一下弹板的程序,找到事件模块去找到,当绿棋被点击时,好,那么我们在运动里面找到 x, y 坐标, x 坐标设为一百八十一,然后 y 坐标设为负一百二,那么这样当绿棋被点击时,弹板会出现在左边,那么我们是不是要让他重复做某一个动作,在控制里面找到重复直行, 然后我们是不是要让弹板跟着鼠标移动,那么在运动里面找到,将 x 坐标设为,在侦测里面找到鼠标的 x 坐标加到里面,这样是不是可以 跟着鼠标移动了?我们来看一下。好,那么我来说一下这个红色的边缘是怎么来设置的,那么找到背景来,随便来找一个背景, 那么找到矩形,然后调好颜色,拉一个框出来,这样就有边缘了。

哈喽,大家好,我是编程华老师,我们这节课呢,来制作一个小游戏 小球弹,弹弹在制作之前,我们先来了解一下什么是坐标,这个呢,也是我们这节课需要用到的知识。由于我们在以后的编程过程当中会经常用到坐标这个概念, 所以我们来了解一下什么是坐标。首先不管是 skritch 也好,还是 tom wop 也好, 他们的窗口的默认大小都是四八零乘以三六零。我这里画了一个坐标系,横向 为 x 轴,纵向为外轴,这样呢,它外轴的最高点就是一百八,最低点是负一百八, x 轴呢,最右端就是二百四,最左端为负二百四, 因此我们这个角色的任意位置就都可以用坐标来把它标示出来。好了,坐标呢,咱们就先介绍到这里,下面的这个小游戏就会用到坐标的知识。单机文件新作品, 我们这个 scratch 的修改版呀,除了比 scratch 多了一些功能以外,其他的操作方法都是一样的。 好,我们先把角色一删除,这个小游戏呢,需要一个小球和一个挡板,那么我们就从 scratch 的素材库中去找好,选择一个角色, 先找到小球棒,我们也可以输入英文去搜索,接着我再选择一个角色,挡板往下滑动, 在这里啊, paddo 当然也可以输入英文去找到它。接着我再选择一个背景, 这里呢,我用了户外,里面都有一个墙 wall, 我们先来编写这个挡板的代码,这个挡板啊, 我们把它放在下方,要想把这个挡板放在舞台的正中心,那么它的 x 坐标应该是为零,是舞台的正中心。外坐标呢, 我们看一下这块大致的外坐标是负一百三十九,我们就取个整负一百四,所以当绿旗被点击以后,我们让它归位, 就是让他移到刚才我设定的这个位置,移到零负一百四这个位置,我们想 用挡板来接住这个球,那么用什么来控制挡板呢?我们想到了用鼠标来控制他, 挡板只需要左右的来回移动,而不需要上下的移动,所以我们只需要把挡板的 x 坐标值设为鼠标的 x 坐标值就可以达到目的。好,重复执行, 将挡板的 x 坐标运动当中。啊,将 x 坐标设为什么?什么 设,为什么呢?设为鼠标的 x 坐标。好,上,侦测中,我们找一下,这里有鼠标的 x 坐标, 拖到零这块替代零重复执行,踏测一下。 哎,现在呢,这个挡板就随着我们鼠标的移动而移动了,因为呢,现在他的 x 坐标和鼠标的 x 坐标是一致的。下面呢,我们再来编写球的代码,我这里先添加一个注视,看看小球要做哪些事情。 later, 我们先来看他的第一个任务,在舞台上四处反弹,这个同学们应该都知道怎么做。 绿旗被点击,重复执行运动当中的移动 十步碰到边缘就反弹。这里由于他是个球体,所以我们就没有必要设置他的旋转方式了。好,执行一下,小球呢,只在水平的方向来回的反弹,我们要求他是四处反弹, 所以我们需要给他一个初始的运动方向,好面向四十五度方向。现在呢,小球就在舞台上四处反弹了。 好,第一个任务我们完成了,接着看第二个任务,碰到挡板就反弹回去啊,拖出一个事件,当绿旗被点击的 时候,要让他碰到挡板就反弹回去。这里呢我们用到了上节课控制里边的一个如果纳木这个条件语句,这里呢我们用如果纳木,否则 因为啊,一会我们还要再加一些附加条件。如果什么如果碰到挡板在哪里边呢?在侦测中我们找到碰到什么什么,直接拖到这个菱形块当中, 如果碰到什么拍斗就是挡板,如果碰到挡板,那么就反弹回去。想一下,这里有一个碰到边缘就反弹,我们的挡板不是边缘,那么怎么让小球反弹回去呢? 这里我们有一个好办法,就是改变小球的方向,为他的相反方向,他就会按原路返回了,怎么做到呢?在运动当中,我们找到右转多少度 这里呀,要是原路返回的话,应该是右转一百八十度。好,我们重复执行它 单击绿棋,我们测试一下。好,我们看小球啊,就被反弹回去了,下面我们再看他的第三个任务,每次碰到挡板就将得分加一,这里呢我们要用到了变量,上节 我们讲了变量就是一个变化的量,得分呢就是在变化当中的,所以我们建立一个新的变量,命名为分数, 我们依然选择全局变量,适用于所有角色。那么如何达到每接住一次小球就加一分呢?首先呢,我们先把他的分数设为零,当绿棋被点击以后,就将分数设为零, 也就是每次开始的时候呀,我们就把它重置一下,什么时候得分加一,就是每次碰到挡板以后,我们就将得分增加一 好了,这个功能呢,我们已经实现了,我们会发现我们每次接住小球以后分数都会增加一 下。面呀,我们再对这个小游戏稍加完善一下,如果我们没有接住小球,就让游戏结束。我们想一下,如果没有被接住,就是小球越过了挡板, 也就是小球的外坐标要小于挡板的外坐标。我们先来看一下这个挡板的外坐标, 挡板的外坐标呢是负一百四。好, 这里我们用到控制当中的,如果那末我们把它嵌套在这里,否则这里如果什么如果拜坐标 好,运动当中的小球的外坐标在这里啊,怎么样呢?我们运算一下,找到小于, 如果外坐标小于多少呢?刚才我们看了挡板的外坐标是负一百四,小于负一百四十, 那么就结束游戏。 这个呢,在控制当中有一个停止全部脚本。好,我们来测试一下。 哎,我们看没有接住他就停止了。这里呀,我留一个思考题,如果落地了就减一分, 直到分数为零再结束游戏,看看应该怎么编写呢。好,我们先把它保存一下, 起一个名字,小球弹弹弹。 好了,我们这节课就到这里,我们下节课再见。

千万不要让你家小孩学 spreach, 一旦他学会了,天天逼你玩他设计的小游戏。今天给大家带来的是 spretch 趣味编程项目弹球游戏。由于未知的原因,外太空出现黄色不明飞行球体, 玩家需要控制绿色的防御盾牌左右移动,抵挡他们的进攻。这可不是一件轻松的事,这些球忽快忽慢,一不小心就被他溜进来了,万一所有的小球都没接住,那就输了。不过还好 宇宙中还有友军出没,接住一颗宝石可以让防御盾牌临时增大一点,万一接住这个黄色的小精灵,小球就会自动复制出来一局,坚持住,等分数达到二百分就能胜利了。代码放在视频后面,截图即可查看。 你觉得这个游戏好玩吗?你有更好的创意吗?把你的想法写在评论区吧!关注我,下期再见!

大家好,欢迎回来,这节课里我们要研究一下怎样让小球在打中砖块的时候让砖块消失。 怎么样才能做到小球打动砖块的时候让砖块消失呢?在这里我们就必须要用到这个当克隆体启动时的积木了。 学过初级编的同学肯定不陌生,这个积木用处是可以设置关于克隆体启动时的一系列事情, 就像绿奇被点击时一样,只不过这个积木是克隆体专用的。而剩下来的逻辑就很简单了, 当克隆体启动时,我们要重复执行, 一直检查这个克隆体砖块是否喷 到了小球, 如果碰到了就隐藏这个砖块吗?不,我们更进一步,直接删除这个克隆体。大家去看控制类,有个积木叫做删除,此克隆体 这个积木在这里比隐藏好用,隐藏只是隐藏了,但还是会运行代码,但删除则会直接删除掉这个碰到小球的砖块更直接。我们现在来测试一下, 我们按下鼠标左键发射小球,大家看,小球碰到的砖块会消失了,不过现在小球打动砖块还不会反弹, 所以就看到了这种一打就一大片砖块消失的场景了。很显然,我们最好马上就来做这个小球打中砖块就反弹的功能,但这个功能其实不太简单,为什么?因为砖块是有四条边的, 小球有可能打中任何一侧,但打中上下侧和打中左右侧的反弹却很不一样。 正如小球打中了舞台左右侧是速度 x, 变成了一个副指,而小球打中舞台上方是速度 y, 变成了一个副指。 打中砖块也是如此的,小球打中砖块上下侧是在竖方向上反弹, 打中左右侧则是在横方向上反弹。所以如何区分小球碰到砖块时,是碰到 砖块左右侧还是上下侧,是小球反弹砖块的关键。这个问题很有挑战,不过我还是想把它留给大家。我给大家一个提示, 从砖块的造型大小入手,比较一下小球碰到砖块时,小球此时的中心和砖块中心的距离, 这个两个角色中心的距离,可以帮忙确定到底小球碰到了哪条边。好,我们下节课会做详细解答。小朋友们,下节课我们继续学习解答砖块反弹问题。

嘿,那我们想一想,如果小球碰到了我们的板,那他应该怎么办呢? 那我们碰到板的时候,他是不是就要板盘呀?所以首先我们要找一个扣,在控制模块中找到一个如果,那么模派老师刚刚说了,如果碰到我们的板子,我们的板子就有一个名字, 在我们的侦测模块中找到,碰到了什么?来,我们来找一下,打开,碰到我们的角色,那么就反弹,那反弹的话就是在运动模块中找到右转多少度,设置一个度数,设置一百度吧。好,那我们 小球碰到板的动作是不是也要收腹就行,放到上面,然后第二步,那如果,如果我们的小球 碰到了我们的角色一,也就是我们的砖块会怎样呢?是不是也要反弹?所以我们在同样在控制模块中找到如果,那么如果我们的小球碰到,那我们要在侦测模块中找到,碰到角色一,那么同样运动模块中找到右转 一百度。好,同样他也需要复制型,所以给我们放在第一个条件的下面。 好,现在我们已经有了两个条件,那还差一个,那如果小球我们的板子没有接触我们的小球,我们的小球呢?就会碰到我们的红色区域, 那如果碰到红色区域的话会怎么办呢?好了,没联系我们的第三个条件,也就是我们的小球碰到我们的红色区域,在控制模块中找到。如果,那么如果小球碰到颜色,在这层模块中找到,碰到什么颜色,我们点击这个颜色往下拉, 最下面有一个像画笔一样的,我们可以去吸我们边上的这个红色就变成了跟我们这个颜色一样的。好,我们的小球放到我们的红色的话,那么他就要停止游戏,所以我们要在外观中找到说什么几秒钟说游戏结束, 然后紧接着停止所有的脚本,所以要在控制模块中得到停止,停止全部脚本。 好,我们同样也要把这个条件重复进行放在这里。好,现在我们的小球的角色就已经编写完成了,接着我们要对我们的板子进行编写。
