添加声音开关的按钮(Corona SDK)

我需要帮助在我的游戏中添加声音开关按钮。在全局变量的 lua 文件中,我有以下内容:

local sounds = {}
sounds["select"] = audio.loadSound("sounds/select.mp3")
sounds["score"] = audio.loadSound("sounds/score.mp3")
G.playSound = function(name)
    if sounds[name] ~= nil then
        audio.play(sounds[name])
    end
end

在 games.lua 文件中,我调用该函数为:

utils.playSound("score")

我有一个 soundon.png 和 soundoff.png 文件,都在一个精灵表中(不确定这是否是一个好主意),我只是试图实现当您点击声音按钮时,所有声音停止,并显示 soundoff 图像,反之亦然。谢谢。

点赞
用户3902590
用户3902590

我个人不会使用精灵表。只需加载两张图片并切换它们的“isVisible”字段。然后切换一个变量以停止您的声音。试试这个:

myGlobalSoundToggle = true
local image = display.newImage("soundon.png")
local image2 = display.newImage("soundoff.png")
image2.isVisible = false

local function onTap( self, event )
    image.isVisible = ~image.isVisible
    image2.isVisible = ~image2.isVisible
    myGlobalSoundToggle = image.isVisible
    return true
end
image:addEventListener( "tap", onTap )

现在我们的按钮已经可以工作了,我们需要切换音效的开关。

local sounds = {}
sounds["select"] = audio.loadSound("sounds/select.mp3")
sounds["score"] = audio.loadSound("sounds/score.mp3")
G.playSound = function(name)
    if (sounds[name] ~= nil) and (myGlobalSoundToggle) then
        audio.play(sounds[name])
    end
end
2015-06-17 21:20:47