内容发布更新时间 : 2025/1/8 18:31:35星期一 下面是文章的全部内容请认真阅读。
GameMaker教程 姓名
基础篇
数量的增加:
两种格式: a = a + 1
a + = 1 两种相同效果。
坐标:
坐标是确定某个物体位置的,有了它,我们便可知道物体的位置。
x 当前物体的x坐标 y 当前物体的y坐标
x , y 表示某个物体的总坐标格式 例: x=100
y=200 表示本物体的x坐标=100,y坐标=200。物体坐标100,200。
坐标的变化:
当一个物体向左移动时,它的x坐标会慢慢的减少,y坐标不变;向右移动时,它的x坐标则会增加;向上移动时,y坐标慢慢减少,x坐标不变;向下移动时,y坐标慢慢增加。
练一练:填空。
注:每按下某个键,减少或增加3。
Sprite(精灵图片):
Sprite是游戏的最基础的东西,每一个物体都能是由精灵图片组成。在左边的一栏的第一个。(图1) 右击后点击第一个创建。(图2)
□ Sprites □ Sprites □ Sounds
□ Create sprite □ Backgrounds
□ U复制 □ Paths
□ Create Group □ Scripts
按名称排列(Z) □ Fonts
□ Time Lines □ Objects
□ Rooms 图 2
图1
创建后,可以看到几个按钮(图3)。
载入精灵:载入一般已经产生连环效果的图片或静止的图片。 保存精灵:保存当前精灵图片,以gmspr格式呈现。 编辑精灵:可以对精灵图片进行美化或修改,也可以添加一些以连环图片在一张图片的精灵。 编辑笼罩层:可以修改碰撞盒。
中心:把中心设定在图片的中心位置。 完成:完成该精灵的修改或创建。
练一练:操作。
创建一个图片,并且载入GameMaker 8.0 \\ Sprites \\ Maze - Platform文件夹下的apple图片,把中心确定在图片中心,并把名字命名为spr_apple。
Object(对象):
Object是游戏中最核心的东西(在Object里还有更核心的)。在左边的一栏的第8个(高级模式)。创建的方法和图片一样。
右边一栏有7个选择,分别为:move、main1、main2、control、score、extra、draw。分别表示:移动动作、主要1、主要2、控制动作、分数动作、粒子、绘制动作。
例1:创建两个图片,画上两个不同颜色的球,并且创建两个属于他们的对象。然后,使A球撞击B球后,两球同时消失。
这道题目看似很难,其实十分简单。这是最最基础的碰撞的学习。
首先,创建两个球的图片,并且命名为spr_q1、spr_q2。再创建两个球的对象。点击精灵处的(原来显示
然后,点击添加事件。点 ,选择q1。下面就是要选择碰撞到q1的效果了。点
击右边一栏的main1。拖动到“动作”的大栏里。这个按钮的作用是消失自己或他人或
对象。
最后,关闭q2,打开q1。和添加q2碰撞相同,只不过点击 后,选择q2。
练1:创建两个图片,画上两个不同颜色的球,并且创建两个属于他们的对象。然后,使A球撞击B球后,A球消失。
Alarm(计数器)
Alarm是一个计数器,可以用于等待时间、代谢的时间等。Room_speed为一秒,一般默认30。
例1:让球1等待5秒后开始向右移动。Speed = 2。
这一题十分简单。首先创建图片以及物体。在该物体的添加事件里选择(create)。点击main2,拖动第一个(钟形)。在number of steps里输入5*room_speed(或150)。点击完成。
好了,下面点击添加事件,选择“A_计数器”,点击Alarm 0。点击move,拖动第一个(红颜色八方向箭头)。朝右的蓝色箭头,如果成功,将变为红色。速度填上2。即可。
练1:让球1等待10秒后开始向右上移动。Speed = 1.2 。
Step(步)
这个你可以理解成:不停地运行??
Keyboard(键盘)
这个里面有三种:键盘、按下键盘、松开键盘。 键盘:一直按下就反复执行命令。
按下键盘:一直按下算一次,只执行一次命令。 松开键盘:前两项按下后松开发生指令。
(其他)
里面有一些较简单的判断,帮助制作游戏。
Draw(绘画)
所有的画图代码和按钮必须再次敲入,而且此处的画也是不停地运行??判断。
代码(GML)
1、 point_direction (x1,y1,x2,y2)
此代码表示了 x1,y1 与 x2,y2 之间的方向。
例:point_direction ( x , y , mouse_x , mouse_y) 表示该物体与鼠标的方向。
2、 point_distance (x1,y1,x2,y2)
此代码表示了 x1,y1 与 x2,y2 之间的距离。
例:point_distance ( x , y , enemy1.x , enemy1.y) 表示该物体与enemy1的距离。
3、 random ( x )
表示一个随机的实数,范围从0至x 。数值总小于x。
4、 irandom ( x )
表示一个随机的实数,范围从0至x 。数值总小于x,总为整数。
5、 choose ( var1 , val2 , val3 ,??)
随机选择其中一个参数。最多可以有16个参数。
6、 global . 变量名
一个全局变量。
7、 var
有时,你需要让某个变量只在当前一段代码中使用,而又不想浪费内存,又怕与其他变量混淆。这时你需要用到此代码。
例:var xx , yy;
xx = x + 10 yy = y + 10
instance_create ( xx , yy , ball )
8、 other 涉及到碰撞对象的实例 all 所有实例
9、 a [ 0 ] 数组
10、 if ( <表达式>) <语句> 或 if ( <表达式>) {<语句>;<语句>;}
11、 repeat ( <次数> ) <语句>
12、instance_number ( obj )
表达该object的数量。
13、instance_destroy ( )
消失自己。