Project1

标题: 自己写的显示地图名称脚本,但是运行时极卡,怎么处理 [打印本页]

作者: 笹舟丶萚    时间: 2018-7-14 00:36
标题: 自己写的显示地图名称脚本,但是运行时极卡,怎么处理
  1. class Window_Mapname < Window_Base
  2.   def initialize
  3.     super(0, 48 , 280, 556)
  4.     self.contents = Bitmap.new(width - 32, height - 32)
  5.     refresh
  6.     self.opacity = 0
  7.     @show_time = 70
  8.   end
  9.   def refresh
  10.     self.contents.clear
  11.     @show_time.to_i
  12.     @show_time = 70
  13.     self.contents_opacity = 0
  14.     map_name = $data_mapinfos[$game_map.map_id].name
  15.     @map_name = map_name
  16.     x = "------------------------"
  17.     self.contents.draw_text(10, 48, width - 32 - 36, 32, map_name, 1)
  18.     self.contents.draw_text(10, 60, width - 68, 32, x.to_s, 1)
  19.   end
  20.   def update
  21.     super
  22.     if @map_name != $data_mapinfos[$game_map.map_id].name
  23.       refresh
  24.     end
  25.     if @show_time > 60
  26.       self.contents_opacity = 0
  27.       Graphics.update
  28.       end
  29.     if @show_time > 50 && @show_time <= 60
  30.       self.contents_opacity += 25
  31.       Graphics.update
  32.     end
  33.     if @show_time > 16 && @show_time <= 50
  34.       self.contents_opacity = 255
  35.       Graphics.update
  36.     end
  37.     if @show_time <= 16
  38.       self.contents_opacity -= 16
  39.       Graphics.update
  40.     end
  41.     if @show_time > 1
  42.       @show_time -= 1
  43.     end
  44.   end
  45. end
复制代码

作者: 笹舟丶萚    时间: 2018-7-14 08:50
说明一下,把四个if @show_time去掉就不卡了,我就是想问问如何在进行淡入淡出时候不那么卡
作者: SailCat    时间: 2018-7-14 09:35
去掉四个Graphics.update

作者: 真·可乐    时间: 2018-7-14 09:35
把Graphics.update全部注释掉就不卡了
作者: 笹舟丶萚    时间: 2018-7-14 09:43
真·可乐 发表于 2018-7-14 09:35
把Graphics.update全部注释掉就不卡了

但是我想做淡出效果啊
作者: 笹舟丶萚    时间: 2018-7-14 09:44
SailCat 发表于 2018-7-14 09:35
去掉四个Graphics.update

但是我想做淡出效果啊
作者: 笹舟丶萚    时间: 2018-7-14 10:30
嗯,还真是这样,谢谢,解决了




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