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

Project1

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

[已经过期] 请教个窗口问题

[复制链接]

Lv1.梦旅人

梦石
0
星屑
52
在线时间
586 小时
注册时间
2012-5-31
帖子
768
跳转到指定楼层
1
发表于 2012-11-16 16:06:47 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
本帖最后由 hys111111 于 2012-11-16 18:52 编辑
  1. class Window_ComposeUp < Window_Selectable
  2.   attr_accessor :forge_item
  3.   #--------------------------------------------------------------------------
  4.   # ● 初始化对像
  5.   #--------------------------------------------------------------------------
  6.   def initialize(forge_item)
  7.     super(180, 90, 130, 80)
  8.     @column_max = 2
  9.     @forge_item = []
  10.     refresh
  11.     self.index = 0
  12.   end
  13.   #--------------------------------------------------------------------------
  14.   # ● 获取物品
  15.   #--------------------------------------------------------------------------
  16.   def item
  17.     return @data[self.index]
  18.   end
  19.   #--------------------------------------------------------------------------  
  20.   # ● 获取物品  
  21.   #--------------------------------------------------------------------------  
  22.   def item_number  
  23.     return @data_number[self.index]
  24.   end  
  25.   #--------------------------------------------------------------------------
  26.   # ● 刷新
  27.   #--------------------------------------------------------------------------
  28.   def refresh
  29.     if self.contents != nil
  30.       self.contents.dispose
  31.       self.contents = nil
  32.     end
  33.     @data = []
  34.     @data_number = []  
  35.     @forge_item = $game_temp.forge
  36.     for item_forge in @forge_item
  37.       case item_forge[0]
  38.       when 0
  39.         item = $data_items[item_forge[1]]
  40.       when 1
  41.         item = $data_weapons[item_forge[1]]
  42.       when 2
  43.         item = $data_armors[item_forge[1]]
  44.       end
  45.       if (item != nil) and (item_forge[2] != 0)  
  46.         @data.push(item)  
  47.         @data_number.push(item_forge[2])  
  48.       else  
  49.         @data.delete(item)  
  50.       end  
  51.     end
  52.     # 如果项目数不是 0 就生成位图、描绘全部项目
  53.     @item_max = @data.size
  54.     if @item_max > 0
  55.       self.contents = Bitmap.new(width - 32, row_max * 55)
  56.       for i in 0...@item_max
  57.         draw_item(i)
  58.       end
  59.     end
  60.   end
  61.   #--------------------------------------------------------------------------
  62.   # ● 描绘项目
  63.   #     index : 项目标号
  64.   #--------------------------------------------------------------------------
  65.   def draw_item(index)
  66.     item = @data[index]
  67.     case item
  68.     when RPG::Item
  69.       number = $game_temp.forge[index][2]
  70.     when RPG::Weapon
  71.       number = $game_temp.forge[index][2]
  72.     when RPG::Armor
  73.       number = $game_temp.forge[index][2]
  74.     end
  75.     self.contents.font.color = normal_color
  76.     x = 4 + index % @column_max * (60)
  77.     y = 8
  78.     rect = Rect.new(x, y, self.width / @column_max - 32, 32)
  79.     self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
  80.     bitmap = RPG::Cache.icon(item.icon_name)
  81.     opacity = self.contents.font.color == normal_color ? 255 : 128
  82.     self.contents.blt(x, y + 10, bitmap, Rect.new(0, 0, 24, 24), opacity)
  83.     self.contents.draw_text(x + 10, y - 15, 24, 32, number.to_s, 2)
  84.   end
复制代码
如何让这窗口中只能放二个物品而且数量为1?
请教大大们
{:2_258:}

点评

53行@item_max = @data.size,修改@item_max = x,x是行数,你这应该是1  发表于 2012-11-16 19:08

Lv1.梦旅人

梦石
0
星屑
52
在线时间
586 小时
注册时间
2012-5-31
帖子
768
2
 楼主| 发表于 2012-11-16 20:49:26 | 只看该作者
那数量怎么控制呢
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-17 04:35

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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