设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1629|回复: 1
打印 上一主题 下一主题

[已经解决] 在地图上显示等级

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
26 小时
注册时间
2008-1-30
帖子
36
跳转到指定楼层
1
发表于 2011-4-25 16:46:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
就是需要一个小窗口,显示角色的等级
“您现在的等级为:*”
就是这样……
以前获得过一个脚本:
#==============================================================================
# ■ Window_Actorlevel
#------------------------------------------------------------------------------
#  显示角色等级的窗口。
#==============================================================================

class Window_Actorlevel < Window_Base
  #--------------------------------------------------------------------------
  # ● 初始化对像
  #     actor : 角色
  #--------------------------------------------------------------------------
  def initialize
    super(0, 0, 640, 100)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.opacity = 160
    refresh
  end
  #--------------------------------------------------------------------------
  # ● 刷新
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    for i in 0...$game_party.actors.size
      actor = $game_party.actors[i]
      actor_x = i * 160
      draw_actor_level(actor, actor_x, 10)
    end
  end
end

class Scene_Map
  alias old_main main
  def main
    @Window_Actorlevel = Window_Actorlevel.new
    old_main
    @Window_Actorlevel.dispose
  end
end



但是这个脚本一不可以更改显示的文字“您现在的等级为……”,第二我发现即使我人物的等级变了它还是显示为1……
所以……求教新脚本或> <更正方法

点评

如果能够告诉我怎样在第3个地图的时候再开始显示(除了第1.2地图不显示其它地图都显示)这个窗口的方法的话就更好了……  发表于 2011-4-25 16:47

Lv1.梦旅人

梦石
0
星屑
55
在线时间
323 小时
注册时间
2010-8-21
帖子
666
2
发表于 2011-4-25 17:19:55 | 只看该作者
本帖最后由 沙漠点灰 于 2011-4-25 17:40 编辑

回复 79904396 的帖子
  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, 640, 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.     @lv = $game_party.actors.inject([]){|a,i|a<<i.level}
  22.     self.contents.clear ; x = 0
  23.     $game_party.actors.each {|i|
  24.       self.contents.draw_text(x % 2* 320, x/2 * 32, 200, 32, "#{i.name}  等级:#{i.level}" , 0)
  25.        x += 1
  26.     }
  27.   end
  28.   #--------------------------------------------------------------------------
  29.   # ● 刷新
  30.   #--------------------------------------------------------------------------
  31.   def update
  32.     super
  33.     refresh if @lv != $game_party.actors.inject([]){|a,i|a<<i.level}
  34.   end
  35. end

  36. class Scene_Map
  37.   alias old_main main unless Scene_Map.method_defined? "old_main"
  38.   def main
  39.     @Window_Actorlevel = Window_Actorlevel.new
  40.     old_main
  41.     @Window_Actorlevel.dispose
  42.   end
  43.   alias old_update_ update unless Scene_Map.method_defined? "old_update_"
  44.   def update
  45.     old_update_
  46.     @Window_Actorlevel.visible = $game_switches[99]
  47.     @Window_Actorlevel.update
  48.   end
  49. end
复制代码
修改完毕,这个窗口怎么没有出现?
把游戏开关99打开就会出现窗口,关掉99号开关就消失了

点评

非常感谢你啊~^_^  发表于 2011-4-25 19:33
>>猛戳>>MetalSagaR游戏主页<<这里<<
欢迎提供您的意见
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-7-20 23:05

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表