如何在没有任何基础学编程从哪开始的情况下做出一个小游戏呢(3天以内)

美国上市集团 16年编程经验

完善的課程体系 累计研发5000多课时

专业的教研团队 5%教师录取率

丰富的科技大赛活动 国际科技主题游学

严选专业负责好老师 助力孩子学习少儿编程
童程童美实行“严选拔、强实力、常培训”的教师管理标准拥有400多名讲师,每月“专业+心理学+
教育学”等交叉知识学科培训坚持高品质素质教育。老师持证上岗拥有编程讲师证书、 启蒙创新讲师(FIT)、WRO竞赛裁判员证书。

  近年来随着互联网的发展,人工智能、5G技术等高新产业的不断浮现让人们见证了“数字时代”的诞生。“数字时代”的机器语言充斥着我们的信息世界

  随着“少儿编程”的夶热,或许家长们都多多少少有点了解少儿编程也是基于“数字时代”而产生的,编程或许将成为我们日后必须要掌握的一种技能  面对少儿编程的大范围宣传,许多家长便会产生很多困惑觉得有必要让孩子去学么?有那么好么  今天,我就来给大家讲讲少儿編程对孩子发展到底有哪些益处  01  利于大脑开发,培养思维逻辑  人类大脑的发育远远要提前早于其他身体部位在孩童时期嘚记忆力可以说是很好的,有些事情过了十几年也都会记得而成人便及其容易遗忘。举例小孩子可以辨别几十种颜色而成人只能辨别10哆种颜色。这就告诉我们天赋还是急需在儿童时期便培养起来,所以越早培养越好  02  寓乐于学  喜欢玩是孩子们的天性,没囿小孩子不喜欢玩的对于沉迷于游戏的孩子,我们建议送孩子来学习少儿编程因为少儿编程更像“游戏”,一个可以让孩子自己编动畫、设计游戏的“游戏”比如,孩子可以用Scratch编程来做些孩子感兴趣的成语动画甚至设计一个小游戏。  这都会形成潜意识让孩子們边玩边学,把知识装进大脑里  03  强化孩子的思辨能力  编程说白了,就是按照一定的规则将所建立好的代码和语言一个个填进去。在这个过程中会需要运用到数学的运算面对9+5+4+7+8=?这个算式若不能直接得出答案,那么便需要进行一步步式的拆分终得出结论。对于这个过程则是培养孩子的思辨能力让孩子了解到程序是如何流畅地处理输入、演算、输出数据的。  04  培养创新能力学会融会贯通  其实学习编程就像学习外语一样。如果说学外语是为了跟外国人沟通学习编程就是为了跟计算机沟通。面对数量居多的电腦指令时需要进行高效的信息整合,寻找到有用的指令  这意味着孩子在学习的过程中需要一种化具体为抽象的、融会贯通、学以致用的能力,既确保程序运行正确也利于激发孩子们的创新能力和实践能力。  05  提升孩子解决问题的能力  在学习面对的挑战時孩子会进行独立思考,并利用所学知识、程序达到闯关的目的一旦养成这样的习惯,在碰到生活中或其他课业问题时自然也会试著自己解决。父母只要给予适当的工具和提示让孩子自己动手、动脑去完成。  当全世界都在把编程作为基础教育的重要组成部分這也说明会编程可能在今后人们不可或缺的能力。英国将编程纳入中小学课程、邻近的越南亦将编程纳入小学课程新加坡在中小学考试Φ加入编程科目,而我国早在2017年便也把信息技术纳入到高考的科目中去  少儿编程,听起来很复杂、专业但是其实一点也不难!  无论是年龄,无论性别都可以来学习编程,早开展少儿编程启蒙教育便能帮助孩子建立逻辑思维能力,为孩子日后发展搭建好坚实嘚基础

获得《边学边玩 ease.com请注意:邮寄哋址为大陆地址哟~~

另外,发送完信息别着急出版社在规定时间内收到所有中奖网友信息后,会统一将奖品寄出~

[赠书]简单5步 编程零基础嘚孩子能做出一个小游戏

我家宝为什么辣么痴迷玩游戏可以目不转睛的盯着iPad玩儿一整天?

想必这是家长们经常头疼的事情

难道家长們只能通过没收IPAD、移动手机等设备来让孩子们机械性地远离游戏和网络么?

其实完全让孩子们不接触网络并且远离游戏已经是一件不太可能的事情了

人类天性喜欢玩游戏,玩游戏可以让他们快乐游戏通关后还可以让他们获得很大的满足感和成就感。

这里给家长们支个招:与其高压阻止孩子们玩游戏不如把孩子们引导到学习如何制作游戏上。

当他们可以以上帝的视角来重新审视他们原来玩儿的游戏后の前想要继续闯关的好奇心与求生欲也会随之烟消云散。

但是问题又来了有很多家长不知道为什么,还没有接触“编程”就先害怕起来觉得编程是多么高深莫测的事物。

其实大可以不必有这方面的顾虑比起需要写代码C++,scratch简直不要太easy与其说Scratch制作游戏是在编程,倒不如說它更像是在线上拼插电子化形式的乐高玩具既简单又易上手,同时在顺序编排和游戏调试中还培养了孩子的逻辑和分析能力,是不昰很一举两得

现在就给大家简单示范一下Scratch如何在短时间内就能制作出一个小游戏。

你可以选择任意连个你喜欢的角色到舞台上

这里我們选取了一个猫和一只中二的猴子。


可以从现有的背景库中选取一个场景当然,你也可以把喜欢的图片上传上来作为背景图


--003 建立角色の间的对话

你可以让猫说:“加几个气球怎么样?”然后猴子可以回答:“好主意!”

如果你不想让他们同时说话可以使用事件积木“等待 秒”。和你想的一样此积木在下一积木运行之前会等待一段时间,将它添加在猴子的“说 秒”积木之前,就不会与猫同时说话了由于猫的说话内容显示了两秒钟,猴子的回答应该等两秒后再显示出来

--004 添加气球并把气球吹起来

如果想在猴子和猫的派对上加几个气浗,可以再添加几个积木以便让他们说完话后气球再出现。

如果想让气球从第一个造型开始就出现可以添加“换成  造型”积木。由于添加了好几个气球接下来还要再多加几个“换成      造型”积木。


猴子说完话后气球就应该出现了也就是说你需要在“换成    造型”积木之後添加“等待     秒积木”。


猫说了两秒钟猴子又说了两秒钟,所以气球应该在四秒后出现

右键单击气球,然后选择“复制”两次现在茬scratch角色区就同时存在了三个气球,把它们拖到舞台上合适的位置然后单击角色区中的每个气球并更改代码积木,让它们的造型各不相同这样每个气球看起来就不一样了。


先将气球设为原始大小的一般

首先,猫和猴子应该先说到气球让我们再给Scratch添加几个“说  秒”积木。

其次你想等猫和猴子把话说完,所以应该添加另一个“等待   秒”积木这次是五秒钟。

然后添加几个“将大小增加到    ”积木,并在兩个“将大小增加到    ”积木之间插入“等待     秒”积木这样气球就会变得越来越大。


--005 小游戏可以运行咯

派对已经做好了你还可以通过改變猫和猴子的造型让他们做几个舞蹈动作。

所有需要的积木块已经设置完毕单击绿色小旗,让所有角色动起来把!

如果你看了角色所有嘚造型后对外观仍不满意该怎么办

你可以使用图形特效让角色看起来与众不同。

第一个特效可以用来改变角色的颜色!


看这个scratch猫它的“颜色特效”为100。


这个特效会让角色的中间部分看起来很大其他部分看起来很小。


这个特效会让你的角色看起来像是扭曲了一样!


像素囮会让你的角色看起来更模糊就像20世纪80年代的电子游戏那样。


此特效可让角色在同一地方变成许多个小角色


就像调整手机屏幕的亮度┅样,你也可以调整角色的亮度


这个特效可以让你的角色更加透明。


Scratch并不是一次只能使用一种特效哟你可以连续使用其中几个积木来創建一些非常酷的特效。例如如果你想让舞台中的四个蓝色scratch猫看起来很模糊,就可以将“颜色特效”、“马赛克特效”和“像素化特效”组合起来使用


以上学习scratch编程的入门知识,是在认真阅读了《边学边玩scratch3.0少儿编程》一书后整理的


这本书是美国麻省理工的scratch设计开发团隊官方授权的一本正牌好书,里面的内容都是结合了scratch最为基础的操作指南和11个经典scratch游戏案例来设计展开的书里还介绍了很多少儿编程的內容和技巧,例如如何重复执行命令如何添加声音和图片等等,语言通俗易懂内容循序渐进,非常适合6岁以上的孩子学习并且在书後还增加了少儿编程中英文词汇对照表,方便想要玩scratch英文版的家长和孩子们快速上手

对于使用scratch的学生来说,编程就像是在设计一款游戏戓编写一个动画故事只需要完成一连串积木木块的组合,就可以在短时间内完成有趣的游戏和动画设计

编程已经进入全球多国中小学課程。2018年上海、浙江等地都明确把编程列为高考项目,与理综科目平齐南京、天津等地则把编程列为中考特招项目,在一些中小学尤其是民办学校少儿编程越来越成为招生的重要考核标准之一。

启蒙从这本书开始!现在就赶紧发布你亲手制作的作品吧!

请在评论区写丅你对儿童学编程的看法我们将综合评论质量和顶贴数,选取5名网友送出价值95元的《边学边玩 Scratch3.0 少儿编程》一本。

8月19日-8月25日8月26日公布5位获奖网友名单~ 大家可以收藏本条新闻,关注后续是否中奖哦~~

拒绝一切刷帖行为一经发现取消资格!

本文来源:网易亲子 责任编辑:刘淑芬_NQ4973

在80后、90后的儿时记忆里俄罗斯方块是必备的消遣小游戏,它的玩法非常简单基本大家都懂但如何用编程语言开发一款儿时同款「俄罗斯方块」,恐怕知道的同学就很尐啦

这周,班主任给大家带来新课程《零基础入门经典小游戏开发---俄罗斯方块》课程让同学们可以在枯燥的正统编程学习之余,找到些儿时的乐趣换个方式学习编程。

俄罗斯方块游戏中的格子一般是10列20行(10*20)我们称之为世界地图。

一般都是这种竖屏的界面

10*20的空间是鼡来盛放方块的当方块落定之后位置便不能再改变。这个时候它会被保存到地图的状态中我们给地图状态设计一个二维的数组。

方块囿7种样式组成最大的长宽是4个方格,为了在逻辑上比较好的处理所有类型的方块我们构建了一个4x4的逻辑区域,用来统一描述所有类型嘚方块包括显示、旋转等。这一区域就成为了它自身的空间整体而方块被放到世界地图中时,也是以这样的整体加入进去的

我们给方块定义了四种属性,分别是方向、颜色、种类以及在世界地图中的坐标

方块可以做旋转,每经过四次旋转便会回到原始的状态分别鼡0123来表示方块的四个方向,新产生的方块设定的是默认方向

下图中的数值代表它在自己的空间内,哪些格子是有方块的哪些是没有的。这是一个二进制的16位的显示掩码0x4444代表的就是第一行第三列,第二行的第三列第三行的第三列和第四行的第三列。

旋转掩码是用一个16bit嘚数据表示的每个旋转掩码后面跟着的是一个16bit的显示掩码。

我们以S型方块作为参考来介绍方向为零的时候它占据第一行的第二列第三列,第二行的第四列第三列当它做一次旋转,方向由0到1这个过程中它的旋转是会扫过这些位置,变成方向1的状态在旋转过程中,如果它扫过的位置有其他方块占住那么它便不能旋转。

还有如果方块到达边缘的时候,旋转时超出了世界地图的范围也是失败的,会繼续维持现在这种状态

旋转掩码和显示掩码组合在一起,旋转掩码的意义是当前方向值下的方块,旋转到下一个方向值的时候需要參考的障碍区域有哪些,以上就是位置掩码以及旋转掩码的介绍

如果大家对C/C++感兴趣的话,可以加一下我们的学习交流Q群:637  935  295免费领取一套学习资料和视频课程哟~

接下来我们来看下游戏中的主要逻辑判断。

游戏中产生的方块在产生之后,做周期性的下落运动

同一时刻地圖中只会有一个方块处于活动状态,可以在地图中做移动、旋转等操作方块每次自由下落都会做一个下落判断,判断是否已经触底

触底指的是,方块不能再往下移动导致方块不能再往下移动的原因有2种,第一种是方块的下边缘已经在世界地图的边缘;第二种是方块再往下更新的位置被其他已经落定的方块占据了。

如图上代码所示方块移动的位置被其他方块所占据

方块触底之后,状态就由活动状态切换到了落定状态此时方块的显示掩码中标注的所有可显示的块,都将会写入地图的状态中以用来表明,这些块已经被占据了写入哋图状态中的值有两项属性:哪些块被占据了,已经被占据的块的颜色值

假定方块当前的坐标是(x1,y2),从方块的当前移动方向中我们可以嘚到方块等待判断是否可以移动过去的更新坐标(x2, y2)。

根据方块的类型以及当前的方向值从掩码表中可以拿到方块当前的显示掩码,方块是否能放置到新位置只需要判断显示掩码中标明需要显示出来的位置,是否已经有其他方块占据掩码中所有需要显示出来的位置,只要囿一个位置被其他方块占据本次移动判断失败,方块维持原有坐标

能够旋转涉及到一个方块是否改变它的方向x、y是方块在世界地图中嘚坐标,block是它的状态值

我们取它的种类、方向这两个属性,在4×4的空间里计算出每一格对应到世界中的坐标。

“isBoxRotateMaskEmpty”这个代表什么意思呢这是旋转掩码在旋转过程中要参照的点,方块旋转扫过的点以及它落定之后的这几个点,这些点就是它的旋转掩码

转写掩码值用┅个七行四列的数组来保存,分别对应七种方块样式以及四个方向对应的值它的高16位是旋转掩码,低16位是显示掩码

方块是否能够旋转,先要看它的旋转掩码里面是为空掩码为空则可以旋转,旋转完之后需要判断方块新的坐标是否还在世界地图里,如果它超出边缘超絀底线那肯定是旋转不了的。

还有就是判断当前格子在世界地图中是否被其他的方块给占了如果被占了的话,也是旋转不了的这就昰基本的旋转判定逻辑。

方块落定之后根据方块落定是的逻辑坐标,从上往下依次遍历地图中的4行状态值当某一行的所有地图块的状態都是被占据状态,该行被判定为得分行得分行会被消掉,当消完所有的得分行之后得分行上方的所有未得分行,依次向下平移

我們控制游戏难度的时候也是以这个为参考,玩家获得的分数越多游戏难度越大。

我们可以通过修改方块出现的时间间隔以及下落速度,来控制整个游戏的难度

当玩家拿的分数越多,每消除一行的等级就会加一分数是递增100,方块下降的速度是通过5的取模方式从1秒里面詓扣最小值是0.6秒。

如果某一行格子只要有一个空着的话消除便失败。某一行的方块全部被消掉之后上面的方块会向下平移,对应的荇数需要刷新

这便是关于得分的判断逻辑 。

最后再来看下整个游戏玩的流程图

游戏的核心逻辑是时间间隔,玩家点开始之后每隔一段时间会调度一次,如果游戏没有结束判断当前是属于暂停状态,没有说暂停的话就做一个moveBlock。

当然moveBlock有可能是玩家点了操纵的方向键,如果没点的话直接就返回了紧接着处理方块的下落过程,判断它落定的时候是否结束了

没有结束暂停的话,就处理移动移动处理唍之后,再去处理下落如果刚好时间间隔已经到了,那它就会往下落一次往下落的话有可能成功,也有可能失败

判断结束后会出现遊戏结束界面,可以选择是否重来一次如果再来一次便会做一次重置。

这里需要做一个关于世界地图的补充说明这里补充了一个地图嘚坐标系,游戏地图的坐标系X轴沿着水平方向向右Y轴是沿着垂直方向向下增长,坐标系的原点是在左上角

方块在逻辑空间中的坐标,昰以左上角为参考点的方块的坐标随着而改变。

我要回帖

更多关于 0基础 的文章

 

随机推荐