RenPy中文空间

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 117|回复: 2

[经验] screen的背景音乐和button音效

[复制链接]
发表于 2019-7-25 09:56:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 pemelaaa 于 2019-7-25 10:34 编辑

适用范围:hover音效巨长,并且各种往里塞音频所以需要新建channel
ps,如果hover音效很短根本不用这么麻烦,在button的style里加上 active_sound "文件路径" hover_sound "文件路径"就OK

效果描述:
main_menu和game_menu出现时有欢快的“打快板bgm”,并且循环
鼠标悬停button时关闭bgm,发出“叭叭叭叭”冒泡泡声音(这个音频挺长就没让它循环,毕竟没人会hover个没完没了)
unhover立刻恢复“打快板bgm”,停止“叭叭叭”
因为main_menu和game_menu 都 use navigation了,所以改navigation就OK,
下面是navigation screen的全部代码 ,音频文件换掉就能直接用啦

[RenPy] 纯文本查看 复制代码
## 定义音频通道  ############################################################################################################################################## screen, button 音效调整 ####################################################
init -100:
    $renpy.music.register_channel("hoversound", mixer="music", loop=None)
    $renpy.music.register_channel("actionsound", mixer="sfx", loop=0)  ## 短音效不loop
    $renpy.music.register_channel("screenbgm", mixer="music", loop=True) ## bgm loop

## button 各种动作状态的音效
screen navigation_auidiobuttons(name, buttonaction): #### hover时一直“叭叭叭”,关闭bgm ###############  适用hover播放长音频  ################################################################################################
    textbutton name:                                 #### unhovered 时停止“叭叭叭”,播放bgm
        action [Play("actionsound","sound/success.mp3"),buttonaction, Stop("hoversound")]
        hovered [Play("hoversound","sound/lots of Popping.mp3"),Stop("screenbgm")]
        unhovered [Stop("hoversound"),Play("screenbgm","sound/快板 CC0.mp3")]

screen navigation():
    on "show" action Play("screenbgm","sound/快板 CC0.mp3") ## 屏幕启动和关闭时的音效
    on "hide" action Stop("screenbgm")

    hbox:
        style_prefix "navigation"

#        xpos gui.navigation_xpos
#        yalign 0.5
        null width 50
        xalign 0.5
        yalign 0.85
        spacing 100


        if main_menu:

            use navigation_auidiobuttons("开始游戏", Start())

            use navigation_auidiobuttons("读取",ShowMenu("load"))

            use navigation_auidiobuttons("设置", ShowMenu("preferences"))
        else:

            use navigation_auidiobuttons("保存",ShowMenu("save"))
            use navigation_auidiobuttons("读取",ShowMenu("load"))
            use navigation_auidiobuttons("历史",ShowMenu("history"))
            use navigation_auidiobuttons("设置",ShowMenu("preferences"))

        if _in_replay:

            textbutton _("结束") action EndReplay(confirm=True)

        elif not main_menu:

            textbutton _("标题") action MainMenu()

        textbutton _("轨迹") action ShowMenu("journal")

        textbutton _("关于") action ShowMenu("about")

        if renpy.variant("pc"):

            ## “帮助”对移动设备来说并非必须或相关。
#            textbutton _("帮助") action ShowMenu("help")

            ## “退出”按钮在 iOS 上被禁止使用,在安卓上也不是必需的。
            textbutton _("退出") action Quit(confirm=not main_menu)


style navigation_button is gui_button
style navigation_button_text is gui_button_text

style navigation_button:
    size_group "navigation"
    properties gui.button_properties("navigation_button")
#    activate_sound "sound/success.mp3"     #sound when pressed    #################### 导航菜单的button音效 #################################################################################################################
#    hover_sound "sound/lots of Popping.mp3"     #sound when hovered   ################ 适用于 hover,action都是短音效的场合 ###################################################################################################

style navigation_button_text:
    properties gui.button_text_properties("navigation_button")

发表于 3 天前 | 显示全部楼层
使用不同通道,避免拥挤
回复 支持 反对

使用道具 举报

发表于 前天 16:11 | 显示全部楼层
请假下大佬,我玩renpy游戏,win10 64系统,有的游戏有声音(包括音乐和音效),但是有的游戏就是一点声音都没有!!!(下载时看说明是有人物配音的)  这个就让我百思不得其解,我的游戏目录也是全英文,求教如何解决???
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|RenPy中文空间 ( 苏ICP备17067825号 | 苏公网安备 32092302000068号 )

GMT+8, 2019-8-24 01:33 , Processed in 0.170830 second(s), 20 queries , File On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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