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只适用于事件。(而且也不是直接用的……)
脚本的话:
p "点击确定2秒后你将会看到下一个对话框"
80.times{Graphics.update}
p "我是的二个对话框"
复制代码
使用:
XX.times{Graphics.update}
复制代码
XX是等待帧数,40帧一秒。
至于你说第一个图片没执行,我分析可能是没有正确设置等待直接到了第二个,所以你就没看到第一个
熊猫于2011-7-25 23:22补充以下内容:
唉……您咋就不能回个贴,还得逼我触发自动合并帖子系统。。
Main插入脚本,复制以下内容
class Interpreter
def delay(frames)
@wait_count += frames
end
end
复制代码
然后事件调用脚本:
$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下面加上
if @wait_count > 0
@wait_count -= 1
return
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帧一秒。
至 ...
脚本补丁
class Interpreter
attr_accessor :wait_count
end
复制代码
事件脚本
self.wait_count = 20
复制代码
放进公共事件里.
当然我有审题清楚,不过楼主想重写行走图方式的话你的方向都走错了.
甚至从楼主的脚本来看根本就连基本的概念都没学完就开始写了.
急于求成是很难成功的.
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1