Project1
标题:
请教BGM播放脚本里的一些小问题(慎入,内含N多问题)
[打印本页]
作者:
风若·飘絮
时间:
2014-1-24 16:43
标题:
请教BGM播放脚本里的一些小问题(慎入,内含N多问题)
本帖最后由 风若·飘絮 于 2014-1-25 10:06 编辑
def bgm_play(bgm)
@playing_bgm = bgm
if bgm != nil and bgm.name != ""
Audio.bgm_play("Audio/BGM/" + bgm.name, bgm.volume, bgm.pitch)
else
Audio.bgm_stop
end
Graphics.frame_reset
end
复制代码
这是RM默认脚本,
1.既然播放方法里的参数直接调用bgm,为何还要设定@playing_bgm呢?
2.P bgm时,发现bgm存储的是一个文件数组,(凡是文件都有.name .volume .pitch这几个变量吗?)请问调用这个函数时,bgm是被赋值文件路径吗?
3.BGM淡出这个方法有什么作用?求大神举例说明
4.BGS ME和BGM有什么不同?不都是播放音乐功能吗?
def windowskin_name=(windowskin_name)
@windowskin_name = windowskin_name
end
复制代码
5.以上代码什么意思?为什么让方法直接等于它的参数?和windowskin_name(windowskin_name)有什么不同
啊哈哈哈,一口气问了好多好多,其实主要是暑假里遇到的问题,学习一直较忙,积累到寒假问了,Bother大神们解答一下,谢谢!
作者:
风若·飘絮
时间:
2014-1-25 09:20
顶上去 我这不叫挖坟吧
作者:
芯☆淡茹水
时间:
2014-1-25 09:49
1,@playing_bgm 只是用于记忆用,看下面的记忆 BGM
#--------------------------------------------------------------------------
# ● 记忆 BGM
#--------------------------------------------------------------------------
def bgm_memorize
@memorized_bgm = @playing_bgm
end
复制代码
2,bgm 这个参数是一个类,这里面所有音乐参数都是一个类。看下面
module RPG
class AudioFile
def initialize(name = "", volume = 100, pitch = 100)
@name = name
@volume = volume
@pitch = pitch
end
attr_accessor :name
attr_accessor :volume
attr_accessor :pitch
end
end
复制代码
这些音乐类在数据库设置时就已经赋值了,比如地图 BGM ,各种技能的 SE 等。默认的 音量和音调是 100,100。
3,BGM 的淡出一般要带一个参数:XX秒。是指在指定的 XX秒内,音乐音量逐渐减小,最后消失停止。BGM 的淡出相当于一个平滑的过度,不像直接停止那样,
戛然而止。
4,BGM 当前只能播放一个;BGS 在播放 BGM 时可同时播放,ME 和 SE 好像也是这关系,可自己取体验。
5,这个定义写入的方法。比如在该类的外部时:$game_system.windowskin_name = “XXX” (改变窗口皮肤文件名) ,就是使用的这个方法。
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1