查看: 1876|回复: 6

[已经过期] 菜单内文字宽度的显示问题

[复制链接]
梦石
0
星屑
50
在线时间
381 小时
注册时间
2012-8-13
回帖
103
发表于 2012-8-29 23:49:51 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
本帖最后由 tyq4590 于 2012-8-30 22:08 编辑

由于正在做的工程是一个武侠背景的游戏 所以更改了部分术语 现在在菜单显示的时候问题出现了 如下图:

1.jpg

当等级为个位数的时候,可以正常显示,但是一旦等级达到2位数一个十位的数字就会盖住等级的‘级’字(默认术语里是lv被我改成了等级)。而等级和下面的HP、SP被我改成生命和内力后也在数值达到千位后出现了显示问题,再往下的‘E’被改成‘经验’后也显示的非常狭窄。后面还有几个截图为例:

2.jpg

3.jpg

4.jpg

我感觉这个应该不是在window里描绘的问题,虽然我不太懂代码,但是经过对相应的window内描绘位置、大小的数值的更改,我发现结果没有任何变化,因此我想知道是不是有这么一个储存各种名称默认宽度的地方(比如等级默认的术语是lv,那么就规定显示的时候只占2个英文字母的宽度,如果改成中文则会被自动挤压成2个英文字母的宽度)? 还有就是以‘等级’为例,能不能扩大等级和后面具体数值的间距?代码暂时不贴了因为太多,如果需要的话请指明需要我贴出哪个截图相对应的代码,拜托了!

点评

代码贴点,就显示的,估计是对其方式为"右对齐",在代码页搜索 2) 看看....  发表于 2012-8-30 00:59
梦石
0
星屑
50
在线时间
381 小时
注册时间
2012-8-13
回帖
103
 楼主| 发表于 2012-8-30 09:48:00 | 显示全部楼层
下面是第一张截图window_menustatus的代码:

[pre lang="ruby" line="1"]#==============================================================================
# ■ Window_MenuStatus
#------------------------------------------------------------------------------
#  显示菜单画面和同伴状态的窗口。
#==============================================================================

class Window_MenuStatus < Window_Selectable
  #--------------------------------------------------------------------------
  # ● 初始化目标
  #--------------------------------------------------------------------------
  def initialize
    super(0, 0, 640, 480)
    @column_max = 4
    self.contents = Bitmap.new(width - 32, height - 32)
    self.opacity = 0
    refresh
    self.active = false
    self.index = -1
  end
  def draw_actor_face(actor,x,y)
  case actor.id
  when 1
    bitmap = RPG::Cache.picture("1_q")
  when 2
    bitmap = RPG::Cache.picture("2_q")
  when 3
    bitmap = RPG::Cache.picture("3_q")
  else
    bitmap = RPG::Cache.picture("4_q")
  end
  cw = bitmap.width
  ch = bitmap.height
  src_rect = Rect.new(0, 0, cw, ch)
  self.contents.blt(x , y , bitmap, src_rect)
  end
  #--------------------------------------------------------------------------
  # ● 刷新
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    @item_max = $game_party.actors.size
    for i in 0...$game_party.actors.size
      #x = 64
      #y = i * 116
      x = i*150
      y = 64  
      actor = $game_party.actors
      draw_actor_face(actor, x, y)   
      draw_actor_hp_meter_line(actor, x+35,y+240,100,12)
      draw_actor_sp_meter_line(actor, x+35,y+270,100,12)
      EXP(actor, x+30,y+300)
      draw_actor_hp(actor, x + 10, y + 230)
      draw_actor_sp(actor, x + 10, y + 260)
     # draw_actor_graphic(actor, x + 60, y + 80)
     # draw_actor_graphic(actor, x - 40, y + 80)
      draw_actor_name(actor, x+25, y+150)
      draw_actor_class(actor, x + 10, y+180)
     # draw_actor_level(actor, x, y + 32)
     draw_actor_level(actor, x+10, y+205)
     draw_actor_state(actor, x + 10, y + 340)
     draw_actor_exp(actor, x+10, y + 310)
    end
  end
  #--------------------------------------------------------------------------
  # ● 刷新光标矩形
  #--------------------------------------------------------------------------
  def update_cursor_rect
    if @index < 0
      self.cursor_rect.empty
    else
     #self.cursor_rect.set(0, @index * 116, self.width - 32, 96)
     self.cursor_rect.set(@index * 150, 64, 150, 385)
    end
  end
end
[/pre]
回复

使用道具 举报

梦石
0
星屑
50
在线时间
211 小时
注册时间
2011-1-24
回帖
116
发表于 2012-8-30 09:52:20 | 显示全部楼层
我只是来吐槽第二张图里有好多白的没扣掉
回复

使用道具 举报

梦石
0
星屑
50
在线时间
381 小时
注册时间
2012-8-13
回帖
103
 楼主| 发表于 2012-8-30 11:08:28 | 显示全部楼层
黄金鱼翅 发表于 2012-8-30 13:52
我只是来吐槽第二张图里有好多白的没扣掉

现在仅在绘制界面的阶段 细节完全没有触及。。。如果你能帮我解决这个问题 我马上把第二张图里的白都扣掉。。。
回复

使用道具 举报

梦石
0
星屑
50
在线时间
211 小时
注册时间
2011-1-24
回帖
116
发表于 2012-8-30 11:12:36 | 显示全部楼层
tyq4590 发表于 2012-8-30 11:08
现在仅在绘制界面的阶段 细节完全没有触及。。。如果你能帮我解决这个问题 我马上把第二张图里的白都扣掉 ...

就我这水平,估计也就扣扣那些白色背景
回复

使用道具 举报

梦石
0
星屑
660
在线时间
1286 小时
注册时间
2011-6-14
回帖
3949
发表于 2012-8-30 15:33:10 | 显示全部楼层
应该是Window_Base里面描绘LV/HP/SP的地方有问题。
LZ,Ctrl+Shift+F找一下class Window_Base,吧找到的贴上来看看
回复

使用道具 举报

梦石
0
星屑
50
在线时间
381 小时
注册时间
2012-8-13
回帖
103
 楼主| 发表于 2012-8-30 18:06:29 | 显示全部楼层
我自己搞定了 谢谢LS各位!
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部