GameMaker标准中文教程(2)

2019-04-22 21:58

这相对来说会复杂一点。左边有关于物体的一般信息。在中间是物体发生的事件表列,在右边是物体对应事件的多种不同的动作。事件和动作将会在后面的章节介绍。

同样你需要给物体一个名称。然后你要指出用来显示物体外观的精灵图像。在精灵图像方块中单击鼠标左键,或在靠近它的菜单按按钮单击鼠标左键,将立刻弹出一个菜单,其中包含了所有可用的已经添加的精灵图像。选择一个你想要用来代表物体的精灵图像。如果之前没有添加精灵图象,可以点击“新建”按钮来添加一个精灵图象。这样会比先定义精灵图象在调用快些。

在下面有两个复选框,一是“可见”,可见表示在舞台上物体是可看见的。一般大部份游戏在舞台上物体是可见的,但有时无形的物体是相当有用的,例如,你可以使用它们来描述怪物运动情况。隐形的物体同样作出事件反应,且其它的实例也会发生碰撞事件。标示“故态”的复选框指定物体是否是一个静止物体(像墙壁)。和实体物体碰撞与和非实体物体碰撞效果是不相同的。一般固态的都用于描述不运动的物体。这些后面有更多介绍。

事件

GameMaker使用事件驱动物体产生动作。那就是说,当游戏发生某些事情的时候,物体的实例会得到事件(一种告诉物体发生什么事的信息)。 物体实例可以通过执行动作来响应这些信息。每种物体,你都可以设置事件,并说明该事件发生时,物体实例该做些什么。物体的实例添加事件和此事件对应动作后,会在发生此事件时产生相应的动作。这看起来似乎复杂了点,但事实上很简单。比如事件鼠标左键单击这个事件发生,而在这个事件中添加了播放一个声音的动作,那么当在物体的一个实例上点了鼠标左键后,会播放一个声音文件。你可以使用一个非常简单的拖放方法来指定动作。

在物体属性表单的中央,有事件列表,列出物体必须作出反应的事件。最初是空的。你可以增加事件到其中,由单击“添加事件”按钮。将出现一个事件列表的小窗体。在里面,你可选择你想要增加的各种事件。例如,如果是键盘事件,你必须选一个按键。

在窗体右边列出了全部的动作,由小图标表示,它们已经分好类。在下一个章节我将描述所有的动作和它们的功能。

在事件和动作之间有动作列表,列表包含当前事件的动作。要增加动作到列表,用你的鼠标拖曳它们,从右边拖到列表中就行了,它们将照拖曳顺序排列,并有一简短的描述。对于大多动作,你需要设置一些参数。这些也将会在后面章节有介绍。

现在你可以开始增加动作到不同的事件里,用鼠标左键点选要设定的事件来选择,然后在其右方动作列表中拖拉动作到事件对应的动作菜单里(注意删除一个

事件时所有的事件里的动作会被全部删除。还有如果事件里动作列表为空,那么这个事件也会自动被清除)。

你可以使用拖曳更改列表中动作的顺序。当拖曳时假如你按住键,将会复制这个动作。甚至可以在不同物体中的动作列表之间使用拖曳(将一个动作拖曳到不同物体)。当你在动作列表中的一个动作上点选鼠标右键时,会弹出一个菜单,其中你可以删除动作(也可由使用按键来完成)或复制和粘贴动作。按+键可以选中所有动作。当你将你的鼠标指针放在一动作上方不动,会显示鼠标停留的动作的简介。更多有关动作的信息后面还有介绍。

用Delete键可以删除事件以及它所有的动作 。假如你想要指定动作到一不同的事件请单击标示更改的按键,并选择你想要的新事件(新的事件不能是已经被使用过了的)。某些事件名称的旁边有一菜单符号紧邻着它表示在里面为事件的集合,有很多可选事件。当你在菜单上单击鼠标按键,或在事件名称上点鼠标右键,出现菜单让你可以挑选想要更改的事件。 下面为几个常用事件介绍:

建立事件:当物体的一个实例被创建(或者说是放到场景上时)触发事件,是物体实例的第一个执行的事件,一般用来为实例设定特定变量以及定义物体开始时的运动或者要发生的动作。

破坏事件:当实例在场景中被删除时触发的事件。更精确地说,它发生在实例被摧毁之前的瞬间,所以当事件在执行时,实例还存在!例如你可以让一个魔鬼死亡/消失时发出大叫声(播放一个声音文件),或者使用它来更改游戏分数,或者创建别的物体。

计时器事件:每个实例有12个定时时钟,可以精确控制物体在某刻发生某个动作,你可以给时钟设置一定的动作,再给时钟设置一个倒计时步数,然后时钟倒数计时直到步数到0,在那个瞬间时钟事件触发,时钟里的动作执行。要指定动作到一给定的时钟,首先你需要在菜单中选择它。时钟非常有用,你可以使用它们去让特定的行为不断发生。例如一个怪物在每20步更改它运动的方向一次(要实现这中效果你可以在时钟事件里的动作里再设定时钟这样就会反复被激发)。

步事件:步事件发生在游戏的每一个步里,因此你可用于放那些需要被连续执行/一直发生的动作。例如,假如一个物体要会跟随别的物体时,你可以在步事件里把这个物体坐标设为要给跟随物体的坐标加减一点请小心使用这个事件,在有步事件的物体中,不要用过多复杂的动作,否则会大大减慢游戏速度。其中有三种不同的步事件。通常你只需用默认的步。你也可以通过弹出菜单选择开始步和停止步事件。开始步事件是在每个步的最起初执行,注意它在发生任何事件之前。正常的步事件是物体实例被放到它们的新位置之前执行。停止步事件是在步的结束时执行,在物体绘制之前。常使用在如按照当前方向来更改精灵图像。

碰撞事件:不论何时当两物体实例碰撞(也就是,它们的精灵图像重迭)时,发生碰撞事件。精确地说是两个碰撞事件发生:因为每个实例各设置了一个碰撞事件。实例可以对碰撞作出反应。要设置碰撞,先点碰撞事件菜单,再选择你想要定义碰撞事件的物体,其次你把动作放在动作列表里。

实例与一固态物体和一非固态物体碰撞时是有差别的。首先,当在碰撞事件中没有添加动作时,什么也不会发生:当前的实例保持原来的运动,即使被碰撞的物体是故态也如此。当碰撞事件包含了动作时,则出现下面的情形:当被碰撞物体是固态物体,实例先被放回它先前的位置(即在碰撞发生之前的位置),接着执行碰撞事件。最后,实例被放到它的新位置。当被碰撞物体不是固态物体时,原先实例不会被放回,实例仅在它当前的位置上执行事件,并且,碰撞不会检查两次。稍微想一下就明白这是理所当然的。因为物体不是固态物体,我们可在它上面移动。碰撞事件有许多用处,物体实例可以使用它来实现墙壁的反弹。你可以使用它来销毁物体假如它们被子弹击中等等。

键盘事件:当游戏者按下键盘上的键时,按键事件就发生了。每个按键,可以设置不同的事件。在菜单中你挑选需要被定义按键事件的按键,然后再添加动作。通常,游戏里只有少数的物体会用到少量的按键。当压住按键不放时,该键所定义的动作会一直循环执行。有两个特别的按键事件,一个称为“没有按键”,当没有按下键时,事件会发生在每步中;第二个称为“任意键” ,当任意键被按下时发生。注意在键盘右方数字小键盘中,要按按键激活数字键盘,数字按键事件才会有作用。

鼠标事件:当鼠标光标停在代表精灵图像的实例上时,产生了此物体实例的鼠标事件。按照鼠标的按键情形而定,有<没有按键>,<左键>,<右键>,或<中键>事件等等。当游戏者一直按着鼠标按键不放时,鼠标按键事件会在每一步中发生。按下事件是当按键被压下时发生,注意只发生一次。释放事件是当压下的按键被放开时发生。注意事件只在鼠标光标移到实例上时才发生。如果你想在任意位置都可以响应鼠标事件,你可以用全局鼠标事件。还有两个特别有用的事件,一个为鼠标移到物体实例上时发生的事件,一个为鼠标移出物体实例时发生的事件。鼠标滚轮的滚动也可产生事件。最后还有些关于游戏手柄的事件。 其他:

还有一些其它的事件在游戏中也是很有用的。可以在菜单中找到: ·离开房间: 当实例的位置完全在场景的外面时触发事件。 ·与房间边界碰撞后触发:当实例与场景的边界相交时触发事件。

·游戏开始:当游戏开始时触发了事件,适用于第一个场景中全部的实例。它在房间开始事件之前发生(后面有介绍)甚至在场景中物体实例的创建事件之前发生。它经常用来定义某些背景音乐和初始化某些变量,或加载某些文件资料/游戏动画等。要注意只能由一个物体定义此事件。

·游戏结束:当游戏结束时事件发生到全部实例。例如用来在游戏结束时储存特定数据。同样的,只能由一物体定义此事件。

·房间开始:当房间开始时发生,用于初始化房间中的实例,它发生在创建事件之前。

·房间结束: 房间结束时发生。

·生命数为0:GameMaker嵌入了一个生命系统。可用来设置玩家的生命数,有一个动作可设定和更改生命值,当生命值小于或等于0,就发生该事件。它通常用于结束或重新开始游戏。

·健康值为0:GameMaker也嵌入了一个健康系统。有动作用于设定和更改健康值。当健康值小于或等于0时,该事件发生。这通常用于从新获得生命或重新开始游戏。

·动画结束:一个动画由许多图像轮流显示而组成,在最后一个显示的图像之后,会又从第一个图像开始,事件正是在那瞬间发生。例如,可以用于更改动画,或删除实例。

·路径结束:事件发生在当实例沿路径运动并到达路径的终点时,后面对路径有更多的介绍。

·用户自定义:有八个事件。它们通常不会发生,你可以用代码来调用它们。 绘图事件:可见的实例会在每个步骤将把精灵图像绘制在屏幕上。特别注意当你在绘制事件中设定动作后,物体不会被绘制出,取而代之的是执行对应的动作。所以一般用一个不用在舞台上显示出来的物体添加绘制事件。还要注意绘制事件只有在当物体是可见时才可以执行。

按下键:类似于按键事件,但是它只发生一次,只在当按键被压下时,且不是连续的。当你想要让一个动作只发生一次时会用到。 放开键:发生一次,在当按键被放开时,且不是连续的。

清楚GameMaker处理事件的顺序是非常重要的,各种行为发生顺序如下: ·开始步事件->时钟事件->按键事件,按键压下和按键释放事件->鼠标事件->正常的步事件->(现在全部实例在它们的新位置上)->碰撞事件->结束步骤事件->绘制事件。

当相对应的情形发生时,如创建,摧毁,和其它的事件会被执行。

动作

动作指的是要执行的行为,放置于事件之中。不论何时当事件发生时就会执行设定的动作。GameMaker中有大量可用的动作.清楚它们的功能是很重要的,本章节中我将说明一下简易模式下的全部动作。GameMaker默认动作已经分好六组,当你把鼠标光标固定放在一个动作图标上方,会显示一个提示气球提示它的功能。

只要拖曳动作图标到动作表列就可以把一个动作放在一个事件中。你也可以通过拖曳更改动作在表列中的次序。拖曳时按住键可以复制动作(在不同物体属性窗体之间你也可以拖曳和复制动作)。

当你添加一个动作,通常会弹出一个属性窗体,你可以为动作填入一定的参数。许多动作都会有二种参数:在窗口上方你可以指定动作要用于哪个实例,默认值是自己本身,意思是动作将会发生于指定的物体实例。在一碰撞事件中,你也可以把动作作用到涉及在碰撞中的被碰撞物体,这样你可以摧毁被碰撞的物体。最后,你可以选择把动作用到指定的物体里全部的实例中,比如这样你就能更改全部的红色球成为蓝色球。第二个参数是标示着“相对”的复选框,意思为当你输入一个数值时,是相对于当前的数值产生变化的。例如,你可以在当前的分数加减值,而不是把分数直接更改成新的数值。你还可以双击已添加的动作图标来更改动作参数。

下面是各种动作分类的页面:

移动动作

第一组的动作是由与物体运动有关的动作集合成。有下列动作:

开始朝某个方向移动

使用此动作使一实例在特定的方向开始运动。使用箭号按键来指出方向,使用中央按键来停止运动。可以设定物体运动的速度。速度是用每步几个像素来给定,默认值是8,速度最好不要使用负值,你可以规定多种方向,例如样你可以让一怪物开始往左或右方移动。如果选中多个方向,物体会随机选中其中一个方向运动。

设定运动的方向和速度

第二种方法是使用蓝色箭头来定义一个运动,这样你可以指出一个精确的方向,是一个介于0和360度数之间的角度值,0代表水平向右。方向是逆时针旋转的,如90度为一朝上的方向。假如你想要一任意的方向,你可键入任意方向random (360)(意思为在0-360之间任取一随机数值)。注意“相对”前的复选框,假如你勾选方框,新的运动设定会增加到旧的运动设定上。好比说,假如实例是朝上运动而你增加一点向左的运动,最后新运动将是朝左上方运动。


GameMaker标准中文教程(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:政治初三材料复习题l老师用

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: