Project1

标题: 等待多少帧的脚本是什么 [打印本页]

作者: flzt5354    时间: 2009-10-2 09:15
标题: 等待多少帧的脚本是什么
需要一句延时的脚本
作者: 凌辰    时间: 2009-10-2 09:17
@wait_count = X

别理我,我乱找的- -b
作者: 「旅」    时间: 2009-10-2 09:23
  1. for i in 0...20
  2. Graphics.update
  3. end
复制代码
Graphics.update 完成的是更新游戏画面,然后前进 1 帧这样的任务。
作者: flzt5354    时间: 2009-10-2 09:44
本帖最后由 flzt5354 于 2009-10-2 09:59 编辑

for i in 0...20
这个是什么。。。。
难道就没脚本能做到事件的等待多少帧的效果么- -
作者: 「旅」    时间: 2009-10-2 10:06
事件其实都是脚本。for i in 0...20是循环代入0...20到i里面,这里主要用于重复执行Graphics.update。

执行一次Graphics.update为1帧。
作者: 「旅」    时间: 2009-10-2 10:07
事件其实都是脚本。for i in 0...20是循环代入0...20到i里面,这里主要用于重复执行Graphics.update。

执行一次Graphics.update为1帧。
作者: flzt5354    时间: 2009-10-2 10:15
本帖最后由 flzt5354 于 2009-10-2 10:31 编辑

但是这种延迟- -就像画面卡住了一样。。。
想起一个脚本,苹果梨的对话脚本
那种打字模式也应该是用延迟做的- -
  1. #--------------------------------------------------------------------------
  2.   # ● 显示文字/头像过程
  3.   #--------------------------------------------------------------------------
  4.   def refresh_
  5.     # 处理已经结束的情况下直接return
  6.     if @finish
  7.       return
  8.     end
  9.     # 延时处理
  10.     @delay-=1
  11.     if @delay<=0
  12.       # 每次处理i个标志,这里i就设置为@type_mode了
  13.       i=@type_mode
  14.       # c 获取 1 个字 (如果不能取得文字就循环)
  15.       while ((c = @text.slice!(/./m)) != nil)
复制代码
理解不了- -
作者: 「旅」    时间: 2009-10-2 10:31
本帖最后由 「旅」 于 2009-10-2 10:38 编辑

如果只Graphics.update,没有图片的操作,自然会像卡住似的。

打字效果是用变量的推进和判断,逐个描绘的。里面没有Graphics.update,因为 在场景类里就有Graphics.update。
作者: flzt5354    时间: 2009-10-2 10:40
本帖最后由 flzt5354 于 2009-10-2 10:44 编辑

我是加到伤害美化脚本里面- -想做到一个伤害每个数字都延迟一点显示的效果~
就是逐级延迟,左边起第1个无延迟,后面每个逐级增加
怎么会没图片操作呢~
作者: 「旅」    时间: 2009-10-2 11:00
是在两个Graphics.update之间的操作。楼主要修改脚本的话,就要重复描绘的指令,且需要用一个变量,如@i,描绘第一次只描绘第一个数字,并@i+=1,下次判断@i为2时,就描绘第二个数字并@+=1,以此类推。
作者: flzt5354    时间: 2009-10-2 11:06
  1.        for char in damage_array
  2.       

  3.           number = char.to_i
  4.          
  5.          
  6.           # 显示伤害数字

  7.           bitmap.blt(damage_x,32, RPG::Cache.picture("Damage"),

  8.             Rect.new(number*18 , rect_y, 18, 32))

  9.           # 后移一位

  10.           damage_x += 18 #伤害字体大小
  11.          
  12.         
  13.          for @i in 0..5
  14.            @i += 5
  15.         Graphics.update
  16.      end
  17.         end
  18.         
复制代码
这样+不行- -请教下
作者: 白鬼    时间: 2009-10-2 11:13
本帖最后由 白鬼 于 2009-10-2 11:15 编辑
  1.       for i in 0...200
  2.         Graphics.update
  3.       end
复制代码
这样就行
等待了200帧

为什么要这样加呢?
直接把需要等待的帧数缩短不就好了?
作者: flzt5354    时间: 2009-10-2 11:15
这样的效果会变成卡屏的效果一样- -
作者: 632808263    时间: 2009-10-26 01:46
也告诉我下这个意思是什么?




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