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

Project1

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

[通用发布] [VX/VA]绘制单张图标

[复制链接]

Lv2.观梦者

天仙

梦石
0
星屑
620
在线时间
184 小时
注册时间
2008-4-15
帖子
5023

贵宾

跳转到指定楼层
1
发表于 2012-2-11 02:48:54 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 雪流星 于 2012-2-10 20:36 编辑

旧版:http://rpg.blue/forum.php?mod=viewthread&tid=79657

原本的版本中,没有使用 alias 去降低脚本冲突的可能。
而且VA和VX的绘制方法都有一些修改,所以直接重写一个通用的版本。

使用方法:
将图标文件放在 游戏根目录/Graphics/Icons 里面
在数据库的物品/武器/防具/技能/状态中的备注里面写 [icon 文件名](注意这点与旧版稍有不同)

2012-02-10 [关於VA]更新
* 忽然发现 VA 当中, Actor 和 Class 同样作为 BaseItem 的子类,也可以设定图标。
    所以将脚本稍做修改,可以使用 [icon X] 来设定图标。X 为图标的 index
    当然,这个设定只有角色和职业需要使用。(物品等可以这样设定,但是有需要吗?)
    具体要怎么用就看个人。

  1. class RPG::BaseItem
  2.   #--------------------------------------------------------------------------
  3.   # ● 获取图标
  4.   #--------------------------------------------------------------------------
  5.   def get_icon
  6.     self.note.split(/[\r\n]+/).each { |line|
  7.       return $1 if line =~ /\[(?:icon) (\S+)\]/
  8.     }
  9.     return nil
  10.   end
  11.   #--------------------------------------------------------------------------
  12.   # ● 图标 index
  13.   #--------------------------------------------------------------------------
  14.   alias draw_single_icon_icon_index icon_index
  15.   def icon_index
  16.     icon_index = get_icon
  17.     # 如果有指定图标
  18.     if icon_index && icon_index =~ /\d+/ # 如果指定的是數字
  19.       @icon_index = icon_index.to_i # 轉換成數字
  20.     elsif icon_index
  21.       return icon_index # 返回指定图标文件名
  22.     end
  23.     return draw_single_icon_icon_index # 否则返回原本的图标 index
  24.   end
  25. end
  26. class Window_Base
  27.   #--------------------------------------------------------------------------
  28.   # ● 绘制图标
  29.   #--------------------------------------------------------------------------
  30.   alias draw_single_icon_draw_icon draw_icon
  31.   def draw_icon(icon_index, x, y, enabled = true)
  32.     if icon_index.is_a?(Integer) # 判断是否为整数
  33.       # 调用原本的绘制图标方法
  34.       draw_single_icon_draw_icon(icon_index, x, y, enabled)
  35.     else # 指定图标时
  36.       bitmap = Cache.load_bitmap("Graphics/Icons/", icon_index)
  37.       rect = Rect.new(0, 0, 24, 24)
  38.       contents.blt(x, y, bitmap, rect, enabled ? 255 : translucent_alpha)
  39.     end
  40.   end
  41. end
复制代码

评分

参与人数 1星屑 +600 收起 理由
退屈£无聊 + 600

查看全部评分

VA脚本开工中...
偷窃脚本1.0 - 已完成

Lv1.梦旅人

梦石
0
星屑
66
在线时间
434 小时
注册时间
2006-5-25
帖子
201
2
发表于 2012-2-12 17:37:33 手机端发表。 | 只看该作者
其实弄图标也算好弄…用Ps或什么的不难…要每个要打一次备注也很蛋疼
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
334 小时
注册时间
2011-10-21
帖子
413
3
发表于 2012-2-12 17:52:13 | 只看该作者
我倒是希望以后可以把图标分类,不同的数据库读取不同的Iconset,
比如武器是"WeaponIconset.PNG"
然后防具是"ArmorIconset.PNG"
技能就用"SkillIconset.PNG"
之类的,整理起来也方便,不会因为图标过多导致文件夹打开时会出现卡的现象……
我是活着的死人哦
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
33 小时
注册时间
2012-7-13
帖子
22
4
发表于 2012-8-7 13:51:26 | 只看该作者
雪流星大大,我是个新手,想问几个比较2的问题,这个脚本插入在脚本编辑那页的哪里?
我就添加在下面图示这个位置的,发现不行啊,物品备注里面是[icon 文件名(话说这个后面要带后缀么?)],图标也还是原来System文件夹里面的
另外把要用的图标放在RTP/Graphics/Icons里和放在游戏根目录/Graphics/Icons里有什么区别

1.jpg (214.64 KB, 下载次数: 0)

1.jpg

点评

文件名不要弄成数字  发表于 2014-2-1 22:08
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
10
在线时间
8 小时
注册时间
2019-7-8
帖子
34
5
发表于 2019-7-10 06:54:24 | 只看该作者
..............................................................................................................................

点评

你又挖坟了  发表于 2019-7-12 09:48
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-21 21:57

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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