Project1

标题: 脚本调用卡顿 [打印本页]

作者: xuanyuanjianyun    时间: 2013-8-9 09:31
标题: 脚本调用卡顿
我想在游戏过程中出现流星
就在脚本编辑器里定义了一个方法(根据流星标题脚本提取的)
  MAXNUMBER = 18  # 天气图片数量
WEATHER_FILE = "Graphics/Pictures/流星.png"
  # 自定义图片路径,这个文件可以从黑暗圣剑DEMO获得,是流星雨
  
  BLEND_TYPE = 0 # 合成方式(0:普通,1:加法,2:减法)
  WEATHER_X = 5 # X方向每回合减少象素
  WEATHER_Y = 5 # Y方向每回合减少象素
  WEATHER_OPACITY = 2 #每回合减低透明度
  START_OPACITY = 200 #出现时的透明度
  RAND_X = 1200 # 随机X范围
  RAND_Y = 600 # 随机Y范围
  HEIGHT = -600 # 出现时候的屏幕Y
  WIDTH = 100 # 出现时候的屏幕X
  
  $sprites1 = []
  for i in 1..40
      sprite = Sprite.new
      sprite.bitmap = Bitmap.new(WEATHER_FILE)
      sprite.z = 1000
      sprite.x = -1000
      sprite.y = -1000
      sprite.visible = (i <= MAXNUMBER)
      sprite.blend_type = BLEND_TYPE
      sprite.opacity = START_OPACITY
      $sprites1.push(sprite)
    end
  def liuxing
    1000.times{
  for i in 1..MAXNUMBER
   sprite = $sprites1[i]
   sprite.x -= WEATHER_X
   sprite.y += WEATHER_Y
   sprite.opacity -= WEATHER_OPACITY
      x = sprite.x - 2
      y = sprite.y - 2
      if sprite.opacity < 32 or x < -100 or x > 750 or y < -1000 or y > 500
        sprite.x = rand(RAND_X) + WIDTH + 2
        sprite.y = rand(RAND_Y) + HEIGHT + 2
        sprite.opacity = START_OPACITY
      end
    end
}
end
然后在游戏事件中循环调用流星方法
屏幕倒是有流星现象了。
但是完全不如流星标题界面流畅.
而且其他同时进行的人物移动效果也停止了
这是什么原因呢
作者: end55rpg    时间: 2013-8-9 09:36
把循环 1000.times{这种东东改成@count计数
作者: xuanyuanjianyun    时间: 2013-8-9 09:49
end55rpg 发表于 2013-8-9 09:36
把循环 1000.times{这种东东改成@count计数

谢谢,不过我不是很明白,count应该怎么用?可以详细一点么




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