Function Corona SDK钢琴应用程序-交换声音等

Function Corona SDK钢琴应用程序-交换声音等,function,audio,lua,coronasdk,piano,Function,Audio,Lua,Coronasdk,Piano,所以基本上我是在Corona SDK(我的第一个项目)中制作钢琴应用程序的,我是新手。我在Corona论坛上问了一些关于我的问题的问题,但我没有得到对我有帮助的确切答案,所以我请求你的帮助。正如我所说,我是新的,所以我可能很难破解出所需的代码,但我知道,你们,更有经验的电晕用户,可以很容易地做到这一点 我对每个键都使用这段代码:(我知道media.playEventSound是一个非常弱的选项,我见过一些关于在Coronalabs上播放音频的库,如audio.loadSound等。但是如果可能的

所以基本上我是在Corona SDK(我的第一个项目)中制作钢琴应用程序的,我是新手。我在Corona论坛上问了一些关于我的问题的问题,但我没有得到对我有帮助的确切答案,所以我请求你的帮助。正如我所说,我是新的,所以我可能很难破解出所需的代码,但我知道,你们,更有经验的电晕用户,可以很容易地做到这一点

我对每个键都使用这段代码:(我知道media.playEventSound是一个非常弱的选项,我见过一些关于在Coronalabs上播放音频的库,如audio.loadSound等。但是如果可能的话,当然,我想继续使用基于“media…”的函数)

我希望钢琴有两个踏板,当它们被按下时,只切换声音(我在我的项目文件夹中总共有3个不同的声音排列-默认和2个踏板持续音频文件)和按钮,需要按键上的注释字母。 这是我的问题-如何将这些都整合到一个代码中? 我的意思是,你能给我写下一个像我在下面发布的示例这样的一个键的代码,但包括我刚才提到的那些功能吗?我真的很想解决这个问题。。 顺便说一句,我知道soundTable/fileTable方法,不管它叫什么,但我想我有足够的时间单独做每个键-或者使用table方法-我只希望它简单,因为这是我的第一个项目,所以应该是


对不起我的英语,谢谢

您要求提供更多代码;我在Corona论坛上推荐了这个

布尔变量:

local isPedalActive = false
当他们触到踏板按钮时,将其设置为真:

isPedalActive = true
然后将其添加到按钮按下功能:

if event.phase == "began" then
  if isPedalActive = true then
    media.playEventSound(cPedal) --assuming you already loaded your audio above
  end
end
当然,如果您有大量钢琴键,最好不要对每个功能单独执行此操作,而是:

  • 在widget.newButton表中为每个键设置特定id

  • 在if语句中,加载声音,但取而代之的是检索按钮的id并播放mp3文件

  • (仅支持一个踏板)


    我的问题-我不想在桌子上发出声音。我宁愿把每把钥匙都单独做。就像我在下面发布的一键代码示例一样。但是怎么做呢?我不知道如何把所有的东西都变成一个有效的东西:/(2个踏板+注意按钮)

    你要求更多的代码;我在Corona论坛上推荐了这个

    布尔变量:

    local isPedalActive = false
    
    当他们触到踏板按钮时,将其设置为真:

    isPedalActive = true
    
    然后将其添加到按钮按下功能:

    if event.phase == "began" then
      if isPedalActive = true then
        media.playEventSound(cPedal) --assuming you already loaded your audio above
      end
    end
    
    当然,如果您有大量钢琴键,最好不要对每个功能单独执行此操作,而是:

  • 在widget.newButton表中为每个键设置特定id

  • 在if语句中,加载声音,但取而代之的是检索按钮的id并播放mp3文件

  • (仅支持一个踏板)


    我的问题-我不想在桌子上发出声音。我宁愿把每把钥匙都单独做。就像我在下面发布的一键代码示例一样。但是怎么做呢?我不知道如何将所有内容整合到一个有效的东西中:/(2个踏板+注释按钮)

    playEventSound的第二个参数看起来是错误的。playEventSound唯一需要的参数是您已经提供的soundId。“切换声音”是什么意思?你能详细说明一下吗?您的意思是按键产生的声音在两种声音之间交替吗?“切换其声音”意味着如果您踩下踏板,所有按键开始操作不同的音频。外面有88把钥匙。88x3=264,因此总共需要264个音频文件。例如:C1.mp3-默认类型、C1Sustainated.mp3-第一踏板类型和C1Sustainated2.mp3-第二踏板类型。当您踩下第一个踏板时,播放基于C的声音的键将立即从C1.mp3切换到C1.mp3。所有其他钥匙的工作方式相同。当您按下note按钮时,按键图形文件将变为带有note字样的文件。playEventSound的第二个参数看起来是错误的。playEventSound唯一需要的参数是您已经提供的soundId。“切换声音”是什么意思?你能详细说明一下吗?您的意思是按键产生的声音在两种声音之间交替吗?“切换其声音”意味着如果您踩下踏板,所有按键开始操作不同的音频。外面有88把钥匙。88x3=264,因此总共需要264个音频文件。例如:C1.mp3-默认类型、C1Sustainated.mp3-第一踏板类型和C1Sustainated2.mp3-第二踏板类型。当您踩下第一个踏板时,播放基于C的声音的键将立即从C1.mp3切换到C1.mp3。所有其他钥匙的工作方式相同。当您按下“注释”按钮时,按键图形文件将变为带有注释文字的文件。