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

Project1

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

[已经解决] 金钱显示窗口(添加开关)

[复制链接]

Lv1.梦旅人

梦石
0
星屑
55
在线时间
85 小时
注册时间
2012-4-25
帖子
192
跳转到指定楼层
1
发表于 2012-6-21 21:08:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我有一个金钱显示窗口的脚本,想请人帮忙看一下,能否添加

当25号开关关闭时,地图上显示窗口,开启时地图上关闭窗口。

以下是脚本内容

#==============================================================================
# ◎ Window_MapVar
#------------------------------------------------------------------------------
# ◎ 地图右下显示变量窗口
#------------------------------------------------------------------------------
# 制作者:绿梨子红苹果
# 个人主页:vbgm.9126.com
# E-Mail:[email protected]
# QQ:42378361
#==============================================================================

class Window_MapVar < Window_Base
#--------------------------------------------------------------------------
# ● 初始化窗口
#--------------------------------------------------------------------------
def initialize
   
   # 在这里设定窗口的位置啦(x,y,宽,高),记住要为窗口框架留上下左右各16象素。
   # 默认一个字符的宽和高只有20左右的,这里单位为“金”,加上8位数字。
   super(470,0,160,60)
   
   # 窗口的不透明度(0 ~ 255)。范围外的数值会自动修正。
   # 注:255为不透明,0为完全透明……这个参数为零则只显示窗口内容而没有窗口,
   # 实际上这样做不如不载入窗口背景图,更加节约内存……不过比较麻烦就是。
   self.opacity=64
   # 窗口背景的不透明度(0 ~ 255)。范围外的数值会自动修正。
   # 注:就是窗口那个蓝色的背景啦……受上面参数影响
   self.back_opacity=0
   # 窗口内容的不透明度(0 ~ 255)。范围外的数值会自动修正。
   # 注:窗口内的文字等内容,除非你是想画个空窗口,否则千万不要设0。
   self.contents_opacity=255

   # 这个不用管他,必定要写的
   self.contents = Bitmap.new(width - 32, height - 32)
   
   # 建立记录变量原始值,用于判断变量值是否改变,一定要保证不会是变量原来的值
   @var_value_old = -1
   # 载入想要显示的图片就可以了,这里推荐是24*24的标准RM图标
   @var_icon = Bitmap.new("Graphics/Icons/i一叠钞票")
   
   refresh
end
#--------------------------------------------------------------------------
# ● 刷新
#--------------------------------------------------------------------------
def refresh
   # 在这里加上判断语句,就可以完成变量值改变才刷新的效果,节约资源
   if @var_value_old==$game_party.gold then
     return
   end  
   # 先清空内容啦
   self.contents.clear
   # 计算系统data里金钱单位的字符宽度
   cx = contents.text_size($data_system.words.gold).width
   # 设定字色为白色。生成RGB颜色参数(红,绿,蓝),这个不用我来说吧...
   self.contents.font.color = Color.new(255,255,255)
   # 绘制金钱数字。记住要用“.to_s”将数字转换为字符!
   # 注:这里24是留着画24*24图标的,104表示所有字符总宽
   self.contents.draw_text(24, 0, 104-cx, 28, $game_party.gold.to_s, 2)
   # 设定字色为金色
   self.contents.font.color = Color.new(255,255,0)
   # 绘制金钱单位。
   # 注:128=160(窗口宽)-32
   self.contents.draw_text(128-cx, 0, cx, 28, $data_system.words.gold)
   # 最后画上需要的图标就可以啦,blt方法详见RM帮助文档啦...
   self.contents.blt(0, 2, @var_icon, Rect.new(0, 0, 24, 24))  
end
end

Lv1.梦旅人

54酱是大笨蛋!

梦石
0
星屑
66
在线时间
1389 小时
注册时间
2011-2-23
帖子
5014
2
发表于 2012-6-21 21:30:42 | 只看该作者
加在最后一个end上…
  1.   if $game_switches[25] == true
  2.      self.visible = false
  3.    else
  4.      self.visible = true
  5.    end
复制代码
去你爹的现充.去你爹的异性恋.
回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2774
在线时间
1605 小时
注册时间
2010-10-22
帖子
1059
3
发表于 2012-6-21 21:31:36 | 只看该作者
加个条件分歧看看(打※号的部分)

  1. #------------------------------------------------------------------------------
  2. if $game_switches[25]==false #当25号开关关闭时※
  3. # 窗口的不透明度(0 ~ 255)。范围外的数值会自动修正。
  4.    # 注:255为不透明,0为完全透明……这个参数为零则只显示窗口内容而没有窗口,
  5.    # 实际上这样做不如不载入窗口背景图,更加节约内存……不过比较麻烦就是。
  6.    self.opacity=64
  7.    # 窗口背景的不透明度(0 ~ 255)。范围外的数值会自动修正。
  8.    # 注:就是窗口那个蓝色的背景啦……受上面参数影响
  9.    self.back_opacity=0
  10.    # 窗口内容的不透明度(0 ~ 255)。范围外的数值会自动修正。
  11.    # 注:窗口内的文字等内容,除非你是想画个空窗口,否则千万不要设0。
  12.    self.contents_opacity=255
  13. else  #当25号开关打开时※
  14.   self.contents_opacity=0 # 窗口内容的不透明度※
  15.   self.back_opacity=0 # 窗口背景的不透明度※
  16.   self.opacity=0 # 窗口的不透明度 ※
  17. end※
复制代码
【2022.06.03】原本以为已经不可能再找回来的东西重新找回来了,原本一直念念不忘的坑终于再一次拿起铲子了。一别竟近10年,你好,我的世界我的梦。
【不可阻挡】异元-地劫黎明
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
55
在线时间
85 小时
注册时间
2012-4-25
帖子
192
4
 楼主| 发表于 2012-6-21 21:36:47 | 只看该作者
两位的回答,好吧。 我要回家测试过后才能给最佳。
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
55
在线时间
85 小时
注册时间
2012-4-25
帖子
192
5
 楼主| 发表于 2012-6-22 19:21:28 | 只看该作者
两位的脚本都会报错,是不是我的脚本排版有问题,放在倒数第二个了
回复

使用道具 举报

Lv1.梦旅人

54酱是大笨蛋!

梦石
0
星屑
66
在线时间
1389 小时
注册时间
2011-2-23
帖子
5014
6
发表于 2012-6-22 20:24:18 | 只看该作者
  1. #==============================================================================
  2. # ◎ Window_MapVar
  3. #------------------------------------------------------------------------------
  4. # ◎ 地图右下显示变量窗口
  5. #------------------------------------------------------------------------------
  6. # 制作者:绿梨子红苹果
  7. # 个人主页:vbgm.9126.com
  8. # E-Mail:[email protected]
  9. # QQ:42378361
  10. #==============================================================================

  11. class Window_MapVar < Window_Base
  12. #--------------------------------------------------------------------------
  13. # ● 初始化窗口
  14. #--------------------------------------------------------------------------
  15. def initialize
  16.      
  17.     # 在这里设定窗口的位置啦(x,y,宽,高),记住要为窗口框架留上下左右各16象素。
  18.     # 默认一个字符的宽和高只有20左右的,这里单位为“金”,加上8位数字。
  19.     super(470,0,160,60)
  20.      
  21.     # 窗口的不透明度(0 ~ 255)。范围外的数值会自动修正。
  22.     # 注:255为不透明,0为完全透明……这个参数为零则只显示窗口内容而没有窗口,
  23.     # 实际上这样做不如不载入窗口背景图,更加节约内存……不过比较麻烦就是。
  24.     self.opacity=64
  25.     # 窗口背景的不透明度(0 ~ 255)。范围外的数值会自动修正。
  26.     # 注:就是窗口那个蓝色的背景啦……受上面参数影响
  27.     self.back_opacity=0
  28.     # 窗口内容的不透明度(0 ~ 255)。范围外的数值会自动修正。
  29.     # 注:窗口内的文字等内容,除非你是想画个空窗口,否则千万不要设0。
  30.     self.contents_opacity=255

  31.     # 这个不用管他,必定要写的
  32.     self.contents = Bitmap.new(width - 32, height - 32)
  33.      
  34.     # 建立记录变量原始值,用于判断变量值是否改变,一定要保证不会是变量原来的值
  35.     @var_value_old = -1
  36.     # 载入想要显示的图片就可以了,这里推荐是24*24的标准RM图标
  37.     @var_icon = Bitmap.new("Graphics/Icons/i一叠钞票")
  38.      
  39.     refresh
  40. end
  41. #--------------------------------------------------------------------------
  42. # ● 刷新
  43. #--------------------------------------------------------------------------
  44. def refresh
  45.     # 在这里加上判断语句,就可以完成变量值改变才刷新的效果,节约资源
  46.     if @var_value_old==$game_party.gold then
  47.       return
  48.     end  
  49.     # 先清空内容啦
  50.     self.contents.clear
  51.     # 计算系统data里金钱单位的字符宽度
  52.     cx = contents.text_size($data_system.words.gold).width
  53.     # 设定字色为白色。生成RGB颜色参数(红,绿,蓝),这个不用我来说吧...
  54.     self.contents.font.color = Color.new(255,255,255)
  55.     # 绘制金钱数字。记住要用“.to_s”将数字转换为字符!
  56.     # 注:这里24是留着画24*24图标的,104表示所有字符总宽
  57.     self.contents.draw_text(24, 0, 104-cx, 28, $game_party.gold.to_s, 2)
  58.     # 设定字色为金色
  59.     self.contents.font.color = Color.new(255,255,0)
  60.     # 绘制金钱单位。
  61.     # 注:128=160(窗口宽)-32
  62.     self.contents.draw_text(128-cx, 0, cx, 28, $data_system.words.gold)
  63.     # 最后画上需要的图标就可以啦,blt方法详见RM帮助文档啦...
  64.     self.contents.blt(0, 2, @var_icon, Rect.new(0, 0, 24, 24))  
  65. end
  66.   if $game_switches[25] == true
  67.      self.visible = false
  68.    else
  69.      self.visible = true
  70.    end
  71. end
复制代码
LZ你确定是这个样子?

点评

嗯,你给了提示 改脚本我还是不可能会改错的。 还是给你最佳吧。  发表于 2012-6-23 06:40

评分

参与人数 1梦石 +2 收起 理由
hcm + 2 认可答案

查看全部评分

去你爹的现充.去你爹的异性恋.
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-26 07:22

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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