Project1

标题: 关于窗口更新数据问题 [打印本页]

作者: 黑舞嗜    时间: 2011-8-19 17:21
标题: 关于窗口更新数据问题
本帖最后由 黑舞嗜 于 2011-8-19 17:43 编辑

这个是某大大用来在地图上显示等级的脚本,但是如果在地图上直接事件升级的话这里的数值不会更新,非要进菜单在退出来才会更新。求大大解答,小弟感激不尽~
  1. #==============================================================================
  2. # ■ Window_Actorlevel
  3. #------------------------------------------------------------------------------
  4. #  显示角色等级的窗口。
  5. #==============================================================================

  6. class Window_Actorlevel < Window_Base
  7.   #--------------------------------------------------------------------------
  8.   # ● 初始化对像
  9.   #     actor : 角色
  10.   #--------------------------------------------------------------------------
  11.   def initialize
  12.     super(0, 0, 190, 100)
  13.     self.contents = Bitmap.new(width - 32, height - 32)
  14.     self.opacity = 160
  15.     refresh
  16.   end
  17.   #--------------------------------------------------------------------------
  18.   # ● 刷新
  19.   #--------------------------------------------------------------------------
  20.   def refresh
  21.     self.contents.clear
  22.     for i in 0...$game_party.actors.size
  23.       actor = $game_party.actors[i]
  24.       actor_x = i * 160
  25.       draw_actor_level(actor, actor_x, 10)
  26.     end
  27.   end
  28. end

  29. class Scene_Map
  30.   alias old_main main
  31.   def main
  32.     @Window_Actorlevel = Window_Actorlevel.new
  33.     old_main
  34.     @Window_Actorlevel.dispose
  35.   end
  36. end
复制代码
dsu_plus_rewardpost_czw
作者: orzfly    时间: 2011-8-19 17:35
本帖最后由 orzfly 于 2011-8-19 17:44 编辑
  1. #==============================================================================
  2. # ■ Window_Actorlevel
  3. #------------------------------------------------------------------------------
  4. #  显示角色等级的窗口。
  5. #==============================================================================


  6. class Window_Actorlevel < Window_Base
  7.   #--------------------------------------------------------------------------
  8.   # ● 初始化对像
  9.   #     actor : 角色
  10.   #--------------------------------------------------------------------------
  11.   def initialize
  12.     super(0, 0, 190, 100)
  13.     self.contents = Bitmap.new(width - 32, height - 32)
  14.     self.opacity = 160
  15.     refresh
  16.   end
  17.   #--------------------------------------------------------------------------
  18.   # ● 刷新
  19.   #--------------------------------------------------------------------------
  20.   def refresh
  21.     self.contents.clear
  22.     @old_data = []
  23.     for i in 0...$game_party.actors.size
  24.       actor = $game_party.actors[i]
  25.       @old_data.push([actor.sp, actor.maxsp])
  26.       actor_x = i * 160
  27.       draw_actor_sp(actor, actor_x, 10)
  28.     end
  29.   end
  30.   #--------------------------------------------------------------------------
  31.   # ● 刷新
  32.   #--------------------------------------------------------------------------
  33.   def update
  34.     super
  35.     return refresh if $game_party.actors.size != @old_data.size
  36.     for i in 0...$game_party.actors.size
  37.       return refresh if @old_data[i][0] != $game_party.actors.sp or @old_data[i][1] != $game_party.actors.maxsp
  38.     end
  39.   end
  40. end


  41. class Scene_Map
  42.   alias old_main main
  43.   def main
  44.     @Window_Actorlevel = Window_Actorlevel.new
  45.     old_main
  46.     @Window_Actorlevel.dispose
  47.   end
  48.   alias old_update update
  49.   def main
  50.     @Window_Actorlevel.update
  51.     old_update
  52.   end
  53. end
复制代码

作者: 黑舞嗜    时间: 2011-8-19 17:42
额。。。还是不行啊。。。


黑舞嗜于2011-8-19 17:51补充以下内容:
。。。。刚开始是梅效果,现在是报错,54行~




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