查看: 2194|回复: 2

[已经过期] 如何修改Audio模块里的bgm_play方法

[复制链接]
梦石
0
星屑
50
在线时间
28 小时
注册时间
2008-12-23
回帖
24
发表于 2015-11-8 14:32:15 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 风清翔 于 2015-11-8 14:34 编辑

打算做个游戏内音量修改系统,其中一个重要想法就是把Audio.bgm_play重定义一下
大略上是这样的思路:
module Audio
 alias bgm_play_b bgm_play
 def bgm_play(a,b,c)
  d=load_data("Data/Volume.rxdata")
  bgm_play_b(a,b+d-100,c)
 end
end
"Data/Volume.rxdata"是我之前准备好了的一个储存变量的文件。
但是运行游戏测试时却发现提示“Audio模块中找不到bgm_play这个方法”
怎么回事,是我哪里想错了吗?求解答。
我的游戏我自己做

梦石
1
星屑
23241
在线时间
9564 小时
注册时间
2012-6-19
回帖
7018

开拓者短篇九导演组冠军

发表于 2015-11-8 15:22:20 | 显示全部楼层
bgm_play 是 Audio 的类方法不是实例方法,这么干:
  1. class << Audio
  2.  alias bgm_play_b bgm_play
  3.  def bgm_play(a,b,c)
  4.   d=load_data("Data/Volume.rxdata")
  5.   bgm_play_b(a,b+d-100,c)
  6.  end
  7. end
复制代码

点评

仍然不行……提示在Class:Audio中找不到Bgm_play这个方法。  发表于 2015-11-8 15:32

评分

参与人数 1星屑 +200 收起 理由
RyanBern + 200 显然这样做是可以的

查看全部评分

回复

使用道具 举报

梦石
0
星屑
3905
在线时间
1972 小时
注册时间
2013-1-3
回帖
9146
发表于 2015-11-8 17:21:10 | 显示全部楼层
本帖最后由 紫英晓狼1130 于 2015-11-8 17:33 编辑

我一般是这样做的,LZ可以参考一下
首先在Game_System中“定义实例变量”中加一个volume
然后把@volume初始化一下
最后在“演奏 BGM”的时候把bgm.volume乘以volume / 100
这个就是百分率了,SE、ME、BGS也是同理

忘了说使用方法了,补一脚本,LZ再看看
  1. $game_system.bgm_volume = 40
  2. $game_system.bgm_play($game_system.bgm_memorize)
复制代码

点评

首先这个无法保存在文件中使得每次开游戏都要重新设定一次。然后这个相当麻烦,我要把所有bgm_play都重新设定一遍……又麻烦又不讨好。  发表于 2015-11-8 17:39
《宿愿·寻剑篇》正式版已经发布!快去看看!点击进入论坛发布贴
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部