绘制动作只有在绘制事件中才有意义,基本上在其它的地方它们是被忽视的。请记得绘制不同精灵图像和背景图像,它的执行速度是相当地缓慢,所以只有在一定需要时才使用。
绘制一精灵图像
你指定精灵图像位置(以当前实例位置为原点,可指定相对或绝对位置)及精灵图像的子图像(子图像数值是从0往上加)。如果你只想要画第一帧子图像,使用数值-1。
画一背景图象
你指定背景图象位置(绝对或相对)和图像在房间中是否要背景平铺显示。
绘制文字
你指定文字和位置。“#”符号在文字中是被解释为换行(如果你想绘制“#”号,则要用到“\\#”。),这样你就可以绘制多行文字。假如文字以引号或双引号引住,则它是被解释成一表达式句。例如,你可以使用‘Score:’+String(Score)来显示分数的数值。(分数变量(Score)贮存现有分数,函数String()将分数(score)数值转成字符串形式,+用来结合二个字符串)用类似方法你可以绘制显示任何其它的变量。
绘制变形文字
和上一个动作有类似但是这个动作你可以指定在水平以及竖直方向上的拉伸比例值来改变文字大小,还可以指定文字旋转角度。
画一矩形
你设定矩形二个对角的坐标,使用绝对坐标或相对于当前实例位置的相对坐标。
绘制水平渐变方形
使用从左到右的渐变颜色来绘制一个矩形,你指定矩形的渐变颜色以及坐标。
绘制垂直渐变方形
和上面动作相同,这里渐变是从上往下渐变。同样你指定渐变颜色以及矩形坐标。
画一椭圆
你设定椭圆外接四边形的对角坐标,使用绝对坐标或相对于当前实例位置的相对坐标。
绘制渐变圆形
同上但是这个动作中你指定由中心向外渐变的渐变颜色。
画一条线
你用线段两端点的坐标设定绘制一条线,使用绝对坐标或相对于当前实例位置的相对坐标。
绘制箭头
你指定两端的坐标以及箭头的大小尺寸。
设置绘制颜色
定义绘制时的颜色。让你设定颜色用来绘制各种形状/文字等(但是设定颜色对绘制精灵图象及背景无任何影响)
切换显示模式
用此动作你可以更改屏幕模式从窗口到全屏幕,或切换回来。你可以指定是否去切换模式或是直接到窗口(全屏幕)模式(此动作在调试的模式中无效!)。
从游戏截图
使用这个动作可以截下游戏窗口当前的图象并保存为图象。
创建特效
可以创建简单的粒子效果。可以定义类型,坐标、尺寸、颜色、层次等信息。如果你想创建复杂的粒子效果,后面有介绍。
变量与表达式
在许多动作里你都需要为参数赋值。除了输入一数字,你也可以输入一公式,例如32 *12。但事实上,你可以输入更加复杂的表达式。例如,假如你想要将水平的速度加速到两倍,你可以设定它成为2*hspeed,在这里hspeed 是可以设定实例当前的水平速度的一个变量。你可以使用许多其它的变量,最重要的一些变量是:
x:实例的x-坐标值 y:实例的y-坐标值
hspeed:水平的速度(每个步多少像素) vspeed:垂直速度(每个步多少像素)
direction:当前运动的方向,以度数(0-360)表示 Speed:当前在方向上的速度
visible:物体是否可见,可见visible=1,的或不可见的visible=0 image_index:该变量表示动画精灵图象当前显示的子图象。
image_speed:该变量表示动画精灵图象播放子图象的速度,如果值大于一,会跳过某些子图象。
image_scale:图像放大缩小的系数(1=等比例)
image_single:变量指定当前精灵图像中哪个子帧必须显示,假如你设定它到-1 (预设)就让帧形成循环,不然的话始终只有显示指定的帧(开始的号码为0)。 Score:当前的分数 lives:当前的生命数 mouse_x:鼠标的x-坐标 mouse_y:鼠标的y-坐标
大部份的这些变量你可以使用改变及设定变量的动作来更改。你也可以指定一个数值来定义属于自己的变量(第一次赋值时不要勾选“相对”,因为“相对”这种属性在变量定义前是不存在的,没有相对性的)。然后你可以在表达式句中使用这些变量。这些变量只是相对于当前物体实例而言的。只有当前实例才能直接调用。要创建一全局变量,输入“global”并在变量名之前加入一点 (.)。例如可以定义变量“global.hhj”。
你也可以访问其他物体的变量,在物体名称之前输入一圆点,例如,假如你想要一颗球移到硬币(coin)坐标那里,你可以设定球的位置成(coin.x,coin.y);在一碰撞事件中你可以使用other.x得到被碰撞物体的x-坐标。在有条件表达式你可以使用比较,如“<”,“>” 等等。
在你的表达式中你也可以使用函数。例如,变量函数random(10)可得到10以下的一任意随机实数值,如此你可以设定例如速度大小或运动的方向值为一任意的数值,更多功能及使用方法后面会有详细说明。
房间
现在你已经在事件和动作中定义了物体的行为,紧接下来就是创建在游戏中的房间或关卡了。任何游戏都需要至少一个房间,在这些房间中我们可以放置物体实例。一般游戏开始时会显示第一个房间,(除非你设置了跳房间的物体),其中的实例会依照创建事件中的动作执行各种动作。
创建房间时有许多选项和功能,除了添加物体实例你还可以设计背景,定义视角和使用图块等。大部份的这些选项会在后面讨论,这章我们将只讨论一些基本设定--增加物体实例,和背景图像的设定。
要创建一房间,从添加菜单中选择添加房间,则将出现下面窗体:
在窗体的顶部有一工具栏。这里你可以定义网格的大小。或者你也可以定义是否显示网格或者背景等。隐藏房间的某些东西有时候设计起来会方便很多。你应该知道,即使物体被设置成了不可见,但在添加到房间里依然是可见的,在游戏运行时会变为不可见。工具栏中还有“撤消”按钮和清空按钮。当设计好之后按“确定”按钮保存设置。
在左边你将看到三个标签(在高级模式下会有五个)。在物体标签中你可增加物体实例到房间。在设定标签中你可以为了房间指定许多设定。在背景标签中你可以为房间设定背景图像。
添加实例
在房间设计窗体的右边你可以看到当先设计中的房间,起初它是空的,有一灰色背景。
要添加实例到房间中,首先选择物体标签。第一是选择想要增加的物体,由菜单图标上的按键点选(或在左边的图像区域中点一下)。物体的图像出现在左边(注意在图像上有原点,实例会自动按原点对齐网格)。现在在右边房间区域中点选你的鼠标按键左键,一个物体实例出现了,而它将定位到指定的网格上(你可以在设定中更改网格)假如当置放实例时按住键不放则此实例不会对齐到网格上。在添加物体实例的时候,如果按住
你会注意到,假如你在原来的实例上面置放(按鼠标左键)一实例,原来的实例会消失了,通常是你想要的,但是有时未必如此。当你不勾选“删除重叠”时,就不会出现原来实例消失的现象。
当你右击物体实例时按住