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

Project1

 找回密码
 注册会员
搜索

如何缩短文字与数量的距离

查看数: 2066 | 评论数: 6 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2013-9-3 16:15

正文摘要:

本帖最后由 yzli131 于 2013-9-3 21:02 编辑 如图 如何将恢复药与数量1之间的距离缩小。光标也同时要缩小。 或着说 文字等于扩张的距离,求高手回答。 小弟谢谢了。 ...

回复

cinderelmini 发表于 2013-9-3 19:15:09
脚本:Window_ItemList
里面的:
  1.   #--------------------------------------------------------------------------
  2.   # ● 绘制项目
  3.   #--------------------------------------------------------------------------
  4.   def draw_item(index)
  5.     item = @data[index]
  6.     if item
  7.       rect = item_rect(index)
  8.       rect.width -= 4
  9.       draw_item_name(item, rect.x, rect.y, enable?(item))
  10.       draw_item_number(rect, item)
  11.     end
  12.   end
复制代码
这段,替换为:
  1.   #--------------------------------------------------------------------------
  2.   # ● 绘制项目
  3.   #--------------------------------------------------------------------------
  4.   def draw_item(index)
  5.     item = @data[index]
  6.     if item
  7.       rect = item_rect(index)
  8.       rect.width -= 4
  9.       draw_item_name(item, rect.x, rect.y, enable?(item))
  10.       #draw_item_number(rect, item)
  11.     end
  12.   end
  13.   
  14.   #--------------------------------------------------------------------------
  15.   # ● 绘制物品名称
  16.   #     enabled : 有效的标志。false 的时候使用半透明效果绘制
  17.   #--------------------------------------------------------------------------
  18.   def draw_item_name(item, x, y, enabled = true, width = 172)
  19.     return unless item
  20.     draw_icon(item.icon_index, x, y, enabled)
  21.     change_color(normal_color, enabled)
  22.     draw_text(x + 24, y, width, line_height, item.name)
  23.    
  24.     jw = text_size(item.name).width
  25.     draw_text(x + 24 + jw, y, width, line_height,
  26.               sprintf(":%2d", $game_party.item_number(item)))
  27.   end
复制代码

点评

插进去没有反应。。  发表于 2013-9-3 19:40
继续顺便……如果用了其他修改或加强的背包脚本的话~请全局搜索然后修改列表的最后一个【Window_ItemList】  发表于 2013-9-3 19:17
顺便这样排版不是很好看……  发表于 2013-9-3 19:15

评分

参与人数 1梦石 +1 收起 理由
熊喵酱 + 1 认可答案

查看全部评分

345912390 发表于 2013-9-3 18:54:33
本帖最后由 345912390 于 2013-9-3 19:16 编辑

说实在的这样的效果很难看

如果这个效果是LZ想要的,点评一下在发修改脚本你吧!
以下脚本在默认情况下可实现,不提供冲突解决方案
脚本放在Main的上方
RUBY 代码复制
  1. #encoding:utf-8
  2. #==============================================================================
  3. # ■ Window_ItemList
  4. #------------------------------------------------------------------------------
  5. #  物品画面中,显示持有物品的窗口。
  6. #==============================================================================
  7.  
  8. class Window_ItemList < Window_Selectable
  9.   #--------------------------------------------------------------------------
  10.   # ● 初始化对象
  11.   #--------------------------------------------------------------------------
  12.   alias old_initialize initialize
  13.   def initialize(x, y, width, height)
  14.     old_initialize(x, y, width, height)
  15.     @cursor_w=[]
  16.     @len=0
  17.   end
  18.   #--------------------------------------------------------------------------
  19.   # ● 绘制项目
  20.   #--------------------------------------------------------------------------
  21.   alias old_draw_item draw_item
  22.   def draw_item(index)
  23.     item = @data[index]
  24.     if item
  25.       rect = item_rect(index)
  26.       rect.width -= 4
  27.       draw_item_name(item, rect.x, rect.y, enable?(item))
  28.       draw_item_number(rect, item)
  29.       @len=28+text_size(item.name).width+text_size(sprintf(":%2d", $game_party.item_number(item))).width
  30.       @cursor_w.insert(index,@len)
  31.     end
  32.   end
  33.   #--------------------------------------------------------------------------
  34.   # ● 绘制物品个数
  35.   #--------------------------------------------------------------------------
  36.   alias old_draw_item_number draw_item_number
  37.   def draw_item_number(rect, item)
  38.     draw_text_ex(rect.x+24+text_size(item.name).width,rect.y,sprintf(":%2d", $game_party.item_number(item)))
  39.   end
  40.   #--------------------------------------------------------------------------
  41.   # ● 更新光标
  42.   #--------------------------------------------------------------------------
  43.   def update_cursor
  44.     if @cursor_all
  45.       cursor_rect.set(0, 0, contents.width, row_max * item_height)
  46.       self.top_row = 0
  47.     elsif [url=home.php?mod=space&uid=370741]@Index[/url] < 0
  48.       cursor_rect.empty
  49.     else
  50.       ensure_cursor_visible
  51.       rect = item_rect(index)
  52.       cursor_rect.set(rect.x,rect.y,@cursor_w[index],rect.height)
  53.     end
  54.   end
  55. end

点评

唉,原来求了一个下午,竟然还是没办法学会怎么缩短,其实我真正想求的是技能上和装备上的,图我等下上,大侠送佛送到西吧。。。  发表于 2013-9-3 20:58
光标那里出错了,你看看  发表于 2013-9-3 19:40
谢谢,是这样 的效果。果然高手多多  发表于 2013-9-3 19:02
喵呜喵5 发表于 2013-9-3 18:30:02
话说物品栏有长有短不是更难看吗…

点评

不难看,我的脚本全局改变了,不是默认那套  发表于 2013-9-3 19:04
345912390 发表于 2013-9-3 17:34:31
yzli131 发表于 2013-9-3 16:55
你不觉得 这个方法很水吗。。求来个复杂 的方法,。感激。。。那个方法对我来说没意义的 ...

Window_ItemList里加入以下脚本,自己调整吧!
  1.   #--------------------------------------------------------------------------
  2.   # ● 获取行间距的宽度
  3.   #--------------------------------------------------------------------------
  4.   def spacing
  5.     return 32
  6.   end
  7.   #--------------------------------------------------------------------------
  8.   # ● 获取项目的宽度   这个就是物品项和光标的宽度
  9.   #--------------------------------------------------------------------------
  10.   def item_width
  11.     (width - standard_padding * 2 + spacing) / col_max - spacing
  12.   end
  13.   #--------------------------------------------------------------------------
  14.   # ● 获取项目的绘制矩形
  15.   #--------------------------------------------------------------------------
  16.   def item_rect(index)
  17.     rect = Rect.new
  18.     rect.width = item_width
  19.     rect.height = item_height
  20.     rect.x = index % col_max * (item_width + spacing)
  21.     rect.y = index / col_max * item_height
  22.     rect
  23.   end
复制代码

点评

其实我什么都不需要知道,我只需要知道,如何将缩短跟文字一样的距离。光标。其他的我基本都初步设定的差不多了,只是这个我还找不到在哪里...  发表于 2013-9-3 21:59
我的意思是指,文字是五个字,而他的宽度也就五个字宽,如果是十个字,他的宽度也是十个字的宽度,这个可以办的到吗?  发表于 2013-9-3 18:08
话说,不知道怎么用,这个宽度,是指第一个和第二个直接的宽度吗。。还是我不会用  发表于 2013-9-3 18:00
yzli131 发表于 2013-9-3 16:55:48
你不觉得 这个方法很水吗。。求来个复杂 的方法,。感激。。。那个方法对我来说没意义的
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2024-11-7 10:53

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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