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

Project1

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

[已经解决] 【专业伸手党】求一个能让选项颜色变成其他颜色的方法...

[复制链接]

Lv1.梦旅人

梦石
0
星屑
239
在线时间
2399 小时
注册时间
2008-4-11
帖子
12326

贵宾第6届短篇游戏比赛季军

跳转到指定楼层
 楼主| 发表于 2013-3-4 19:56:11 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
5星屑
本帖最后由 一瞬间的幻觉 于 2013-3-4 20:00 编辑


跪求一种绿色的,无冲突的alias方式的解决方法。
可以让其中一个或者几个选项改变颜色。

因为我们游戏中经常会碰到这种情况“某个选项暂时还未开放”但是由于
选项的颜色都一样,无法区别哪个没开放,所以大多数玩家都会点击进去

这样就浪费不少时间了。

下图说明:


点击前往海外之国,结果,是不能去



如果我们之前在选项中就把这一项变成灰色
那玩家就知道“哦,这个选项还没开放呢”,就不会点进去了


另外,求选项里面加入变量\v[x]并显示出来的方法

谢谢

最佳答案

查看完整内容

您提供的脚本看了下,发现脚本是用Window_Command来做选项的,并且Window_Command中的 draw_item方法并没有被改写。 我尝试写了个脚本,您试试行不: #============================================================================== # ■ Window_Command #------------------------------------------------------------------------------ #  一般的命令选择行窗口。 #=================================================== ...

点评

小瞬,9楼的回答你给点评一下啊,是否满意,人家都提出帮你修补到满意为止了。  发表于 2013-3-9 22:47
幻觉,请试试我的脚本,假如不行的话,我不停修补,补到你满意为止O(∩_∩)O~  发表于 2013-3-8 14:43

Lv1.梦旅人

匿·蹤

梦石
0
星屑
65
在线时间
99 小时
注册时间
2006-3-19
帖子
456
来自 11楼
发表于 2013-3-4 19:56:12 | 只看该作者
本帖最后由 OCTSJimmy 于 2013-3-20 09:52 编辑

您提供的脚本看了下,发现脚本是用Window_Command来做选项的,并且Window_Command中的 draw_item方法并没有被改写。
我尝试写了个脚本,您试试行不:

RUBY 代码复制
  1. #==============================================================================
  2. # ■ Window_Command
  3. #------------------------------------------------------------------------------
  4. #  一般的命令选择行窗口。
  5. #==============================================================================
  6. class Window_Command < Window_Selectable
  7.    attr_reader :temp # [url=home.php?mod=space&uid=263426]@temp[/url] 用于增强
  8.    attr_reader :frozen_char # 特殊字符处理
  9.   #--------------------------------------------------------------------------
  10.   # ● 绘制项目
  11.   #     index   : 项目位置
  12.   #     enabled : 有效标志,false时项目半透明化
  13.   #     By OCTSJimmy(风星剑仙)
  14.   #        做了增强,1、可使用\v[x]引用变量
  15.   #                  2、可使用\n[x]引用角色名字
  16.   #                  3、可使用\c[x]定义颜色
  17.   #                  4、可以使用\g来显示金钱窗口
  18.   #                  5、可以使用\s[x]来引用技能
  19.   #                  6、可以使用\i[x]来引用物品
  20.   #                  7、可以使用\w[x]来引用武器
  21.   #                  8、可以使用\a[x]来引用防具
  22.   #                  9、可以使用\f[sx]来改变字号\f[nx]来改变字体\f[cx]与\c一致,定义颜色
  23.   #                  10、可以使用\f[c#x]来依据rgb定义颜色
  24.   #                  11、可以使用\f[ax]来使用字体的附加效果
  25.   #                  12、可以使用\a[x]来使用角色动画
  26.   #                  13、可以使用\b[x]来使用心情动画
  27.   #         使用方法:main以上插入,其他请参见上面部分,另外设置成无效的选项,自动强制透明度为128需注意。
  28.   #         可能的冲突:所有重定义Window_Command中draw_item方法的脚本均会发生冲突。
  29.   #--------------------------------------------------------------------------
  30.   def draw_item(index, enabled = true)
  31.     rect = item_rect(index)
  32.     rect.x += 4
  33.     rect.width -= 8
  34.     h = nil
  35.     self.contents.clear_rect(rect)
  36.     self.contents.font.color = normal_color
  37.     if @commands[index].frozen?
  38.          @temp= @commands[index].clone
  39.     else
  40.          @temp = @commands[index].dup #这个东东是最坑的,假如不使用dup各种蛋疼
  41.     end
  42.  
  43.     ## 特定字符处理
  44.     @temp.gsub!(/#\[(.*?)\]/)    {@frozen_char.push($1); "\xff"}
  45.     @temp.gsub!(/#\<(.*?)\>/)    {""}
  46.     ## 默认控制符
  47.     @temp.gsub!(/\\V\[(\d+)\]/i) {$game_variables[$1.to_i]}
  48.     @temp.gsub!(/\\V\[(\d+)\]/i) {$game_variables[$1.to_i]}
  49.     @temp.gsub!(/\\N\[(\d+)\]/i) {$game_actors[$1.to_i].name}
  50.     @temp.gsub!(/\\C\[(\d+)\]/i) {"\x01[#{$1}]"}
  51.     @temp.gsub!(/\\G/)           {"\x02"}
  52.     @temp.gsub!(/\\\\/)          {"\\"}
  53.     ## 更改不透明度
  54.     @temp.gsub!(/\\O\[(\d+)\]/i) {"\x09[#{$1}]"}
  55.     ## 显示数据库元素
  56.     @temp.gsub!(/\\S\[(\d+)\]/i) {"\x0a[#{$1}]" + $data_skills[$1.to_i].name}
  57.     @temp.gsub!(/\\I\[(\d+)\]/i) {"\x0b[#{$1}]" + $data_items[$1.to_i].name}
  58.     @temp.gsub!(/\\W\[(\d+)\]/i) {"\x0c[#{$1}]" + $data_weapons[$1.to_i].name}
  59.     @temp.gsub!(/\\A\[(\d+)\]/i) {"\x0d[#{$1}]" + $data_armors[$1.to_i].name}
  60.     ## 更改字体
  61.     @temp.gsub!(/\\F\[S(\d+)\]/i){"\x0e[#{$1}]"}
  62.     @temp.gsub!(/\\F\[N(\d+)\]/i){"\x0f[#{$1}]"}
  63.     @temp.gsub!(/\\F\[C(\d+)\]/i){"\x01[#{$1}]"}
  64.     ## 16进制颜色
  65.     @temp.gsub!(/\\F\[C\#([a-f0-9]+)\]/i) {"\x10[#{$1}]"}
  66.     ## 字体附加效果
  67.     @temp.gsub!(/\\F\[A(\d+)\]/i){"\x11[#{$1}]"}
  68.     ## 提取动画对象和 ID
  69.     @temp.gsub!(/\\A\[(\S+)\,(\d+)\]/i) {"\x15[#{$1},#{$2}]"}
  70.     @temp.gsub!(/\\B\[(\S+)\,(\d+)\]/i) {"\x16[#{$1},#{$2}]"}
  71.    loop do
  72.       c = @temp.slice!(/./m)
  73.       case c
  74.       when nil                          # 没有可以显示的文字
  75.         break
  76.       when "\x01"                       # \C[n]  (更改文字色)
  77.         @temp.sub!(/\[([0-9]+)\]/, "")
  78.         self.contents.font.color = text_color($1.to_i)
  79.         next
  80.       when "\x02"                       # \G  (显示所持金)
  81.         @gold_window.refresh
  82.         @gold_window.open
  83.       ## 更改不透明度的情况下
  84.       when "\x09"
  85.         @temp.sub!(/\[(\d+)\]/, "")
  86.         self.contents.font.color.alpha = $1.to_i
  87.       ## 显示技能情况下
  88.       when "\x0a"
  89.         @temp.sub!(/\[(\d+)\]/, "")
  90.         draw_icon($data_skills[$1.to_i].icon_index, rect.x, rect.y)
  91.         ## 横坐标增加图标宽度
  92.         rect.x += 24
  93.       ## 显示物品情况下
  94.       when "\x0b"
  95.         @temp.sub!(/\[(\d+)\]/, "")
  96.         draw_icon($data_items[$1.to_i].icon_index, rect.x, rect.y)
  97.         ## 横坐标增加图标宽度
  98.         rect.x += 24
  99.       ## 显示武器情况下
  100.       when "\x0c"
  101.         @temp.sub!(/\[(\d+)\]/, "")
  102.         p $1
  103.         draw_icon($data_weapons[$1.to_i].icon_index, rect.x, rect.y)
  104.         ## 横坐标增加图标宽度
  105.         rect.x += 24
  106.       ## 显示防具情况下
  107.       when "\x0d"
  108.         @temp.sub!(/\[(\d+)\]/, "")
  109.         draw_icon($data_armors[$1.to_i].icon_index, rect.x, rect.y)
  110.         ## 横坐标增加图标宽度
  111.         rect.x += 24
  112.       ## 更改字体的情况下
  113.       when "\x0e"
  114.         @temp.sub!(/\[(\d+)\]/, "")
  115.         self.contents.font.size = $1.to_i
  116.       when "\x0f"
  117.         @temp.sub!(/\[(\d+)\]/, "")
  118.         name = Font_Lib[$1.to_i]
  119.         self.contents.font.name = Font.exist?(name) ? name : Font.default_name
  120.       ## 16进制颜色
  121.       when "\x10"
  122.         @temp.sub!(/\[(\w+)\]/, "")
  123.         r,g,b = $1.scan(/../)
  124.         self.contents.font.color = Color.new(r.hex, g.hex, b.hex)
  125.       ## 字体附加效果
  126.       when "\x11"
  127.         @temp.sub!(/\[(\d+)\]/, "")
  128.         ## 获取字体附加效果
  129.         @font_adj = $1.to_i
  130.       ## 显示角色动画
  131.       when "\x15"
  132.         @temp.sub!(/\[(\S+)\,(\d+)\]/, "")
  133.         character = interpreter.get_character($1.to_i)
  134.         character.animation_id = $2.to_i unless character.nil?
  135.         next
  136.       ## 显示心情动画
  137.       when "\x16"
  138.         @temp.sub!(/\[(\S+)\,(\d+)\]/, "")
  139.         character = interpreter.get_character($1.to_i)
  140.         character.balloon_id = $2.to_i unless character.nil?
  141.         next
  142.       ## 特定字符处理
  143.       when "\xff"
  144.         @temp.insert(0, @frozen_char.shift)
  145.       else
  146.         c_width = self.contents.text_size(c).width
  147.         if h.nil?
  148.           h = c_width
  149.         end
  150.         self.contents.font.color.alpha = enabled ? 255 : 128
  151.         self.contents.draw_text(rect,c)
  152.         rect.x += h
  153.         rect.width = h
  154.       end
  155.     end
  156.     rect.x = 0
  157.   end
  158. end
         

点评

非常不好意思,被老妈禁网好多时间  发表于 2013-3-14 22:05
卐忍 → 解忍 → 元忍 → 隐忍 → 卍忍 → 匿踪(最终)
完全退步到了卐忍阶段
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
239
在线时间
2399 小时
注册时间
2008-4-11
帖子
12326

贵宾第6届短篇游戏比赛季军

10
 楼主| 发表于 2013-3-14 22:41:45 | 只看该作者
OCTSJimmy 发表于 2013-3-4 19:56
您提供的脚本看了下,发现脚本是用Window_Command来做选项的,并且Window_Command中的 draw_item方法并没有 ...

伤不起啊,,,被禁上网十天。。。。

今天偷偷上,来把多天未解决的帖子解决了

非常赞的脚本,,,小瞬竟然可以请动前辈为我专门写一个脚本,太受宠若惊啦
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
47 小时
注册时间
2013-2-1
帖子
108
9
发表于 2013-3-9 20:52:38 | 只看该作者
本帖最后由 神秘来客3 于 2013-3-9 20:56 编辑

\C[n]就行啦,不过第二个还要\C[0]。(LZ游戏第一个选项亮了)
回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
4422
在线时间
1911 小时
注册时间
2010-12-21
帖子
2365
8
发表于 2013-3-9 13:21:00 | 只看该作者
嘛 如果是别人的脚本的话 就不知道怎么做了
如果是重新做一个的话倒是好办
绿坝娘素材库企划

素材库获取方法:暂时中止,需求者私聊。
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
239
在线时间
2399 小时
注册时间
2008-4-11
帖子
12326

贵宾第6届短篇游戏比赛季军

7
 楼主| 发表于 2013-3-5 19:38:22 | 只看该作者
protosssonny 发表于 2013-3-5 09:52
这样的话,我们需要你现有工程的这个菜单呀。如果方便的话,上上现有的工程。
这个问题比较简单,暂时看看 ...

可以直接改沉影大大的脚本。。。反正我是无耻的伸手党,,,,嘿嘿

点评

好的、、、、  发表于 2013-3-5 20:03
那么先看看大家是否愿意来帮,反正你这问题也不急的,离你制作完成应该还有很长时间吧?若真没人回答,P叔再来搞定它!  发表于 2013-3-5 19:41
回复

使用道具 举报

Lv3.寻梦者

伴侣:北岛谜烟

梦石
0
星屑
3042
在线时间
3547 小时
注册时间
2012-8-7
帖子
12181

贵宾

6
发表于 2013-3-5 18:23:12 | 只看该作者
改造自沉影大大的对话框加强版,我在期待,我在伸手,我在等待,不是,我是来问小瞬用的是什么字体的……(会被扣分的= =

点评

华康童童体  发表于 2013-3-5 19:39
本人收不到提醒(点评|回复|@人),总之有事情到空间留言一起普通普通
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
239
在线时间
2399 小时
注册时间
2008-4-11
帖子
12326

贵宾第6届短篇游戏比赛季军

5
 楼主| 发表于 2013-3-5 17:18:49 | 只看该作者
本帖最后由 一瞬间的幻觉 于 2013-3-14 22:36 编辑
protosssonny 发表于 2013-3-5 09:52
这样的话,我们需要你现有工程的这个菜单呀。如果方便的话,上上现有的工程。
这个问题比较简单,暂时看看 ...


这个选项的工程,只是加了选择项的坐标,以及选项的背景图

应该没什么关系把,,,

改造自沉影大大的对话框加强版,呵呵

点评

连版主都不晓得怎么弄,我们这些平民百姓怎么可能知道!  发表于 2013-3-8 12:35
那么说,直接用沉影大的范例来改造也是可以的了?  发表于 2013-3-5 17:28
回复

使用道具 举报

Lv3.寻梦者 (版主)

八宝粥的基叔

梦石
0
星屑
4699
在线时间
5240 小时
注册时间
2009-4-29
帖子
14318

贵宾

4
发表于 2013-3-5 09:52:45 | 只看该作者
本帖最后由 protosssonny 于 2013-3-5 09:54 编辑

这样的话,我们需要你现有工程的这个菜单呀。如果方便的话,上上现有的工程。
这个问题比较简单,暂时看看有不由人愿意接手,P叔先观察一下情况,实在没人的话P叔再考虑接。
简单的饭菜向来是要留给大家吃的。
《逝去的回忆3:四叶草之梦》真情发布,欢迎点击图片下载试玩喵。

《逝去的回忆3》的讨论群:
一群:192885514
二群:200460747
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
239
在线时间
2399 小时
注册时间
2008-4-11
帖子
12326

贵宾第6届短篇游戏比赛季军

3
 楼主| 发表于 2013-3-4 21:10:13 | 只看该作者
Password 发表于 2013-3-4 21:05
小瞬啊……
用图片代替不行么?

图片的话,我也有想过,但是感觉不是很方便,,,还是伸手更加方便啊

点评

绝对同意结城的话,如果是我的话,我宁愿麻烦点换个方法,也不愿做伸手党。。。  发表于 2013-3-14 23:01
壕无人性可言!  发表于 2013-3-4 22:15
回复

使用道具 举报

Lv4.逐梦者

送快递的水表员

梦石
10
星屑
4867
在线时间
3303 小时
注册时间
2012-6-27
帖子
7160

开拓者贵宾

2
发表于 2013-3-4 21:05:06 | 只看该作者
小瞬啊……
用图片代替不行么?

原理就像事件标题不行么? = =|
(理论上这绝对可行!绝对!)
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
196
在线时间
835 小时
注册时间
2012-9-16
帖子
1811
1
发表于 2013-3-4 19:59:54 | 只看该作者
对了喵,选项里貌似不是可以用代码么、应该可以\c[n]的。不过貌似前面会空出来一点,可以这样解决(虽然是VA的,不过貌似VX是可以用的。。。)http://rpg.blue/forum.php?mod=viewthread&tid=233548

——旧坑欢迎戳
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-23 08:05

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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