GameMakerStudio2 Arena Shooter(竞技场射击)图文教程(2)主角射击

分类栏目:gamemaker教程

372

GameMakerStudio2 Arena Shooter(竞技场射击)图文教程
本节说的是射击,接上回的

GameMakerStudio2 Arena Shooter(竞技场射击)图文教程(1)主角移动

创建子弹精灵 导入子弹素材 设置原点

创建对象 链接精灵

之后 我们想要 按下鼠标左键的时候创建子弹实例

在玩家对象o_player step中

编写:

 

解释:

mouse_check_button 检测参数 返回真假 mb_left 鼠标左按键

检测是否按下鼠标 按下的话返回真 被if判断是否执行下面的  这里提供的函数只有接口 我们看不到内部情况 只懂返回

下面instance_create_layer() 创建实例 按要求填写参数 前面2个位置参数 图册参数 对象名

layer代表当前对象的图层 或者可以写图层名字 “xxx”

 

 接下来我们到 子弹对象中 添加事件 创建

direction内置方向变量 存储point_direction()获得的方向 子弹飞行方向

想要效果子弹发射出去偏移位置 方向加random_range()获得的-4到4 返回的随机数 相加涉及到角度与整数的相加

speed 内置的 设置速度

image_angle 设置子弹旋转

现在我们继续之前的功课 现在应该设置实例层

实例层的深度决定了层的高低 那个在前 那个在后 深度越深 越在下面

创建子弹的实例层 命名 

 

然后修改o_player对象中创建的子弹实例代码中的第三个参数

layer 改为

我们发现子弹发射时不会停歇 所以我们需要降温 

在o_player 事件添加 创建事件

修改o_player 事件 判断根据cooldown是否发射 发射后变化cooldown的值 直到再次发射

 

运行可以看到发射间隔变慢