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

Project1

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

[RMVA发布] 物品颜色边框描绘 改良★

[复制链接]

Lv2.观梦者

花开堪折直须折

梦石
0
星屑
676
在线时间
943 小时
注册时间
2010-7-17
帖子
4963

贵宾

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

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

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

x
本帖最后由 冰舞蝶恋 于 2012-12-1 16:28 编辑

RUBY 代码复制
  1. #==============================================================================
  2. # [PS0]物品颜色描绘
  3. #      Window_Base_Itemcolor
  4. #------------------------------------------------------------------------------
  5. #     在物品、技能选项中显示物品品质并显示品质框和修改物品名颜色。
  6. #==============================================================================
  7. # [更新记录]
  8. #    - 2012.12.01 By 冰舞蝶恋
  9. #      * 增加底面描绘色彩(这个好难描述=m=)
  10. #      * 改良文字排版,使文字不再紧凑贴合色彩框
  11. #      * 调换优先级,使边框不会为大图标所遮挡
  12. #    - 2012.01.03 By 仲秋启明
  13. #      * 修改为VA定义
  14. #    - 2011.12.27 By 仲秋启明
  15. #      * 移植至RGSS3,遵循PS0协议;
  16. #      * 优化数据库备注中设定方法
  17. #    - 2011.08.22 By 冰舞蝶恋
  18. #      * 蓝本(实用·极简 -- 按品质,给物品描绘色彩边框)
  19. #    - 2010.08.06 By 仲秋启明
  20. #      * 蓝本(物品颜色描绘脚本(完整无冲突版))
  21. #------------------------------------------------------------------------------
  22. # [使用方法]
  23. #    - 替换原Window_Base中的draw_item_name定义或复制到Main之前
  24. #==============================================================================
  25. $_PS0 = {} if $_PS0 == nil  
  26. $_PS0["Window_Base_Itemcolor"] = 20121201
  27. #==============================================================================
  28. # [PS0] 通用配置模块  
  29. #==============================================================================
  30. module PS0
  31.   module Window_Base_Itemcolor
  32.     Color1 = [Color.new(255, 255, 255),
  33.               Color.new(255, 255, 255, 160)]  # 一般品质的色彩(白,1)
  34.  
  35.     Color2 = [Color.new(128, 255, 128),
  36.               Color.new(128, 255, 128, 160)]  # 平庸品质的色彩(绿,2)
  37.  
  38.     Color3 = [Color.new(128, 128, 255),
  39.               Color.new(128, 128, 255, 160)]  # 精良品质的色彩(蓝,3)
  40.  
  41.     Color4 = [Color.new(255, 0,   255),
  42.               Color.new(255, 0,   255, 160)]  # 卓越品质的色彩(紫,4)
  43.  
  44.     Color5 = [Color.new(255, 128, 128),
  45.               Color.new(255, 128, 128, 160)]  # 神秘品质的色彩(红,5)
  46.  
  47.     Color6 = [Color.new(255, 128, 0  ),
  48.               Color.new(255, 128, 0  , 160)]  # 传说品质的色彩(橙,6)
  49.  
  50.     Color7 = [Color.new(255, 255, 128),
  51.               Color.new(255, 255, 128, 160)]  # 特殊品质的色彩(黄,7)
  52.   end
  53. end
  54. #==============================================================================
  55. # ■ Window_Base
  56. #==============================================================================
  57. class Window_Base < Window
  58.   def draw_item_name(item, x, y, enabled = true, width = 172)
  59.     if item != nil
  60.       n = item.note
  61.       a = n.split{/<(?:Quality|品质)\s*(.+)>/i}
  62.       c = a[1].to_i
  63.       if c <= 1
  64.         color = PS0::Window_Base_Itemcolor::Color1[0]
  65.         back = PS0::Window_Base_Itemcolor::Color1[1]
  66.       elsif c == 2
  67.         color = PS0::Window_Base_Itemcolor::Color2[0]
  68.         back = PS0::Window_Base_Itemcolor::Color2[1]
  69.       elsif c == 3
  70.         color = PS0::Window_Base_Itemcolor::Color3[0]
  71.         back = PS0::Window_Base_Itemcolor::Color3[1]
  72.       elsif c == 4
  73.         color = PS0::Window_Base_Itemcolor::Color4[0]
  74.         back = PS0::Window_Base_Itemcolor::Color4[1]
  75.       elsif c == 5
  76.         color = PS0::Window_Base_Itemcolor::Color5[0]
  77.         back = PS0::Window_Base_Itemcolor::Color5[1]
  78.       elsif c == 6
  79.         color = PS0::Window_Base_Itemcolor::Color6[0]
  80.         back = PS0::Window_Base_Itemcolor::Color6[1]
  81.       elsif c == 7
  82.         color = PS0::Window_Base_Itemcolor::Color7[0]
  83.         back = PS0::Window_Base_Itemcolor::Color7[1]
  84.       else
  85.         color = Color.new(0, 0, 0, 0)
  86.         back = Color.new(0, 0, 0, 0)
  87.       end
  88.       self.contents.fill_rect(x, y, 24, 24, back)
  89.       draw_icon(item.icon_index, x, y, enabled)
  90.       self.contents.fill_rect(x, y, 24, 1, color)
  91.       self.contents.fill_rect(x, y, 1, 24, color)
  92.       self.contents.fill_rect(x, y+23, 24, 1, color)
  93.       self.contents.fill_rect(x+23, y, 1, 24, color)
  94.       change_color(color, enabled)
  95.       draw_text(x + 30, y, width, line_height, item.name)
  96.     end
  97.   end
  98. end
  99. #==============================================================================
  100. # [PS0] End of Script
  101. #==============================================================================



★ 关于半透明的写法我个人觉得好麻烦……大家有什么好的建议吗?
关于第一点个人表述能力不够,大家可能不能理解,在此利用某游戏的一张截图作为示范。
本游戏欢迎大家来坑=v=!~
小小广告一下=m=
http://rpg.blue/thread-250560-1-1.html

点评

用法不变。依旧是<品质 x>,x代表品质等级,当x大于7时不描绘边框。  发表于 2012-12-1 16:29
喔我穷死了,求塞糖=m=  发表于 2012-12-1 16:22

评分

参与人数 9星屑 +828 收起 理由
冲啊小笼包 + 20 精品文章
acn00269 + 100
仲秋启明 + 200 塞糖塞糖
satgo1546 + 6 有爱的脚本
菜鸟飞呀飞 + 30 妹纸好…
无名小兵 + 12 塞糖 塞糖 塞糖 塞糖 塞糖 塞糖.
feizhaodan + 300 奖赏条例
迷糊的安安 + 100 塞糖塞糖=v=
草莓 + 60 塞糖

查看全部评分

大家好,我叫节操,有一天,我被吃了。
http://forever-dream.5d6d.com
永恒の梦制作组论坛

129993099
永恒の梦制作组QQ群

Lv1.梦旅人

梦石
0
星屑
50
在线时间
687 小时
注册时间
2012-10-29
帖子
1543
2
发表于 2012-12-1 16:29:24 | 只看该作者
半透明是指?菜单背景?图标?

点评

嗯……如你所见,是那个边框的背景………  发表于 2012-12-1 16:41
修改劇本中,仔細審查原來的劇情大綱,覺得有點不太滿意,嘗試編寫不同主角不同主線的劇情,希望能寫得出來。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
687 小时
注册时间
2012-10-29
帖子
1543
3
发表于 2012-12-1 18:44:05 | 只看该作者
  1. #===========================================================================
  2. # Window Color Opacity - v1.0
  3. # Author: Melkino
  4. #===========================================================================

  5. $imported = {} if $imported.nil?
  6. $imported["MK-WindowOpacity"] = true

  7. #-------------------------------------------------------------------------
  8. # ▼ About
  9. #-------------------------------------------------------------------------
  10. # This script lets you change the opacity of the colored portion of game
  11. # windows. Window borders are unaffected, though.
  12. #
  13. #-------------------------------------------------------------------------
  14. # ▼ Installation
  15. #-------------------------------------------------------------------------
  16. # Paste below Materials and above Main.
  17. #
  18. #-------------------------------------------------------------------------
  19. # ▼ Updates
  20. #-------------------------------------------------------------------------
  21. # May 9, 2012 - Started & finished script
  22. #
  23. #-------------------------------------------------------------------------

  24. class Window_Base < Window

  25. module MK_WIN_OPA
  26.   
  27.     # Input a value between 0-255.
  28.     # 0 makes windows fully transparent, while 255 makes them opaque.
  29.     OPACITY = 120 #<-不透明度改这个值 0-255
  30.   
  31. end #module
  32.   
  33. #===========================================================================
  34. #  Customization ends here.
  35. #===========================================================================

  36.   #--------------------------------------------------------------------------
  37.   # * Object Initialization
  38.   #--------------------------------------------------------------------------
  39.   
  40.   alias mk_initialize initialize
  41.   def initialize(x, y, width, height)
  42.     super
  43.     self.windowskin = Cache.system("Window")
  44.     self.back_opacity = MK_WIN_OPA::OPACITY
  45.     update_padding
  46.     update_tone
  47.     create_contents
  48.     @opening = @closing = false
  49.   end
  50.   
  51. end # class
复制代码
菜单半透明的话,可以试试这个,默认脚本的窗口会一致变成半透明,
在国外的 RGSS3 论坛看到的,跟 RMXP 的半透明窗口脚本效果差不多,
不过像任务系统或敌人图鉴这一类不是默认的脚本就不一定了。

点评

:)感谢您的热心哦~  发表于 2012-12-1 19:20
哦,不好意思,我明白了,图标的边框背景半透明,范例图上白色背景半透明不太明显,现在才注意到。  发表于 2012-12-1 18:52
修改劇本中,仔細審查原來的劇情大綱,覺得有點不太滿意,嘗試編寫不同主角不同主線的劇情,希望能寫得出來。
回复 支持 反对

使用道具 举报

Lv2.观梦者

花开堪折直须折

梦石
0
星屑
676
在线时间
943 小时
注册时间
2010-7-17
帖子
4963

贵宾

4
 楼主| 发表于 2012-12-2 11:26:12 | 只看该作者
卧槽你们都只会塞糖没个回复的吗!
谁来告诉我这个半透明怎么简写啊!!!

点评

哦,把160改小就行  发表于 2012-12-2 16:40
self.back_opacity=0 窗口中的,这个?  发表于 2012-12-2 14:45
大家好,我叫节操,有一天,我被吃了。
http://forever-dream.5d6d.com
永恒の梦制作组论坛

129993099
永恒の梦制作组QQ群
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
560
在线时间
1286 小时
注册时间
2011-6-14
帖子
4086
5
发表于 2012-12-2 12:27:20 | 只看该作者
冰舞蝶恋 发表于 2012-12-2 11:26
卧槽你们都只会塞糖没个回复的吗!
谁来告诉我这个半透明怎么简写啊!!! ...
  1. back = color.clone
  2. back.alpha = 160
复制代码
这么简写,或许可以呢

点评

蟹蟹 我回去试试....对va一窍不通啊…………  发表于 2012-12-2 14:08
回复 支持 反对

使用道具 举报

Lv4.逐梦者

醉啸 长风万里

梦石
0
星屑
6157
在线时间
6592 小时
注册时间
2007-12-16
帖子
4501

贵宾

6
发表于 2012-12-2 12:27:24 | 只看该作者
冰舞蝶恋 发表于 2012-12-2 11:26
卧槽你们都只会塞糖没个回复的吗!
谁来告诉我这个半透明怎么简写啊!!! ...

我记得以前做过半透明的= =
删掉了= =

点评

TAT奴家是说,简写啊..简写.....  发表于 2012-12-9 00:00
TAT奴家是说,简写啊..简写.....  发表于 2012-12-9 00:00
喂喂!为什么你们都能理解错啊……我说的是那个图标的框后面的品质颜色背景  发表于 2012-12-2 15:12
0.0是吗!!求教!!!!!!仲秋最好了抱抱=w=  发表于 2012-12-2 14:07

还在龟速填坑中
回复 支持 反对

使用道具 举报

Lv2.观梦者

花开堪折直须折

梦石
0
星屑
676
在线时间
943 小时
注册时间
2010-7-17
帖子
4963

贵宾

7
 楼主| 发表于 2012-12-22 19:29:26 | 只看该作者
@仲秋启明 那啥,我能提你一個bug嗎,畢竟是你轉來VA的...其實那一段我不會寫來著.....
你有沒有發現數據庫裏的備註只要寫了“<xx x>”,x部分是品質數字,xx部分隨意為任何文字,不一定要為“品質”二字,甚至xx部分空的,都會顯示品質顏色什麼的......
這個算法不對00

点评

(其实我也不清楚怎么回事  发表于 2012-12-22 20:08
啊嘞,应该没问题的啊  发表于 2012-12-22 20:07
大家好,我叫节操,有一天,我被吃了。
http://forever-dream.5d6d.com
永恒の梦制作组论坛

129993099
永恒の梦制作组QQ群
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
736
在线时间
88 小时
注册时间
2012-12-28
帖子
6
8
发表于 2013-2-2 01:15:02 | 只看该作者
这个用了之后,为什么只有物品颜色变了,但装备的颜色依然没变。。
PS:用了强化插件。。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
54 小时
注册时间
2010-6-28
帖子
11
9
发表于 2013-7-17 20:10:15 | 只看该作者
这脚本挺喜欢的,收了 谢LZ
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

10
发表于 2013-7-18 09:43:09 | 只看该作者
我这有25个以上的颜色,一个一个加了脚本变得好卡,有没有办法可以优化下?
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-15 12:28

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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