本篇文章给大家谈谈探索Scratch编程:重制微信Top100热门游戏教程(一),以及对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。
今天我们继续开一个新坑,开发微信经典小游戏:跳一跳。这个游戏看着比王者荣耀简单很多,但是做起来反而会比较复杂。这是因为,相比于王者荣耀的正常逻辑,跳一跳里面有一个比较复杂的算法控制台阶的移动。废话不多说,赶紧开始做游戏吧!
1. 找图
像跳一跳这种经典的小游戏,github一般会有开源版本。因此,我们不用费力找图,直接在github搜索工程就可以找到所有跳一跳的图片资源了。阿达老师在这个工程中下载到了跳一跳图片和声音资源:https://github.com/wswei99/tiaoyitiao,顺便star一波。话说,github上有好多跳一跳的作弊器啊,从刷分到利用算法自动跳一跳不一而足。
2. 设置角色和舞台
跳一跳的角色和舞台比较简单,我们只需要设置舞台背景色、跳棋(不知道叫的对不对)、台阶即可。
3. 跳一跳
咱们先让跳棋跳起来。在游戏中,按下空格积蓄力量,松开空格跳棋跳起来。3.1. 初始化游戏
在游戏开始时,游戏里的每个角色都会做相应的初始化动作。比如,跳棋会移动到舞台的中下方,并下落下来;台阶会初始化一个自己出来接住跳棋。因此,我们使用事件广播通知游戏里的各个角色完成自己的准备动作。3.2. 按空格积蓄力量
我们分析一下跳一跳游戏的每次起跳逻辑。一次跳棋跳跃的周期可以分为这样几个动作:1)等待用户按下空格键。2)在用户按下空格键后一直积蓄力量。3)用户抬起空格键后完成力量积蓄,开始起跳。4)跳跃完成后开始新的一轮跳跃。因此,我们新增一个新一轮跳跃周期事件,在收到这个事件后等待用户按下空格键并开始积蓄力量。3.3. 松开空格跳起来这个游戏的力量设计有个不合理的地方,如果游戏里小人是往下按的话,小人像弹簧一样只受到向上的弹跳力,只会跳高,不会跳远。我们就随他去了,认为游戏里会给到跳棋向上和向前两个力量。
这里起跳是一个比较复杂的逻辑。我们都知道,一个物体被推了一下会运动起来,但是会运动多块呢?这涉及到一个物理概念:a = f_m ,这个鬼公式是:加速度=力量_质量 的意思。想想也能理解,我们用同样的力量推自行车自行车就走起来了,推汽车汽车肯定不会动。
在现实世界中,物体收到重力的作用一直停留在地上。因此跳棋跳起来后收到重力的作用也会落下来。当跳棋落到地面上(y坐标小于地面坐标)后,我们判断跳棋有没有成功落到台阶上。3.4. 弹跳完成后进入下一次等待状态这个步骤我们放到完成台阶的后面,这样方便一些。
4. 台阶控制
台阶的控制比较简单,在游戏开始时,只需要控制下台阶的初始位置并克隆出一个新台阶即可。
5. 移动
当跳棋成功的跳跃到了台阶上后,要加分并且移动台阶和跳棋到新的位置。
这里有一个需要特别注意的地方,我们需要知道当前台阶是左侧的还是右侧的。左侧的跳完后移动到舞台边缘并消失,右侧的移动到舞台左侧,并把自己设置为left。
6. 开挂
垂直加速度 a = (x-g)m ;说人话:垂直加速度=(弹力-重力)跳棋质量
画线
让我们来看看这个跳棋的运行路线,我们可以发现。这是一个典型的抛物线,这个只是会在高中物理详细讲解,小朋友现在知道这个抛物线是怎么形成的了吗?
用户评论
哇!居然要用Scratch重制微信那些热门游戏?这个想法太赞了! 感觉难度很大,但一定很有成就感。期待后续的视频啊!
有7位网友表示赞同!
我是小学老师,最近在教学生Scratch编程。看到这篇文章真是太好了!可以用来布置一些有趣的编程任务。希望作者能分享更多的制作细节和技巧!
有16位网友表示赞同!
挖坑系列?这有点生草啊... 先看看能不能真的做出个像样的游戏再说吧! 不过感觉玩起来应该很有意思。
有8位网友表示赞同!
微信游戏好多都是经典,用Scratch重制也是很好的玩法。 我小时候就喜欢玩像素游戏,希望作者能选一些老游戏,比如《愤怒的小鸟》之类的!
有9位网友表示赞同!
Scratch编程还挺容易上手的,而且能够制作出非常精致的游戏,真期待作者能够做出一个让人印象深刻的微信Top100小游戏。
有5位网友表示赞同!
我觉得用Scratch重制顶尖游戏有点难度啊,因为很多游戏的逻辑和玩法都比较复杂,可能需要一些高级技巧来实现。但我还是会关注这个系列,看看最终的效果怎么样!
有18位网友表示赞同!
我倒是觉得这款游戏的灵感来自经典的微信上那些有趣的拼图和消除类小游戏吧? 期待作者能够展现出Scratch编程的魅力!
有18位网友表示赞同!
如果能把微信Top100小游戏移植到Scratch平台上,那真的太牛了! 可以让更多人体验到这些经典游戏的乐趣。
有5位网友表示赞同!
这个系列的想法很棒! 我一直想学习Scratch编程,希望能从作者的视频中学到一些技巧和知识点!
有18位网友表示赞同!
微信游戏确实很有玩头,用Scratch重制的话会不会显得有些简陋呢? 希望最终的效果能够符合大家的期待。
有9位网友表示赞同!
我记得小时候经常在微信上玩那些小游戏,现在想起来还是很有乐趣。 用Scratch重新制作出来会是什么感觉?
有17位网友表示赞同!
挖坑系列嘛,就是喜欢这种吊着胃口的感觉啊! 希望能早日看到成品,让我来亲自体验一下这个Scratch版本的微信Top100小游戏!
有17位网友表示赞同!
我一直很想知道Scratch编程能达到什么样的程度。 用它重制经典游戏的难度应该蛮高的吧? 希望这个系列能让大家见证这趟奇妙的旅程!
有13位网友表示赞同!
我很期待作者能把那些经典的闯关、益智等游戏移植到Scratch上, 看看能否还原出当初的游戏风味!
有11位网友表示赞同!
用 Scratch 代替 游戏引擎开发微信Top100小游戏,这想法可太有趣了! 我很好奇最终的效果会是什么样子的,希望作者能分享一些制作过程中的经验和技巧。
有14位网友表示赞同!
虽然Scratch的图形界面编程更适合初学者,但是用它来重制那些复杂的微信游戏可能有点挑战性吧? 还是很有期待度的,看看作者能做到多好!
有18位网友表示赞同!
我关注的是能不能把微信那些经典游戏的操控和玩法翻译成 Scratch 的规则体系。 这个是一个很大的挑战,但如果成功了,将是一件非常有趣的事!
有9位网友表示赞同!