做你自己的马里奥游戏!为儿童和成人提供抓地基础知识

你知道即使你不懂编程,你也能创造游戏吗?这里有一个完整的指南,让你开始在Scratch制作你的第一个游戏。...

This guide is available to download as a free PDF. Download this file now. Feel free to copy and share this with your friends and family.

你知道吗,任何人都可以不用编程来**电子游戏?尽管有好几种初学者友好的语言,但你不必花半年时间学习java或C++来构建游戏。你可以从许多工具中选择各种类型的游戏,但一个伟大的选择为儿童(和**)是麻省理工学院的免费抓取。

make-mario-game

Scratch是一个工具,允许您拖放资源来创建游戏或动画。它很容易理解,但是在这个过程中教授了编程的构建块。让我们看看您可以在Scratch中创建什么,然后逐步创建一个简单的Mario游戏。

遇到刮痕

要开始使用Scratch,请访问主页。你应该马上创建一个帐户,这样你就可以保存你的创作。单击窗口右上角的Join Scratch按钮。创建用户名和密码,输入您的出生日期和性别,然后系统会询问家长的电子邮件地址。输入你自己的,如果你有一个,然后确认你的地址,这样你就可以评论其他项目和分享你的。

现在,你可以直接跳进去了。单击顶部工具栏上的“创建”以启动“草稿编辑器”。如果愿意,也可以下载脱机编辑器,以便在没有internet连接的情况下工作。

屏幕元素

启动编辑器时,将看到下面的窗口。让我们把它的元素分解一下(如果下面的小图片不清楚,请看完整的图片):

scratch environment labeled

  1. 阶段-显示游戏的快速摘要。所有活动的精灵和您选择的背景将出现在这里。你可以随意移动精灵。在上面的字段中为您的项目命名。
  2. 背景——在这里,你可以为你的游戏选择一个背景。从Scratch的库中选择、绘制自己的库或导入文件。你也可以从你电脑的摄像头抓取图像,尽管大多数人可能不需要这个选项。
  3. 精灵——项目中所有精灵的中心。像背景一样,你可以添加默认的,创建你自己的,或者上传图片。单击精灵上的小蓝i图标以重命名它、更改它的角度或隐藏它。
  4. 工作区——你的大部分工作都在这里进行。使用上面的标签(标有脚本、服装和声音)来更改正在处理的内容。脚本是用来添加代码块的,我们将很快介绍。服装可以让你为你的精灵创造额外的姿势。如果您在区域2中选择了背景,则此选项卡将变为背景;如果您在区域6中选择了一个精灵,则此选项卡将变回服装。一个基本的图像编辑器可以让你改变游戏中的图形。您也可以在此处重命名资产。毫无疑问,声音是添加和编辑声音的中心。
  5. 块——根据您选择的三个选项卡中的哪一个,此区域将在代码块、精灵服装/背景和声音片段之间切换。
  6. 控制按钮——绿色标志开始游戏,红色停止标志结束游戏。你要用这些做测试。

使用块

现在您已经熟悉了Scratch的编辑器,让我们来讨论一下该工具最重要的部分之一——代码块。这些块不需要输入真正的代码,而是让您定义元素的行为。它们像乐高玩具一样合拢在一起,很容易看出它们是如何相互影响的。

scratch block sample

单击左侧列表中的精灵,并确保选择“脚本”选项卡以开始拖动该元素的块。请注意,这些块是用颜色编码的,并且有像拼图一样的边来显示它们是如何组合在一起的。十大类及其作用是:

  • 运动——使给定的精灵移动,无论是步进,朝向另一个对象,或通过直接坐标。
  • 外观-让精灵隐藏或显示自己,切换服装,改变大小,或层之间移动。
  • 声音——播放声音、改变音量或调整节奏。
  • 钢笔——用记号笔画画,改变它的颜色和形状。
  • 数据——允许您创建自己的变量。这对于Scratch没有内置的元素来说非常方便。
  • 事件——启动其他操作的条件,如单击绿色标志或按空格键时。你需要这些积木才能让你的其他积木真正发挥作用!
  • Control—循环以重复操作、执行if else语句或停止某些操作。
  • 感知——当精灵触摸到另一个元素或用户按下某个键时,将这些块放入其他块中执行操作。
  • 运算符——允许您对变量执行算术或基本布尔运算的数学元素。
  • 更多的积木——如果这些还不够的话,就自己做积木!

一个简单的例子

让我们举一个简单的例子,一步一步地说明这些块是如何组合在一起的。我们要让抓伤猫把足球踢进球门,当球进球门时发出声音。

首先,你需要一个很酷的足球背景。进入左下角的背景部分,点击图片图标选择Scratch的背景。有一个叫做Goal1的方法可以很好的工作。接下来,单击精灵图标添加一个新的预制精灵。您应该在列表中看到足球——双击它将其添加到精灵中。

scratch soccer ball sprites

现在图形已经准备好了,您需要从一些块开始。选那只猫,因为是他在做这个动作。还记得Events选项卡包含许多起始块吗?看一看,你会看到一个火,当你点击绿色的旗帜。这是一个完美的起点--将它拖到脚本工作区。

一旦你开始,你想让猫跑过去踢球,对吗?这听起来像是运动标签下的东西。有几个选项可以使cat移动,例如move X steps块。但是我们不能保证猫要走多少步才能够到球。有一个更好的拦网——试着用滑翔X秒来拦网。一秒钟是很好的时间,你需要点击足球的蓝色i图标来查看它的坐标。把这些输入到方块里,你的第一个动作就完成了!

踢球

一旦猫碰到足球,它就会飞进球门。所以,选择足球,这样你就可以添加一些动作。请记住,每个操作都必须从一个事件开始——对于这个实例,绿色标志是可以的。现在,你不希望足球在猫碰到它之前移动。请看一看控件类别中允许我们限制其行为的块。等待,直到块听起来是正确的!

注意Wait-until块内部是如何有一个拉长的六边形的。很多感应块都适合这个形状,所以看看这些来找到合适的。看到列表顶部的触摸块了吗?你可以把它拖到洞里面等着。将下拉框更改为Cat或任何您命名的Cat sprite。

scratch soccer ball code

现在你只需要让足球飞进球门。我们之前为猫使用的运动类别中的Glide X secs-to-block可以正常工作。在wait until下弹出那个方块,把鼠标指针放在球门网上。你会看到舞台下面的X和Y坐标——把它们**滑动块。当球被踢的时候,它应该移动得很快,所以让我们试着用0.5秒来计时。

人群变得疯狂

最后一步是添加声音!选择工作区上方的“声音”选项卡以添加新的声音。单击New sound下的扬声器图标,从Scratch的库中获取一个。在人类的范畴里有一个叫做欢呼,这是完美的。双击它以添加,然后返回足球的工作区。

您将在“声音”类别下找到一个标记为“播放声音”的块。把它放在滑块下面,你就完了!单击绿色标志播放动画。猫会跑到球跟前,当它碰到球时,球飞进球门,观众欢呼。

[视频宽度=“480”高度=“360”mp4=”https://www.makeuseof.com/wp-content/uploads/2017/04/Scratch-Soccer-Example-Video.mp4“][/视频]

那并不难!既然我们已经深入了解了块是如何关联和组合在一起的,那么让我们看看如何使用Scratch构建一个马里奥游戏。

创建基本的马里奥游戏

上面的简单足球示例演示了如何使用块来控制精灵,但它没有任何游戏性、动画或音乐。让我们深入其中,创建一个简单的马里奥游戏。我们可以在**游戏的每一个方面花费数千字,所以我们将坚持基本原则。

请注意:因为我不是一个艺术家,为了本教程的目的,我从网上复制马里奥精灵。马里奥图形是任天堂所有,你不应该发表任何游戏使用受版权保护的精灵。这只是一个例子。

导入图形

第一步是将精灵和背景导入Scratch。因为我们使用的是网络上的图片,所以我会下载它们,然后上传到Scratch。创造逻辑,使马里奥可以跳上敌人打败他们,但死亡,从接触他们的侧面是太先进的本教程,所以我们将让他收集硬币代替。

在教程的最后,我将提供一个包含我使用的最终资产的ZIP文件。如果你使用这些,你就不必担心教程中的图像操作说明。如果你想自己下载所有东西,请继续。以下是我下载的精灵:

  • 马里奥跑步(两帧就足够了)
  • 马里奥跳跃
  • 动画硬币
  • 接地块

Scratch有一个蓝色的sky3背景,可以满足我们的需要。

编辑精灵服装

因为有两个精灵组成了马里奥的跑步动画,所以你需要将它们作为单独的服装添加进去。使用像这样的图像编辑器油漆.NET要将两个Mario帧保存为单独的文件,可以忽略第三个。上传第一个马里奥精灵,然后选择它并使用服装选项卡上传另一个精灵作为他的第二套服装。给他们起个不同的名字,比如马里奥一号和马里奥二号。加入跳跃精灵作为马里奥的另一套服装。

scratch mario costumes

使用图像编辑器从上面提供的图像中提取云,然后将其作为新的sprite上传。它不是动画,所以你不需要添加一个单独的服装。

对于地面,你需要很多街区,因为马里奥沿着这些街区跑。使用油漆.NET抓取地面块图像中间的六个块,然后将它们另存为一个文件。一旦你把它们缩小到一个合适的尺寸,你需要大约12块来覆盖整个屏幕的底部。因此,你应该把这六个街区的两个副本并排放置在地精灵上。上传这个,然后在Scratch中复制两个地面精灵。

硬币是一个动画GIF,所以有点不同。无论何时上传,Scratch都会为动画的每一帧创建服装。这张图片总共有11帧,但不幸的是,它周围还有一个白色的边框,与蓝色背景相映成趣。你必须在Scratch编辑器中打开每一件衣服。使用移液管工具选择蓝色背景色,然后使用油漆桶工具将硬币的白色边缘更改为淡蓝色。

scratch coin coloring

您需要使用屏幕顶部绿色标志按钮正上方的“增大”和“收缩”按钮调整精灵的大小。单击任一按钮,然后单击左侧舞台上要更改的精灵。这也将调整所有服装的大小。现在就给他们一个大概的估计;你可以稍后再微调。

导入声音

就像精灵一样,我们会抓住一些声音来充实我们的游戏。继续下载,然后用声音标签上传。当你这么做的时候,考虑把它们作为你**的酷**。

  • 超级马里奥兄弟主题
  • 马里奥跳跃声
  • 硬币收集声音

设置硬币的动画

现在所有的资产都准备好了,是时候让它们活起来了。我们先从硬币开始,因为那些很容易。选择硬币精灵和脚本选项卡。因为我们的硬币是动画GIF,所以我们可以用一系列的积木来不断滚动他们的服装,使他们看起来像是在移动。

动画脚本如下所示:

coin animation script

简而言之,当您单击绿色标志时,此脚本将硬币设置为其默认状态。然后它以您在“数据”选项卡中设置为FPS变量的速度无休止地在帧之间循环。如果你不喜欢这个速度,就用这个数字玩吧。

取消选中数据选项卡中Coin FPS旁边的框(这是您创建的自定义变量),这样它就不会显示在屏幕上。

让马里奥动起来

现在是最困难的部分。让马里奥移动需要很多步骤,而这实际上是一个技巧,滚动地面块以呈现移动的外观。我将提供代码块的屏幕截图并解释它们的亮点,而不是试图解释每个块循环。

首先,您需要在Data选项卡中创建四个变量。这四个都适用于所有精灵,除了速度,它只适用于马里奥:

scratch mario variables

  • 重力是一个常数,当马里奥跳跃时,它会把他拉回到地面。
  • OnGround追踪马里奥是否触地。
  • ScrollX测量屏幕的水平移动。
  • 速度(仅限马里奥)控制马里奥跳跃的速度。

设置地面动画

你已经用鼠标右键点击地面精灵并选择“复制”,复制了两个副本。将Ground-1拖动到屏幕的最左侧,使其最左侧的块接触到屏幕的最左侧。然后,将另一个地精灵拖到第一个地精灵的右侧。把边缘排成一行,地面看起来就像是一块实心的。

下面是每个地面精灵需要的代码块:

ground code block

这将地面放在屏幕的底部,然后简单地随着马里奥的移动滚动块。ScrollX是块的位置;0是单击绿色标志时启动的默认位置。你会注意到你不能一开始就向左移动。

对于第二个(以及更多的)接地块,在ScrollX+480*0中,每增加一个新的接地块,就增加一个数字。这将抵消它,使它滚动顺利。

马里奥的逻辑

这就是所有的代码块,但是Mario有更多的代码块。以下是他们各自的工作,并简要总结:

007Ys3FFgy1h1olkk8vxyj307o0773yl

这段代码在Mario移动时更改ScrollX变量。每当你按左键或右键时,马里奥都会朝着正确的方向走一步,将ScrollX增加3。如果你发现马里奥在你向左移动时翻转过来,点击他的精灵上的蓝色i并确保旋转样式设置为第二个选项。这将使他左右翻转,而不是一个圆圈。

mario costume changes

这里我们看到了处理马里奥服装变化的代码。当马里奥不在地上时,他就穿上了跳伞服。每当你向左或向右移动时,马里奥每十分之一秒就会在帧之间切换。放开箭头键,马里奥默认为他的标准框架。

mario ground touching logic

计算OnGround变量的简单代码。如果他碰到了一块地,OnGround等于1(真)。当他跳的时候,OnGround是0(假)。

mario jumping code

这两个代码块处理马里奥的跳跃速度。左边是一个街区,确保马里奥在地面上没有任何动力。如果他在空中,那么他的速度会被重力逐渐减慢,这是一个常数。只要你按下空格键,右边的方块就会让马里奥跳起来。他的跳跃声响起,速度将他推向空中,直到地心引力接管。

mario setup code

马里奥的最后一段代码已经全部设置好了。当您单击绿色标志开始时,音乐开始,所有变量都设置为其默认值,并且Mario在屏幕中间生成。

收集硬币

让我们回到硬币上。我们要确保当马里奥抓住一个的时候,它会发出声音然后消失。让我们为此编写一个单独的脚本——按函数分隔脚本是编程中的一个重要实践。一大堆乱七八糟的积木使得出问题时更难找出问题所在。

以下是我们的钱币收藏剧本:

coin collection script

这很简单:每当马里奥碰上一枚硬币,收藏的声音就会响起,硬币就会藏起来。在硬币动画代码中,我们放置了一个显示块,以便硬币在重新启动时重新显示。

卷轴硬币和云

你就快到了!由于马里奥不动,但地面滚动,我们需要确保硬币也滚动,以便马里奥可以收集它们。下面是它的工作原理:

coin scroll code

这将硬币放置在Y值处(即垂直屏幕位置),马里奥可以轻松地抓住它。然后,它使用与接地块相似的逻辑向马里奥滚动。请注意,我们已将滚动速率增加到0.75,以便硬币快速向马里奥移动。对于第二个和第三个硬币,我们将“y”字段增加到-40和-20,这样它们就更高了,马里奥就更难抓到了。在“设置x为块”(Set x to block)中,将第二个和第三个硬币的150*1增加到150*3和150*5,以使它们更靠近屏幕右侧。

云使用几乎相同的代码块:

cloud scroll code

同样,这会将云放置在特定的高度,然后随着马里奥的移动滚动它。对于第二朵在马里奥前面而不是后面的云,将集合x改为block(ScrollX*0.1)+(150*1),就像硬币一样。

添加边框

因为我们实现地面和硬币的方式,你会看到硬币卡在屏幕的边缘,直到他们滚动到视图中。这是难看的,所以你应该创建一个快速边框精灵,它的颜色与背景相同,以隐藏在左右两侧。

scratch mario border fixes

最简单的方法是在舞台上单击鼠标右键,然后单击“保存舞台图片”。打开这个油漆.NET使用移液管工具选择蓝色背景色。使用右下角的对话框添加一个新层。然后,使用矩形工具在屏幕两侧绘制一个填充的蓝色矩形。覆盖每个块的一半,然后删除背景层。

将此保存为PNG文件,并将其上载为名为Border的新精灵。既然你在屏幕上画了边框,你就可以把它完美地排列起来。

然后,您只需要几个街区,以便边界始终在前面:

scratch border code

拓展你的游戏

在这里试用最终产品!

我们一起准备了一个马里奥游戏的基础。你可以从这里为你的游戏添加很多元素。尝试添加超级蘑菇来给马里奥充电,**一些马里奥必须清除的坑,或者创建一个末级标志。有了在这里学习的构建块,您可以添加更多的精灵、变量和逻辑来创建任何您想要的东西。我们期待着您的建议!

我们想对Scratch用户dryd3418说一声,因为我们在本文的项目中使用了来自他的Super-Mario:Scroll&Jump教程项目的一些代码。要获得更详细的帮助,包括可以复制的脚本,请查看另一个**马里奥游戏的用户指南。如果你想走一条更简单的路线,请查看创建你自己的马里奥游戏项目,它可以让你拖放精灵来**一个简单的游戏。

请注意,在任何Scratch项目上,您都可以单击“查看内部”在编辑器中打开该项目,就像您用于自己的项目一样。这可以让你一瞥到有人用来让他们的项目工作的块,并可以帮助你走出困境时,你陷入困境。我已经将我的项目提供给所有人,所以如果需要帮助,请随意查看并查看代码。我也压缩了我在这个游戏中使用的所有资源,所以你可以下载它们来节省一些时间。

有兴趣把这个提高一点吗?查看Scratch For Arduino在该平台上构建项目。如果你已经准备好投入,那么就从“零开始”查看**iPhone游戏所需的一切

对于其他有趣的事情,你可以与您的孩子,看看这些网站的DIY工艺品和项目的儿童和青少年。

  • 发表于 2021-03-15 00:18
  • 阅读 ( 221 )
  • 分类:编程

你可能感兴趣的文章

最好的ps4游戏,适合所有年龄段的孩子

...高尔夫体验,就像你在马里奥运动会上看到的那样。学习基础知识很容易,如果你愿意,你可以进一步深入研究这些选项。 ...

  • 发布于 2021-03-18 17:39
  • 阅读 ( 667 )

5个免费的谷歌游戏,供儿童和成人玩和学习

从一个流行的卡门桑迪哥游戏的娱乐PC游戏,教你建立自己的游戏,这里有五个新的谷歌游戏,你应该看看。 ...

  • 发布于 2021-03-20 00:29
  • 阅读 ( 214 )

10成人和儿童免费在线临期日历

...们已经编辑了十个免费的在线降临日历,包括那些你可以自己准备。 ...

  • 发布于 2021-03-22 13:02
  • 阅读 ( 175 )

我们在马里奥卡丁车现场学到的10件事:家庭赛道,任天堂的混合现实赛车手

任天堂即将推出的一款更有趣的游戏是马里奥卡丁车直播:家庭赛道。由维兰工作室开发,这是一个标题,遵循喜欢的Labo和神奇宝贝去,试图采取任天堂的好玩的经验,并将其转化为现实世界。在这种情况下,家庭电路既是一...

  • 发布于 2021-04-17 11:34
  • 阅读 ( 140 )

razor为成人推出了一系列价格合理的电动滑板车

...,但改进的旅程。” 这并不是说剃须刀的滑板车在他们自己的方式上不强大。对于许多人来说,15.5英里每小时是足够的速度,特别是如果滑板车是用于娱乐或第一英里/最后一英里的运输。 到目前为止,Razor对电动滑板车的做法...

  • 发布于 2021-04-18 14:18
  • 阅读 ( 185 )

任天堂,优胜劣汰,以及让成人消失的力量

...毛?目前最好的例子是Yoshi的Woolly World,它就像一个超级马里奥兄弟的游戏,如果它是为一个沾满自己口水的蹒跚学步的孩子设计的话。多巴胺的释放机制并没有被隐藏:完成一个级别以解锁下一个级别;收集小饰品购买电源;...

  • 发布于 2021-05-01 16:54
  • 阅读 ( 90 )

任天堂与旧金山公共图书馆合作,教孩子们游戏设计

...到创造者的道路。”
 “我们希望他们学习关卡设计的基础知识,并开始思考**电子游戏的策略和创意,”杨说真的给他们一个一瞥,使用这些易于拿起和掌握的工具,已经在超级马里奥**商,他补充说,“像超级马里奥**者这...

  • 发布于 2021-05-04 01:18
  • 阅读 ( 193 )

《脱离接触的成人儿童文化指南:大下巴男孩接管互联网》

...戴尔·格里布尔(Dale Gribble),因为他冲进了国会大厦,马里奥(Mario)因为没有许可证就练习给排水,大红狗克利福德(Clifford)因为他公然滥用生长激素。就我个人而言,我认为我们需要取消华纳兄弟的著名角色,那个闻起来...

  • 发布于 2021-05-11 22:23
  • 阅读 ( 161 )

脱离接触的成人儿童文化指南:食物犯罪和病毒性面部感染

...of Zelda:Skyward Sword)正在被移植到交换机上,而不是新的3D马里奥游戏、Pilotwings 64的复兴,或者《塞尔达传奇:野性的呼吸》(Legend of the Zelda:Breath of the Wild)续集的深入信息。我想这很好,但是《狂野的气息2》会让塞尔达成为...

  • 发布于 2021-05-12 00:12
  • 阅读 ( 195 )

脱离接触的成人儿童文化指南:警告标志

...上看到的各种麻烦。本周的互联网警告从来都不乏“不要做你在网上看到的事”的故事,但这周,责骂达到了狂热的程度,所以我准备了一份清单,列出可能伤害你、你的孩子和西方文明的网上事情。不要躺在铺着床单的路中间...

  • 发布于 2021-05-12 01:58
  • 阅读 ( 198 )
w46b1610
w46b1610

0 篇文章

相关推荐