Project1

标题: 等待的脚本是怎么写的? [打印本页]

作者: asdwds    时间: 2013-4-24 18:07
标题: 等待的脚本是怎么写的?
有 不影响此def内容以外的 等待脚本吗?

之前也问过,不特定多数的事件会在10秒后执行一些动作
不能保证是同时触动事件,也无法得知具体会有多少事件会被触动,所以我想问下有没有
类似于时间轴的脚本,或者给 事件绑定一个整数变量的脚本?

是不是只有采取$game_variables[100+@id]=$game_variables[100+@id] - 1 这种方法?
作者: 沙漠点灰    时间: 2013-4-24 18:31
可以写到Game_Event的update方法里
alias update_dust update
def update
  update_dust
  update_couner
end

在 update_couner里判断是否满足记时条件(是否已经计时开始了,地图id, 事件编号什么的)
满足就计时开始@couter = Graphics.frame_rate  * s,s是秒数,
@couter -= 1 if @couter > 0
if @couter == 0
  @couter = -1
  start
end


lz自行完成吧
作者: 诺粞    时间: 2013-4-25 14:47
脚本盲路过..等待用事件不可以吗?
作者: asdwds    时间: 2013-4-25 18:28
沙漠点灰 发表于 2013-4-24 18:31
可以写到Game_Event的update方法里
alias update_dust update
def update

@变量是不行的吧,他不是局部的

我是要每个事件在不特定时间点开始等待,使用@变量=时间后
再次触发了时间时间的话,前面那次设定的@变量就被重置了
我需要的是例如
0秒=事件1触发了事件10秒后消失。 4秒=事件2触发了10秒后消失
10秒=事件1消失。 14秒=事件2消失

使用@变量能达成这种的吗?
使用$game_variables过多会造成效率负担吗?
作者: 沙漠点灰    时间: 2013-4-25 18:45
asdwds 发表于 2013-4-25 18:28
@变量是不行的吧,他不是局部的

我是要每个事件在不特定时间点开始等待,使用@变量=时间后

实例的实例变量是互不干扰的.



那这样建议编辑一个表格,比如,


EVENTS_EVENT = []
EVENTS_EVENT[5] = [[1, 5],[600, -5]]

5代表地图id为5,后边表示事件的事件(真拗口),[1, 5]代表第一帧执行(start)事件5,[600, -5]代表第600帧代表暂时消除(erase)事件5(负数代表消除)


然后在,Game_Map里边的update中计数,满足一个,删一个并执行


作者: asdwds    时间: 2013-4-25 22:18
沙漠点灰 发表于 2013-4-25 18:45
实例的实例变量是互不干扰的.

既然你都觉得有点拗口了,我觉得还是直接用自带变量做比较好

我只是在想游戏自带的变量如果开太多,会不会导致效率降低?




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