翔鹰帝国网|帝国时代论坛|帝国时代系列|神话时代
 找回密码
 注册翔鹰会员(昵称)
搜索
查看: 1096|回复: 11

[求助] 有没有办法循环播放音乐

[复制链接]

1

主题

0

精华

145

积分

男爵

耕战
21
鹰币
336
天龙币
0
回帖
10
附庸关系0
发表于 2015-10-11 23:47:49 | 显示全部楼层 |阅读模式
虽然计时器+循环可以在背景音乐只有一首的情况下实现循环播放= =

但是如果要换音乐呢~ 能不能设置一个队列,在播放完这首歌后播放下一首
回复

使用道具 举报

144

主题

4

精华

1万

积分

宗主教

耕战
2738
鹰币
531092
天龙币
47
回帖
14734

翔鹰建站十周年纪念章二级帝国勋章一级嘉禾勋章翔六水王创意工坊通行证

附庸关系12
发表于 2015-10-12 02:06:31 | 显示全部楼层
有两个方法:
1.触发(循环):显示信息播放BGM1+显示信息播放BGM2
2.触发1:计时器+播放声音BGM1+激活触发2
   触发2:计时器+播放声音BGM2+激活触发1
回复

使用道具 举报

79

主题

0

精华

5989

积分

国王

耕战
1028
鹰币
79
天龙币
0
回帖
1164

活跃者

附庸关系0
发表于 2015-10-12 17:28:29 | 显示全部楼层
没有办法,因为帝国的触发系统无法检测BGM是否已经放完,BGM单曲循环也是利用了新信息无法覆盖带有BGM的原信息的BUG。

楼上设计的触发:第一种很明显是错的。第二种在存档载入之后出现播放错误的可能性也非常大。

最好的办法还是使用BGM播放台一类的系统,然后进行触发调控,因为没有播放完的BGM可以用清除信息强制清除。

当然,我更倾向于使用BGM编辑软件把几首BGM合成为一首。

点评

因为你无论怎么读取,播放的都是第一个BGM,这和把BGM接起来没区别。  发表于 2015-10-15 12:52
第一种为什么错了……  发表于 2015-10-15 07:37
从零开始的日系绘画系列
01-头像篇
02-躯干篇(上)
03-躯干篇(中)
回复

使用道具 举报

65

主题

6

精华

6万

积分

圣徒

耕战
11924
鹰币
191234
天龙币
115
回帖
961

雄鹰勋章特级翔鹰勋章三级帝国勋章第十届火箭筒杯优秀战役第十届火箭筒杯最佳新人翔鹰建站十周年纪念章雏鹰勋章第一届暑假杯荣誉勋章

附庸关系0
发表于 2015-10-12 17:34:20 | 显示全部楼层
不科学的小默默 发表于 2015-10-12 17:28
没有办法,因为帝国的触发系统无法检测BGM是否已经放完,BGM单曲循环也是利用了新信息无法覆盖带有BGM的原 ...

一定要实现的话其实也不是不可以啦……不过需要为BGM续接一段空白波形,然后在BGM播放完之前,提前用触发进行清除,这样既不违和也不会导致顺序错乱。

但是这样做有个缺陷:载入进度后可能BGM会播放到一半的时候突然消失……虽然比较突兀但属于正常现象,只消失一次,之后就正常了。

点评

一时没想起来……  发表于 2015-10-12 17:49
深居以避患,静默以待时。
回复

使用道具 举报

0

主题

0

精华

158

积分

男爵

耕战
18
鹰币
323
天龙币
0
回帖
35
附庸关系0
发表于 2015-10-13 18:53:20 本帖来自手机 | 显示全部楼层
本帖最后由 XL1807 于 2015-10-13 18:55 编辑

如音乐播放长度一共是20秒。 在游戏速度‘慢’的情况下:
触发1 开 放音乐 激活触发2
触发2 关 计时器20 放音乐 激活触发3
触发3 关 计时器20 放音乐 激活触发2  

游戏速度‘中’的话计时器设置为30
游戏速度‘快’的话计时器设置为40  

就能循环播放,但F3暂停和读档会使当前音乐消失或延迟。
回复

使用道具 举报

1

主题

0

精华

145

积分

男爵

耕战
21
鹰币
336
天龙币
0
回帖
10
附庸关系0
 楼主| 发表于 2015-10-14 18:05:45 | 显示全部楼层
AMO 发表于 2015-10-12 17:34
一定要实现的话其实也不是不可以啦……不过需要为BGM续接一段空白波形,然后在BGM播放完之前,提前用触发 ...

感觉把我的问题理解复杂了
其实我的意思只要靠显示信息就能完成了。
嘛无所谓啦  只是弱弱地问一下续接空白波形的意义何在
回复

使用道具 举报

41

主题

0

精华

2万

积分

宗主教

耕战
4221
鹰币
37160
天龙币
114
回帖
5701

翔鹰建站十周年纪念章活跃者

附庸关系4
发表于 2015-10-14 18:39:18 | 显示全部楼层
换音乐的话~~可以改成一首曲子。。。。但是缺点是如果中间需要停顿的话。。。。。。
可以用显示信息。。。。。。然后清除信息这个办法来做到。。。。。。
但是就要辛苦楼主多弄几个触发啦。。。。。。
(续接空白波形好像是用来停顿。。。。。。。。。。)
我只是来打酱油的。。。
回复

使用道具 举报

65

主题

6

精华

6万

积分

圣徒

耕战
11924
鹰币
191234
天龙币
115
回帖
961

雄鹰勋章特级翔鹰勋章三级帝国勋章第十届火箭筒杯优秀战役第十届火箭筒杯最佳新人翔鹰建站十周年纪念章雏鹰勋章第一届暑假杯荣誉勋章

附庸关系0
发表于 2015-10-14 22:41:26 | 显示全部楼层
三达仔 发表于 2015-10-14 18:05
感觉把我的问题理解复杂了
其实我的意思只要靠显示信息就能完成了。
嘛无所谓啦  只是弱弱地问 ...

触发控制的时间精确地说是游戏的单位秒,虽然有研究贴和各种技术贴里说快速游戏下是2单位秒=1现实秒,但实际上1现实秒对应的单位秒应该是2+,这个只要细心,用超长的BGM测试几回就会发现。而且触发里定时器必须为单位秒的整数倍,而BGM可以是任意长度的。

说明这个主要是想表达,想要单纯地用定时触发来显示信息进而控制BGM,基本是不可能的,除非你想要战役在载入的时候不循环。所以我个人建议将显示BGM的信息调为循环,然后切换BGM的时候,采用关闭激活触发组、先清除信息后显示信息的方法。这样无论怎么存档载入都会有BGM,缺陷是第一次载入后很可能中断一下,但也仅仅是一下,如果你的BGM足够长的话,中断一下总比长时间没有BGM好吧?

接空白波形主要是无违和衔接用,因为显示信息是否已经放完BGM不取决于波形振幅,而是取决于波形长度。即便是空白,也无法被其他BGM顶掉,也可以用清除信息清除掉。这样在清除上一首BGM的时候就留给制作者很大的定时器区间,不容易造成玩家听觉上的违和。当然,定时把握得准确的话,完全可以不用续接空白波形。
深居以避患,静默以待时。
回复

使用道具 举报

1

主题

0

精华

145

积分

男爵

耕战
21
鹰币
336
天龙币
0
回帖
10
附庸关系0
 楼主| 发表于 2015-10-15 00:01:42 | 显示全部楼层
Redapple 发表于 2015-10-14 18:39
换音乐的话~~可以改成一首曲子。。。。但是缺点是如果中间需要停顿的话。。。。。。
可以用显示信息。。。 ...
AMO 发表于 2015-10-14 22:41
触发控制的时间精确地说是游戏的单位秒,虽然有研究贴和各种技术贴里说快速游戏下是2单位秒=1现实秒,但 ...

感谢两位,技能已get.. 就是懒得弄
回复

使用道具 举报

本版积分规则

排行榜|小黑屋|翔鹰帝国

GMT+8, 2024-11-16 06:04 , Processed in 0.204770 second(s), 112 queries , File On.

Powered by Hawk Studio  QS Security Corp.® Licensed

Copyright © 2001-2023, Hawkaoe.net All Rights Reserved

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