赞 | 0 |
VIP | 0 |
好人卡 | 0 |
积分 | 1 |
经验 | 2977 |
最后登录 | 2020-5-5 |
在线时间 | 5 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 60
- 在线时间
- 5 小时
- 注册时间
- 2008-6-28
- 帖子
- 292
|
哎,还是要连贴,其实vx的wait()函数本身就是就是从main调用内含刷新,如果不刷新,等待就没用了,我不是没有wait()函数就没有办法了,别误会。不过因为我对xp的代码不认识,害怕有bug所以就必须用这个办法,如果没有通用性的话,那就一点用都没有了。你的那个游戏不用想肯定是有很多脚本堆起来的,所以就用这个办法,令他自身刷新,虽然代码有点多余,不过就就插就用这个思想来讲的话,这个是很好的。代码如下:
- #--------------------------------------------------------------------------
- # ● 基本更新处理
- # main : 从main里调用
- #--------------------------------------------------------------------------
- def update_basic(main = false)
- Graphics.update unless main # 更新游戏画面
- Input.update unless main # 更新输入处理
- $game_system.update # 更新计时器
- #$game_troop.update # 更新敌人队伍
- if @battler.battler_name != nil
- self.update # 更新活动块组
- else
- return
- end
- #@message_window.update # 更新讯息窗口
- end
- #--------------------------------------------------------------------------
- # ● 等待
- # duration : 等待时间(祯数)
- # no_fast : 无效化瞬间显示
- # 一个在场景类更新中等待时间用的方法。一般来说,update每祯都会被调用一次。
- # 但是在战斗中不容易掌握流程,所以这个方法是作为一个例外使用。
- #--------------------------------------------------------------------------
- def wait(duration, no_fast = false)
- for i in 0...duration
- update_basic
- break if not no_fast and i >= duration / 2 #and show_fast?
- end
- end
复制代码 系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~ |
|