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

Project1

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

[已经解决] Yanfly戰鬥結算的道具獲得畫面的編排問題

[复制链接]

Lv3.寻梦者

梦石
0
星屑
3011
在线时间
648 小时
注册时间
2009-1-21
帖子
273
跳转到指定楼层
1
发表于 2015-8-27 15:07:46 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式

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

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

x
RT

他原本像是道具欄式
左右左右的顯示方式

我想把它改成了直列式的方式去顯示


目前道具名稱顯示已經成功了
但是後面數量的顯示
你會發現第二個數字特別的黑
因為他似乎重疊了

弄了很久還是不知道該怎麼把他分開ლ(゚Д゚ლ)

因為腳本很長
所以我擷取了可能會用到的部分、參數
  1. #--------------------------------------------------------------------------
  2.   # item_rect
  3.   #--------------------------------------------------------------------------
  4.   def item_rect(index)
  5.     rect = Rect.new
  6.     rect.width = item_width
  7.     rect.height = contents.height
  8.     rect.x = index % col_max * (item_width + spacing)
  9.     rect.y = index / col_max * item_height
  10.     return rect
  11.   end
复制代码
RUBY 代码复制
  1. #==============================================================================
  2. # ¡ Window_VictorySpoils
  3. #==============================================================================
  4.  
  5. class Window_VictorySpoils < Window_ItemList
  6.  
  7.   #--------------------------------------------------------------------------
  8.   # initialize
  9.   #--------------------------------------------------------------------------
  10.   def initialize
  11.     super(0, fitting_height(1), Graphics.width, window_height)
  12.     self.z = 200
  13.     hide
  14.   end
  15.  
  16.   #--------------------------------------------------------------------------
  17.   # window_height
  18.   #--------------------------------------------------------------------------
  19.   def window_height
  20.     return Graphics.height - fitting_height(4) - fitting_height(1)
  21.   end
  22.  
  23.   #--------------------------------------------------------------------------
  24.   # spacing
  25.   #--------------------------------------------------------------------------
  26.   def spacing; return 32; end
  27.  
  28.   #--------------------------------------------------------------------------
  29.   # make
  30.   #--------------------------------------------------------------------------
  31.   def make(gold, drops)
  32.     @gold = gold
  33.     @drops = drops
  34.     refresh
  35.     unselect
  36.   end
  37.  
  38.   #--------------------------------------------------------------------------
  39.   # make_item_list
  40.   #--------------------------------------------------------------------------
  41.   def make_item_list
  42.     @data = [nil]
  43.     items = {}
  44.     weapons = {}
  45.     armours = {}
  46.     @goods = {}
  47.     for item in @drops
  48.       case item
  49.       when RPG::Item
  50.         items[item] = 0 if items[item].nil?
  51.         items[item] += 1
  52.       when RPG::Weapon
  53.         weapons[item] = 0 if weapons[item].nil?
  54.         weapons[item] += 1
  55.       when RPG::Armor
  56.         armours[item] = 0 if armours[item].nil?
  57.         armours[item] += 1
  58.       end
  59.     end
  60.     items = items.sort { |a,b| a[0].id <=> b[0].id }
  61.     weapons = weapons.sort { |a,b| a[0].id <=> b[0].id }
  62.     armours = armours.sort { |a,b| a[0].id <=> b[0].id }
  63.     for key in items; @goods[key[0]] = key[1]; @data.push(key[0]); end
  64.     for key in weapons; @goods[key[0]] = key[1]; @data.push(key[0]); end
  65.     for key in armours; @goods[key[0]] = key[1]; @data.push(key[0]); end
  66.   end
  67.  
  68.   #--------------------------------------------------------------------------
  69.   # draw_item
  70.   #--------------------------------------------------------------------------
  71.   def draw_item(index)
  72.     item = @data[index]
  73.     rect = item_rect(index)
  74.     reset_font_settings
  75.     if item.nil?
  76.       draw_gold(rect)
  77.       return
  78.     end
  79.     rect.width -= 4
  80.     draw_item_name(item, 20, 24*index, true, rect.width - 24)
  81.     draw_item_number(rect, item)
  82.   end
  83.  
  84.   #--------------------------------------------------------------------------
  85.   # draw_gold
  86.   #--------------------------------------------------------------------------
  87.   def draw_gold(rect)
  88.     text = Vocab.currency_unit
  89.     draw_currency_value(@gold, text, rect.x, rect.y, rect.width)
  90.   end
  91.  
  92.   #--------------------------------------------------------------------------
  93.   # draw_item_number
  94.   #--------------------------------------------------------------------------
  95.   def draw_item_number(rect, item)
  96.     number = @goods[item].group
  97.     if $imported["YEA-AdjustLimits"]
  98.       contents.font.size = YEA::LIMIT::ITEM_FONT
  99.       text = sprintf(YEA::LIMIT::ITEM_PREFIX, number)
  100.       draw_text(20, rect.y+20, rect.width, rect.height, text, 2)
  101.     else
  102.       draw_text(20, rect.y, rect.width, rect.height, sprintf(":%s", number), 2)
  103.     end
  104.   end
  105.  
  106. end # Window_VictorySpoils



如果還有缺少腳本的部分
請再提出來

還請大家幫忙解惑
謝謝_(:з」∠)_

Lv3.寻梦者

梦石
0
星屑
3011
在线时间
648 小时
注册时间
2009-1-21
帖子
273
3
 楼主| 发表于 2015-8-27 22:32:06 | 只看该作者

嘖嘖
問題解決了

  1. def draw_item_number(rect, item)
复制代码
裡面的東西全部搬到
  1. def draw_item(index)
复制代码
裡面

再稍微修改 X、Y 做排版
莫名其妙的就好了 (ᇂдᇂ )


這是我目前的成果 _(:з」∠)_

感覺還是好空
不知道要加什麼進去
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
48
在线时间
784 小时
注册时间
2013-1-4
帖子
1102
2
发表于 2015-8-27 15:24:36 | 只看该作者
忽然想哭。。。回帖还要验证码。。。ORZ
话说把整个结算的窗口重写不就好了

点评

我只是想調整他的編排方式,有必要整個視窗打掉重建嗎...(ᇂдᇂ )  发表于 2015-8-27 15:43
RM-GUI延期。。。最近被黑心老板压迫T_T
二次元少女的shitake,长着长脸,身高165,蓝色卷双马尾,FCUP,瞳色黑色,病气和御宅属性,是天才少女。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-23 02:09

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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