幻想森林

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2313|回复: 8

[求助]如何改变游戏内图标的大小

[复制链接]

10

主题

60

帖子

1747

积分

⑥精研

积分
1747
发表于 2006-7-29 22:55:40 | 显示全部楼层 |阅读模式
游戏默认物品、装备……的图标是24*24像素,我想把它改成32*32像素,请问应该在哪里改?先拜谢了。
回复

使用道具 举报

88

主题

5419

帖子

214748万

积分

版主

S素世上最伟大最华丽

Rank: 7Rank: 7Rank: 7

积分
2147483647
QQ
发表于 2006-7-30 00:02:16 | 显示全部楼层
那个...物品图标和物品名称数目==是在一个....大概是选项框那么大的无形方框里面...
画出来的...如果使用32*32...图标会有部分无法显示....
如果连那个无形框框也一起改大...那么物品排列啊啥也要修改...麻烦啊...
回复 支持 反对

使用道具 举报

10

主题

60

帖子

1747

积分

⑥精研

积分
1747
 楼主| 发表于 2006-7-30 12:41:23 | 显示全部楼层
?那到底应该在哪里怎么改呢?麻烦倒是无所谓。如果不方便说明的话可以稍微举个例子告诉我一下吗?
回复 支持 反对

使用道具 举报

4

主题

109

帖子

2494

积分

⑥精研

不灌水者

积分
2494
发表于 2006-7-30 15:15:04 | 显示全部楼层
红字那里,改成32X32了,不过不太美观拉,想美观一点就要改下Y坐标和行距了

  def draw_item(index)
    item = @data[index]
    case item
    when RPG::Item
      number = $game_party.item_number(item.id)
    when RPG::Weapon
      number = $game_party.weapon_number(item.id)
    when RPG::Armor
      number = $game_party.armor_number(item.id)
    end
    if item.is_a?(RPG::Item) and
       $game_party.item_can_use?(item.id)
      self.contents.font.color = normal_color
    else
      self.contents.font.color = disabled_color
    end
    x = 4 + index % 2 * (288 + 32)
    y = index / 2 * 32
   rect = Rect.new(x, y, self.width / @column_max - 32, 32)
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
    bitmap = RPG::Cache.icon(item.icon_name)
    opacity = self.contents.font.color == normal_color ? 255 : 128
    self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 32, 32), opacity)
    self.contents.draw_text(x + 28, y, 212, 32, item.name, 0)
    self.contents.draw_text(x + 240, y, 16, 32, ":", 1)
    self.contents.draw_text(x + 256, y, 24, 32, number.to_s, 2)
  end
在鄙视中变强
回复 支持 反对

使用道具 举报

4

主题

109

帖子

2494

积分

⑥精研

不灌水者

积分
2494
发表于 2006-7-30 15:17:10 | 显示全部楼层
对了,,忘说了,,在Window_Item替换掉
还有Window_EquipItem Window_ShopBuy Window_ShopSell 也在同样地方改
在鄙视中变强
回复 支持 反对

使用道具 举报

10

主题

60

帖子

1747

积分

⑥精研

积分
1747
 楼主| 发表于 2006-7-30 16:20:31 | 显示全部楼层
非常感谢,抱歉多问一句,Y坐标、行距、还有移动的那个选项框的高度在哪里改……?(表说我苯哦……)
另外:我想把窗口的背景改成半透明的,可以看见地图和角色等等的样子,应该怎么改呢……?
再次拜谢各位好心的大大……
回复 支持 反对

使用道具 举报

4

主题

109

帖子

2494

积分

⑥精研

不灌水者

积分
2494
发表于 2006-7-30 16:47:06 | 显示全部楼层
Y坐标改这里,因为你把图标高度改长了8
所以 y = index / 2 * 32 改成  y = index / 2 * 40
至于你说的移动的那个选项框在Window_Selectable119行(差不多这个位置)
同样把  y = @index / @column_max * 32 - self.oy
改成 y = @index / @column_max * 40 - self.oy 就可以了   
选项框高度的self.cursor_rect.set(x, y, cursor_width, 40)

不过问题来了,,所有的选项框都会变成这样,也就是说很多地方都要调整
MS可以不用这样,但我没去研究
至于窗口改半透明的 桜雅有个这样的脚本 不便贴出,楼主可以搜搜看
在鄙视中变强
回复 支持 反对

使用道具 举报

4

主题

109

帖子

2494

积分

⑥精研

不灌水者

积分
2494
发表于 2006-7-30 17:03:22 | 显示全部楼层
,,,最近思维比较混乱,,一时想不过来
那个项框高度 在Window_Selectable替换掉就行了
  def update_cursor_rect
    # 光标位置不满 0 的情况下
    if @index < 0
      self.cursor_rect.empty
      return
    end
    # 获取当前的行
    row = @index / @column_max
    # 当前行被显示开头行前面的情况下
    if row < self.top_row
      # 从当前行向开头行滚动
      self.top_row = row
    end
    # 当前行被显示末尾行之后的情况下
    if row > self.top_row + (self.page_row_max - 1)
      # 从当前行向末尾滚动
      self.top_row = row - (self.page_row_max - 1)
    end
    # 计算光标的宽
    cursor_width = self.width / @column_max - 32
  if $scene.is_a?(Scene_Item)
       x = @index % @column_max * (cursor_width + 32)
    y = @index / @column_max * 40- self.oy
    # 更新国标矩形
    self.cursor_rect.set(x, y, cursor_width, 40)
    else
    # 计算光标坐标
    x = @index % @column_max * (cursor_width + 32)
    y = @index / @column_max * 32 - self.oy
    # 更新国标矩形
    self.cursor_rect.set(x, y, cursor_width, 32)
    end
  end
在鄙视中变强
回复 支持 反对

使用道具 举报

10

主题

60

帖子

1747

积分

⑥精研

积分
1747
 楼主| 发表于 2006-7-31 09:47:39 | 显示全部楼层
恩,明白,非常感谢 [s:2]
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|幻想森林

GMT+8, 2024-4-20 03:23 , Processed in 0.024670 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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