【GML教程】GML入门级教程

2022-05-19 13:32:16   文档大全网     [ 字体: ] [ 阅读: ]

#文档大全网# 导语】以下是®文档大全网的小编为您整理的《【GML教程】GML入门级教程》,欢迎阅读!
教程,GML,入门
GML教程】GML入门级教程

作者:辉夜



我尽量用最能明白的话把最基础的代码原理讲解清楚,但在此之前,请先弄明白代码需要在哪个控件里面写入(动作控件里面),对象的每个动作都有什么效果。





首先是如上图的动作分类,请先明白各项的含义。在每个动作里面都能够写入代码,这些动作只是提供触发的条件,当动作触发时候,便能够执行里面的事件。

需要注意的是,CreateStep是最常用的,前者是创建时候触发,后者是时刻都在进行的触发。一开始新手会有个误区,便是Create是每个对象都必须建立的,其实Create可有可无。一些对象如绘制某个图像,甚至只有一个Draw(绘制)的动作。 选好某个对象后,你显示出现如下内容,这里以Step动作代码为例:






step里面control里面能够找到Code事件,基本上代码写在这里就成了。里面写入的代码,就能够代替其它控件产生的效果(当然,你得写对了)。

打开Code事件,又会出现以下的代码编辑器,让你能够在里面编辑代码。





现在在里面写入了一个小小的代码(代码如何书写,以及GML都包含什么代码命令,请参阅GML帮助),move_towards_point(x,y,sp) ——以速度( sp )朝( x y )位置移动实例。

然后你运行,你就会发现你创建的这个物体会以速度sp朝着你的鼠标移动了。这就实现了最基本的功能。

下面来说下,每个对象固有的属性(这点在GML里面都有)。每个对象都包含如下基本内容:

x —— 对象所在的横坐标,给它赋值则改变对象所在的位置 y —— 对象所在的纵坐标,给它赋值则改变对象所在的位置 speed —— 对象当前移动的速度(像素/每步),不设置或者没影响到对象的速度则为0,给它赋值则改变对象移动速度(常跟direction ——对象当前方向,配合使用)

然后以下命令可以改变当前对象的状态:

hspeed —— 速度的水平部分,即水平速度 vspeed —— 速度的垂直部分,即垂直速度

direction —— 对象当前方向( 0-360 度,逆时针, 0 = 朝右) speed —— 对象当前速度(像素每步) friction —— 当前阻力(像素每步) gravity —— 当前重力(像素每步)

gravity_direction —— 重力方向( 270 朝下) motion_set(dir,speed) —— 以参数(方向,速度)设定运动

motion_add(dir,speed) ——


以上命令基本上就可以实现对象的基本运动想要改变对象哪个状态,你便再Code里面写入哪个代码,并给它赋值(例如让速度为5,则写入speed=5即可)。此处主要你要用在哪个动作里面,主要区分动作的触发条件。

另外说明一点,命令所附的值不但是常数,还可以是变量,当然,先给变量赋值。 例如:

Step动作里面(Step动作达到的效果——让代码时刻进行着)写入: x_speed=5; ——给x_speed变量赋值5 hspeed=hspeed+x_speed; ——水平速度每步加上x_speed的值

更多的代码效果及命令书写方式请参阅GML的使用帮助说明。


本文来源:https://www.wddqxz.cn/1c7ef2ef854769eae009581b6bd97f192379bfc0.html

相关推荐