Gamemaker打砖块教程

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

教程

页1 of 13

引言

欢迎来到Gamemaker!本教程将告诉你如何使用游戏制作语言(GML)创建你的第一个游戏,将需要大约30分钟完成。我们希望它会教你用Gamemaker进行工作的重要基础,以及给你的游戏实验的基础和不断提高的同时学习所有关于这个难以置信的编程工具。

既然这是一个教程,我们准备重制一个每个人都知道的经典街机游戏打砖块!学习完本教程结束时,您将创建一个玩家控制的球拍,一个弹跳球,砖,墙,和一些其他的东西,所有这些都将学习Gamamaker如何工作,如何使用GameMaker Language(GML)编码和(我们希望!)在这个过程中体会到乐趣!

你将要开发的游戏会使用一些特殊的资源,我们已经为这个教程特别创建了资源。你只需在您的计算机上找到他们,请去Gamemaker屏幕的顶部菜单,并选择Help下拉菜单。你会看到一个选项标记Open Project在资源管理器。如果你选择了该项,那么标准文件浏览器将打开显示你的内容Gamemaker工程目录,你可以浏览“Assets”子目录,所有的资源都存储在“Graphics”(图片)和“Sounds”(声音)文件夹下。

同时还建议你打开帮助手册(按F1来对开),这样你就可以阅读教程中使用的函数的一些具体细节。

单击Next 按钮进入教程的下一页。

教程

页2 of 13

添加一些精灵

像前面介绍的,我们想复制一个打砖块游戏,所以让我们来创建一些游戏中要用到的基础的对象。首先我们需要为游戏中的砖块添加精灵,所以右击资源树精灵文件夹,选择第一个选项“Create Sprite”(创建精灵)

现在你可以命名你的精灵,使它可以明确说明是一个砖块的精灵,我建议使用“spr_brick”(前置是资源类型,帮助你在以后的大型游戏中非常容易使用),现在点击按钮“Load sprite”,然后浏览到这个教程的资源文件夹(如果你不确认在哪里可以找到,你可以点帮助菜单,并选择“用资源管理器打开工程”)既然你将浏览助手,然后你可以选择砖块精灵资源了。

这里面有几个关于精灵资源的不同的属性,但是现在我们只需要指定它的origin(中心),这指定它的X与Y位置,这将用于在游戏房间定位一个实例,可以看作是它的原点,这也用于转动与缩放于其他用途,现在我们只需要指定砖块中心即可,点击按钮(Center)你将会看到指定的origin跑到了精灵图的中心。

现在,我们的精灵砖块就做好了,接下来创建玩家球拍精灵。但是这次我们采用不同的方法,你可以看到另外的设置,导入助手。下面的文字,你将会看到我们这次将要用到的精灵。只需要将图片拖到主界面区域并松开鼠标。

这时你会看到一个对话框打开了,并问你你想要导入的资源类型(你应该选择sprite),然后就会创建一个新的精灵。使用该方法你可以快速简单地创建精灵、背景,只需要把它们拖进GM窗口中即可,现在可以为新的精灵命名了,例如叫作:spr_bat。然后指定它的原点为中心点。

接下来,同样创建俩精灵,一个是墙精灵,一个是球精灵。

用你想要的名字命名它们,然后关闭墙精灵,我们不用管它,但是对于球精灵,我们要多做

一点事。

第一件事就是指定中心为原点,第二你需要到标记为Collision Checking(碰撞检测)的界面,然后点击按钮(Modify Mask调整碰撞盒),在这里我们将调整碰撞盒(在GM中用于碰撞的区域),这里我们将其指定为一个椭圆,这样它就只覆盖球自己,要做到这个只需要简单的点击按钮ellipse在这个形状小节,像下面这样:

关于碰撞盒属性的更多信息,访问手册中的高级使用下的关于精灵更多内容一节。设置完成之后,关闭碰撞盒属性窗口与精灵属性窗口,保存一下你的游戏。下一节我们将继续。

点击Next进入下一章节。

教程

页3 of 13

创建一个墙对象

现在我们有了游戏的基础精灵素材了。现在我们开始来创建对象。一个对象是所有实例的基础类,而一个实现是直接显示在GM的房间中的。这意味着你可以有一个对象,但该对象可以有多个实例,而每个实例都有着同样的对象的同样属性。但是(既然它们是互相依靠的)它们可以被改变,也可以操作的互相独立的。好了,下面我们来创建我们的墙对象。

像创建精灵一样,右击资源树上的对象文件夹,点击创建对象(create object)设置。

现在给你的对象一个名字(例如:obj_wall),然后点击相关精灵图标,选定我们前面创建的墙精灵。

墙的实例将会被用来创建游戏区域的边界,它们用于停止玩家的球拍,防止它移动到房间外面,然后还要用于碰撞球,而使球总是在房间里面(除非球从球拍下离开了),但是我们还要使它不可见,所以它不能被玩家看到有实际的墙,这样房间看起来好看一些。

要让墙对象不可见,我们需要不选中对象visible(可见)选项。

一个不可见的对象仍然会执行碰撞,并且像其他可见对象一样运行其中的代码,只是它不再执行draw event(绘制事件)中的所有内容。所以在其中写代码也不执行,拖拉进去的东西也不行。

在继续下一章之间保存你的游戏。

点击Next查看下一章。

教程

页4 of 13

创建一个砖对象

外墙对象创建好了。砖对象的作用是让球碰撞它,并且会被球撞坏。像前面创建墙对象一们,下面我们创建一个砖对象。右击资源树下的对象文件夹,点击创建精灵设置。

现在给你的对象起个名字(例如:obj_brick),然后点击绑定精灵图标,指定为砖块精灵。

一个新的按钮现在出现在精灵名字下面,叫作Edit,这将会打开精灵属性窗口,所以点它,现在是我们精灵图中的更多的子精灵。

现在我们打开属性窗口,点击Edit(编辑精灵)按钮打开精灵编辑器,然后你可以看到一个

新的窗口,它显示砖块精灵有很多子精灵。这个数值就是image index(图像索引),你看,每个精灵都可以有一个变量:sub-images,它使精灵可选。这个子精灵可以显示一个接一个,这样就可以创建动画精灵,或者它们能被在不同状态(比如一个按钮未按时,按下时,抬起,放下等,所有的状态都有两个不同的子精灵)时被显示。

选择子精灵0,点击它,然后点击copy复制按钮,然后点击paste粘贴按钮,就添加了一个子精灵图。现在双击子精灵图1,打开编辑器,我们现在可以改变它的显示效果。我们现在为它指定不同的颜色,只改变它的颜色,这样使我们游戏中的砖块更加丰富多彩,要做到这样,去这个Image拖下拉菜单,选择colorize(颜色),它将会打开另外一个窗口,在这里,你可以改变子图像的颜色。

既然你对结果满意了,点击OK按钮,然后就保存有了新的颜色的子精灵图(拉动绿的拉杆颜色就会变动)。现在重复上面的操作,直到你有至少4个不同颜色的子精灵图。

当你有了不同子图像的砖块精灵,关闭精灵编辑器,并返回砖块对象。我们现在来告诉GM,不要用动画来展示精灵,而只是随机显示子精灵。添加一个create event(创建事件),然后拖进去一个代码动作(控制面板下的代码)到里面。这将会打开代码编辑器,这里你需要输入以下代码:

代码的第一部分设置image_speed(图像速度)为0这个速度用于显示精灵图不同子图像的速度,默认值为1,即每帧显示一个。将其设置为0,就是告诉GM,不用动画显示精灵图,只是显示子精灵。第二行是一个随机选择子图像。就是在创建时,选择不同的颜色。

保存你的游戏。

点击Next进入下一章。

相关文档
最新文档