幻想森林

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 3359|回复: 3

[心得] Game Maker 8.0 ,触发事件(Trigger events)的用法

[复制链接]

335

主题

782

帖子

1万

积分

版主

Rank: 7Rank: 7Rank: 7

积分
12742
发表于 2009-12-30 14:41:12 | 显示全部楼层 |阅读模式


触发事件(Trigger events)是 Pro 版专用的功能。
在 Lite 版中也可以使用,只是被隐藏起来了,无法编辑。

它是用来做什么的呢?

举例来讲,在 GM7 里,如果有“按上键”和“按右键”两个事件,同时按右上两键的话,会同时执行它们对应的动作,而非哪个都不执行。

在 GM8 里,你可以在触发事件中,设定一个类似“同时按右上两键”的事件。

位置:
  1. Object Properties -> Event -> Trigger -> Add / Modify Triggers
复制代码

写法:
  1. {
  2. return keyboard_check( vk_up ) && keyboard_check( vk_right )
  3. }
复制代码

此外还可以为这个触发事件,设定一个 Constant name ,例如 trg_rightup 。
如果需要在此对象的其它代码中,激活该触发事件的动作,可以这样写:
  1. event_perform( ev_trigger , trg_rightup )
复制代码

需要注意的是,上边这句执行的是“该触发事件的动作”,而不是“该触发事件”。
如果在“同时按右上两键”事件代码中,含有“在屏幕坐标范围内”的约束条件,那么直接用 event_perform() 会超出屏幕向右上移动啦。
所以在灵活使用 Constant name 时不要忘记写约束条件。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

50

主题

742

帖子

402

积分

版主

自定义头衔

Rank: 7Rank: 7Rank: 7

积分
402
发表于 2010-1-1 14:38:43 | 显示全部楼层
可以理解为支持在GM8中枚举的事件中,自定义更多的组合事件么?

也就是说扩展了原有的事件触发条件了?
Style-C
回复 支持 反对

使用道具 举报

335

主题

782

帖子

1万

积分

版主

Rank: 7Rank: 7Rank: 7

积分
12742
 楼主| 发表于 2010-1-1 18:19:35 | 显示全部楼层
是任意事件

写在 step 里加个 if 也一样。
回复 支持 反对

使用道具 举报

8

主题

37

帖子

1072

积分

⑥精研

积分
1072
发表于 2010-5-14 18:10:27 | 显示全部楼层
範例看不太懂ˊˋ
意思是跟在step裡加入
if(keyboard_check( vk_up ) && keyboard_check( vk_right )){
//doing something
}

意思一樣嗎?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|幻想森林

GMT+8, 2024-4-27 02:41 , Processed in 0.022752 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表