Project1

标题: 关于脚本中使事件等待X帧 [打印本页]

作者: denis466    时间: 2011-7-25 18:16
标题: 关于脚本中使事件等待X帧
在F11脚本中(不是事件脚本)设置,按对应按键后某事件变为另一个图等待3帧后又变一次,但是@wait_count = 6不起作用,而且事件也只变了一个图(后面那个,前面那次不认),这要怎么解决?请教!!dsu_plus_rewardpost_czw
作者: 熊猫    时间: 2011-7-25 18:52
本帖最后由 熊猫 于 2011-7-25 18:55 编辑

你那个@wait_count只适用于事件。(而且也不是直接用的……)
脚本的话:
  1. p "点击确定2秒后你将会看到下一个对话框"
  2. 80.times{Graphics.update}
  3. p "我是的二个对话框"
复制代码
使用:
  1. XX.times{Graphics.update}
复制代码
XX是等待帧数,40帧一秒。
至于你说第一个图片没执行,我分析可能是没有正确设置等待直接到了第二个,所以你就没看到第一个


熊猫于2011-7-25 23:22补充以下内容:
唉……您咋就不能回个贴,还得逼我触发自动合并帖子系统。。
Main插入脚本,复制以下内容
  1. class Interpreter
  2.   def delay(frames)
  3.     @wait_count += frames
  4.   end
  5. end
复制代码
然后事件调用脚本:
  1. $game_system.map_interpreter.delay(80) #停顿80帧
复制代码
满足你的要求了吧
作者: denis466    时间: 2011-7-25 23:31
本帖最后由 denis466 于 2011-7-25 23:32 编辑

这是脚本其中一部分
    case direction
          when 2
            move_down
          when 4
            @tile_id=0
            @character_name="XXXX"
            @character_hue=@character_hue
            @pattern=0         
            @direction=2


            3.times{Graphics.update}

            @tile_id=0
            @character_name="YYYY"
            @character_hue=@character_hue
            @pattern=0         
            @direction=2
            ……

当方向向左时,本来是要改一次图然后等待3帧再改一次图的,结果两个功能都实现不了。
作者: Wind2010    时间: 2011-7-25 23:43
在@wait_count = 6下面加上
  1. if @wait_count > 0
  2.   @wait_count -= 1
  3.   return
  4. end
复制代码

作者: 熊猫    时间: 2011-7-26 00:10
这样也好办啊。。Timer原理
if @pattern == 0
  name=XXX
end
if @pattern == 1
  name=YYY
end
if $Timer >= 120
  @pattern += 1
  @pattern = @pattern % 2
  $Timer = 0
end

找一个正被调用的update
插入代码
$Timer+=1
记得update调用次数和刷新次数一样吧?(不一样你就按情况改数就行)
这样既不会卡又可以几帧一变
作者: fux2    时间: 2011-7-26 08:27
本帖最后由 fux2 于 2011-7-26 08:31 编辑
熊猫 发表于 2011-7-25 18:52
你那个@wait_count只适用于事件。(而且也不是直接用的……)
脚本的话:使用:XX是等待帧数,40帧一秒。
至 ...


脚本补丁
  1. class Interpreter
  2.   attr_accessor   :wait_count
  3. end
复制代码
事件脚本
  1. self.wait_count = 20
复制代码
放进公共事件里.

当然我有审题清楚,不过楼主想重写行走图方式的话你的方向都走错了.
甚至从楼主的脚本来看根本就连基本的概念都没学完就开始写了.
急于求成是很难成功的.




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