Project1

标题: 计时器触发事件对话及计时器隐藏问题 [打印本页]

作者: ycwzq6362    时间: 2014-7-23 12:48
标题: 计时器触发事件对话及计时器隐藏问题
本帖最后由 ycwzq6362 于 2014-7-23 13:16 编辑

昨天午夜摆弄良久,总是觉得衔接不自然,要么就无法触发,求解啊!
具体是这样的:
才过某一事件后,计时器倒计时10s,完毕后来一大段坑爹(?!我不说了)对话,还要求以后不再触发。
555所有事件里就变量和计时器没琢磨透。。。还有,能把那右上角计时器隐藏起来吗?

对了,那十秒完了玩家很有可能在武器商店处理。。。
作者: 天使喝可乐    时间: 2014-7-23 13:31
才过某一事件后,计时器倒计时10s,完毕后一大段坑爹(?!我不说了)对话,还要求以后不再触发
555所有事件里就变量和计时器没琢磨透。。。还有,能把那右上角计时器隐藏起来吗?

对了,那十秒完了玩家很有可能在武器商店处理。。。

求lz详解 红字部分的意思 完全没看懂
作者: feizhaodan    时间: 2014-7-23 13:36
在计时器开始的事件里不使用计时器,使用开关打开一个开关,然后在公共事件里面创建一个并行处理的事件,执行条件设为开关,在事件的第一个指令里用等待,等待结束后再显示对话
作者: 越前リョーマ    时间: 2014-7-23 13:52
计时器的特性,进入商店、菜单等场景时不计时,所以不会出现“10秒计时完了我还在商店”的情况

做一个并行处理的事件,条件分歧:计时器不大于0分0秒,显示文章,之后关闭计时器。如果以后还会用到计时器,那么在这里打开一个独立开关,把这个事件永远变成空白页。
由于事件处理中其他事件是无法插入的,所以在计时器为0的时候你正在对话,这个事件将继续下去,直到事件结束,之后并行处理要显示的对话才会显示。
而默认来说,计时器也是无法隐藏的,一般我们要做不显示计时器的时候会使用等待这个操作。

因为你这里存在进入菜单之类的可能性,所以我们要像计时器一样一秒一秒甚至更短的时间来制作模拟。
同样的,建立一个并行事件,我们以1秒1计数为例,等待60帧,变量+1。条件分歧:变量>=10的场合,显示对话。之后打开独立开关把这个事件变成空白。
作者: taroxd    时间: 2014-7-23 13:56
补充一下,隐藏计时器:
RUBY 代码复制
  1. class Sprite_Timer < Sprite
  2.   def update_visibility
  3.     # 10 号开关开启时才显示计时器
  4.     self.visible = $game_timer.working? && $game_switches[10]
  5.   end
  6. end

作者: ycwzq6362    时间: 2014-7-23 13:57
天使喝可乐 发表于 2014-7-23 13:31
求lz详解 红字部分的意思 完全没看懂

太口语化了,不好意思。
1.踩过,触发
2.显示,触发
3.坑爹的对话是事件的内容
4.以后不再触发计时器及此事件
5.计时器十秒倒计时结束
6.旁边是武器商店,十秒完后可能还在处理商店界面
作者: ycwzq6362    时间: 2014-7-23 13:59
feizhaodan 发表于 2014-7-23 13:36
在计时器开始的事件里不使用计时器,使用开关打开一个开关,然后在公共事件里面创建一个并行处理的事件,执 ...

我需要玩家还可以行动怎么办。
作者: ycwzq6362    时间: 2014-7-23 14:42
越前リョーマ 发表于 2014-7-23 13:52
计时器的特性,进入商店、菜单等场景时不计时,所以不会出现“10秒计时完了我还在商店”的情况

做一个并行 ...

独立开关具体有什么作用
作者: ycwzq6362    时间: 2014-7-23 14:47
taroxd 发表于 2014-7-23 13:56
补充一下,隐藏计时器:
class Sprite_Timer < Sprite
  def update_visibility

类似的方法我曾试过一个,但玩家直接卡住无法行动,不知是不是事件逻辑错误
作者: 越前リョーマ    时间: 2014-7-23 14:57
ycwzq6362 发表于 2014-7-23 14:42
独立开关具体有什么作用

独立开关就是这个开关只在这个事件里有效,每个事件的独立开关互不影响。

比如你第一个事件页是处理这个内容,我打开独立开关A,新建事件页,条件为独立开关A打开,那么这个事件就一直处于后面这个事件页,这个事件页现在是空白的,那么就什么事都不会发生了
作者: ycwzq6362    时间: 2014-7-23 15:01
越前リョーマ 发表于 2014-7-23 14:57
独立开关就是这个开关只在这个事件里有效,每个事件的独立开关互不影响。

比如你第一个事件页是处理这个 ...

哦,顿悟。可是变量什么的怎么设置计时器+1变量+1呢?说实话我变量就基本不懂
作者: 越前リョーマ    时间: 2014-7-23 15:04
ycwzq6362 发表于 2014-7-23 15:01
哦,顿悟。可是变量什么的怎么设置计时器+1变量+1呢?说实话我变量就基本不懂 ...

等待60帧,变量+1。60帧一般等于1秒
作者: taroxd    时间: 2014-7-23 15:08
ycwzq6362 发表于 2014-7-23 15:01
哦,顿悟。可是变量什么的怎么设置计时器+1变量+1呢?说实话我变量就基本不懂 ...

开关你懂吗,开关有“开”和“关”两个状态。

但是如果我们要不只这两个状态,我们就可以用到变量。
也就是说,每一个整数代表一个状态。你可以把开关理解为数值只能是0和1的变量
作者: ycwzq6362    时间: 2014-7-23 20:57
taroxd 发表于 2014-7-23 15:08
开关你懂吗,开关有“开”和“关”两个状态。

但是如果我们要不只这两个状态,我们就可以用到变量。

开关我懂,但不知如何令变量随计时器变化
作者: taroxd    时间: 2014-7-23 21:02
ycwzq6362 发表于 2014-7-23 20:57
开关我懂,但不知如何令变量随计时器变化

开关和变量一模一样的。不过要让它们随着计时器变化,可能要动脚本了。

但是,你不妨换一个思路,设置一个并行处理的事件。事件页如下:

变量3 += 1
等待60帧

这样就实现了变量3每一秒加1的效果
作者: ycwzq6362    时间: 2014-7-23 21:06
如果没记错的话,意思是变量3+1=?吧,可是怎么输入事件页呢        我发现我愈发的脑残了
作者: VIPArcher    时间: 2014-7-23 21:12
本帖最后由 VIPArcher 于 2014-7-23 21:14 编辑
ycwzq6362 发表于 2014-7-23 21:06
如果没记错的话,意思是变量3+1=?吧,可是怎么输入事件页呢        我发现我愈发的脑残了 ...


这样设置。

并行处理  就可以每过1秒,变量3加+1





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1