设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2895|回复: 3
打印 上一主题 下一主题

[已经解决] 怎么设置几秒内走了多少步触发事件

[复制链接]

Lv2.观梦者

梦石
0
星屑
293
在线时间
70 小时
注册时间
2016-8-29
帖子
41
跳转到指定楼层
1
发表于 2016-9-2 00:21:34 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式

加入我们,或者,欢迎回来。

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

x
比如25秒内走完10步触发事件

Lv2.观梦者

梦石
0
星屑
293
在线时间
70 小时
注册时间
2016-8-29
帖子
41
4
 楼主| 发表于 2016-9-2 10:00:55 | 只看该作者
玄天 发表于 2016-9-2 01:28
设定定时器为你要的时间。同时设定一个开关。

建立一个『并行处理』的事件,触发条件为上述的开关ON。内容 ...

谢谢你,中午回去试
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
311
在线时间
204 小时
注册时间
2007-2-4
帖子
1817
3
发表于 2016-9-2 01:28:39 | 只看该作者
本帖最后由 玄天 于 2016-9-2 09:19 编辑

设定定时器为你要的时间。同时设定一个开关。

建立一个『并行处理』的事件,触发条件为上述的开关ON。内容如下:
◆代入步数到变量A
◆条件分歧:计数器 = 0
  开关OFF(关闭事件)
◆否则:
    ◆条件分歧:若变量A = (你规定的数值)
     (执行内容)
      (最后设置上述开关为OFF)


『并行处理』的意思就是他会不断重复事件内容,但是期间玩家可以自由活动。这样就相当于一个无形的判断机制在不断获取当前的数值,一旦符合条件就执行。最后记得把开关关掉来让『并行处理』结束,这样一来不会出现重复取值的问题,而来也能释放后台的处理资源(尽管通常而言都很少)

——————————————————

进阶但相对复杂的做法。
计时器是个好东西,但是在不动插件的情况下,通常你只能用一个计时器。如果在已经用了计时器的情况下要实现这个功能就很没辙了,所以还有另外一种思路来实现。

简单来说,就是利用『并行处理』不断刷新的原理来确定时间。

首先同样是『并行处理』事件,同样设定一个让这个事件启动的开关。
然后事件内容如下:

◆等待:60帧
◆代入步数到变量A
◆变量B + 1
◆条件分歧:变量B < 10
    ◆条件分歧:若变量A = (你规定的数值)
     (执行内容)
◆否则:
  开关OFF


由于『并行处理』的重复执行速度在没有需要等待的情况下是非常快的,大概就是1帧1次(是不是这个数值我不知道,目测大概是这样),所以让他等待60帧(也就是1秒)执行一次内容,这样这个变量B就等于了计时器(标量)的作用。

标红的地方表示当变量B还不满你的最大值时可以进行步数检测,一旦超过设定值就自动关闭整个事件,相当于计时器结束。
值得注意的是这里的条件分歧记得要用<10,因为条件分歧里还有个相似的<=(小于等于),在这个情况下要是用了<=那就要刷11次才会触发停止,因为『小于等于』的意思就是包含10本身,要多算一次。光<的话则表示10以下但不包括10本身,也就是说一到达10就触发。

实际上你反过来用『变量B - 1,条件分歧:变量B = 0』来作为判断也是可以的,但是必须要在整个计算开始的时候给变量取值,可能比较麻烦,一旦不小心忘记就会失效。因为默认变量是0,在不取值的情况下只会变成负数。

最后你要用的时候只要把开关ON就行了。
新しい誕生祝いだッ!
回复 支持 2 反对 0

使用道具 举报

Lv2.观梦者

梦石
0
星屑
293
在线时间
70 小时
注册时间
2016-8-29
帖子
41
2
 楼主| 发表于 2016-9-2 00:28:19 | 只看该作者
萨俄各国 个供热管

QJ3MO4(Q`MI5P[[email protected] (30.31 KB, 下载次数: 28)

QJ3MO4(Q`MI5P[O@1L82Y.png
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-16 06:18

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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