Project1
标题:
如何做一个类似Audio的模块
[打印本页]
作者:
hys111111
时间:
2015-1-3 14:58
标题:
如何做一个类似Audio的模块
我接触过的游戏中,很多都是两个BGM伴随着播放。
两个BGM通常是主BGM+soundspace,在一些情况,比如说剧情的时候,主BGM会缩小,soundspace仍然播放。
实际上,BGS可以代替这个soundspace,但是有些情况。
首先,BGS没办法播放mid的文件。
另外,假如接近瀑布、河流这类东西。要放瀑布的BGS,就导致代替soundspace的BGS停止。
我的想法是:
Audio2 = Audio
Audio2.bgs_play("Audio/BGS/soundspace",100,100)
复制代码
实际上第二行一点反应都没有。
Audio的类实际上是个module,但是用它来制作Audio2时也有些困难。
p Audio
p Audio2
复制代码
输出的均为Audio和Audio2,没有其它信息。
而p它的那些方法时,输出的是nil
p Audio.bgm_play("Audio/BGM/乩童之塔·舞风",100,100)#==>nil
复制代码
所以没法参照Audio做一个类似Audio的Audio2出来。
现有RGSSAudioInitialize、RGSSAudioFinalize两个函数。
我要想办法来调用。
module Audio2
Initialize = ::Win32API.new('RGSS103J', 'RGSSAudioInitialize', 'I', 'I')
Finalize = ::Win32API.new('RGSS103J', 'RGSSAudioFinalize', nil, 'I')
end
Audio2.bgm_play("Audio/BGM/乩童之塔·舞风",100,100)#出错
复制代码
得到了一个模块,但是在第6喊bgm_play就出错了。因为方法没有定义。
现在,如何做一个类似Audio的模块?
作者:
chd114
时间:
2015-1-3 17:37
SE可以同时放多个···还是说你的工程不能这样弄?
作者:
taroxd
时间:
2015-1-3 17:38
https://rpg.blue/thread-256937-1-1.html
没用过,不知道好不好用
作者:
hys111111
时间:
2015-1-4 14:02
taroxd 发表于 2015-1-3 17:38
https://rpg.blue/thread-256937-1-1.html
没用过,不知道好不好用
不行,先不说放不放得声音。
主要是初始化的时候就出错了,后来解决了初始化出错问题之后,试着去调用Source
source = Source.new
复制代码
无论怎么调用都错。在类里面和类外面调用都错,改成全局、局部变量也不行。
代码没讲得详细需要如何调用它。
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1