Problemas con Sonidos en StoryBoar

Buenas a tod@s,

Estoy desarrollando una pequeña aplicación en Corona SDK.

Estoy encontrando algo problemático. En una de las “Scenes” tengo el Listener:

local function on_but_comenzar_Touch( self, event )

    

    media.playSound( “mp3/guncock.mp3” )

    storyboard.gotoScene( “Menu_Inicio”, “fade”, 200  )

end

Para que al pulsar el botón comenzar suene un disparo y cargue la siguiente Scene, no se porque ese sonido suena 2 veces.

En otras Scenes, al navegar hacia delante y hacia detrás, la cantidad de reproducción de sonido se va incrementando, me explico mejor:

Click Go -> 2 sonidos, siguiente Scene

Click Back -> 1 sonido, Anterior Scene

Click Go -> 4 sonidos, siguiente Scene

Click Back -> 2 sonido, Anterior Scene

Click Go -> 6 sonidos, siguiente Scene

Click Back -> 3 sonido, Anterior Scene

Click Go -> 8 sonidos, siguiente Scene

Click Back -> 4 sonido, Anterior Scene

.

.

.

.

.

No entiendo el porque

Espero tengáis alguna solución

Muchas gracias

Un Saludo

toy_dolls_fans,

Alguien del equipo me dice que tu problema tal vez sea que el codigo debe ser:

local function on_but_comenzar_Touch( self, event )

    if event.phase == “ended” then

        media.playSound( “mp3/guncock.mp3” )

        storyboard.gotoScene( “Menu_Inicio”, “fade”, 200  )

    end
    return true

end

Muchas gracias David,

Usando “print()” he estado viendo que tras pulsar un boton, llama al Listener de tipo:

local function on_but_comenzar_Touch( self, event )

    

    media.playSound( “mp3/guncock.mp3” )

    storyboard.reloadScene()

 

end

 

Esta ejecutando las funciones:

 

exitScene 4 veces

enterScene 4 veces

 

Cada vez que hago un volver y un siguiente aumenta las llamadas a estas dos funciones, igualmente, no se se porque repite el sonido, ya que se reproduce tantas veces el sonido.

 

Probare lo que me dices y luego os comento

 

Gracias de nuevo

 

Un Saludo

Buenas tardes,

Intente probar lo que comentabas:

local function on_but_comenzar_Touch( self, event )

    

    if event.phase == “ended” then

        audio.play( sfx.cargador, 2 )

        storyboard.gotoScene( “Menu_Inicio”, “fade”, 200  )

    end

    

    return true

end

y me devuelve el siguiente error:

createScene de Intro

entrerScene de Intro

Runtime error

…\proyecto\on going\Intro.lua:26: attempt to index local ‘event’ (a nil value)

stack traceback:

        [C]: ?

        …proyecto\on going\Intro.lua:26: in function ‘_onRelease’

        ?: in function ‘?’

        ?: i

Parece que falla con la “creaccion” del boton

but_comenzar = widget.newButton

    {

        left = display.contentWidth/2 - (display.contentWidth/3)/2, – Posicion deseada menos la mitad del ancho del boton

        top = display.contentHeight - display.contentHeight/4 - (display.contentHeight/6)/2,

        width = display.contentWidth/3,

        height = display.contentHeight/6,

        id = “but_comanezar”,

        fontSize = 40,

        label = “Comenzar”,

        onRelease = on_but_comenzar_Touch

    }

¿Esta mal la llamada onRelease? ¿Deberia crearlo de otra forma?

Muchas gracias 

Un Saludo,

Fran

toy_dolls_fans,

Alguien del equipo me dice que tu problema tal vez sea que el codigo debe ser:

local function on_but_comenzar_Touch( self, event )

    if event.phase == “ended” then

        media.playSound( “mp3/guncock.mp3” )

        storyboard.gotoScene( “Menu_Inicio”, “fade”, 200  )

    end
    return true

end

Muchas gracias David,

Usando “print()” he estado viendo que tras pulsar un boton, llama al Listener de tipo:

local function on_but_comenzar_Touch( self, event )

    

    media.playSound( “mp3/guncock.mp3” )

    storyboard.reloadScene()

 

end

 

Esta ejecutando las funciones:

 

exitScene 4 veces

enterScene 4 veces

 

Cada vez que hago un volver y un siguiente aumenta las llamadas a estas dos funciones, igualmente, no se se porque repite el sonido, ya que se reproduce tantas veces el sonido.

 

Probare lo que me dices y luego os comento

 

Gracias de nuevo

 

Un Saludo

Buenas tardes,

Intente probar lo que comentabas:

local function on_but_comenzar_Touch( self, event )

    

    if event.phase == “ended” then

        audio.play( sfx.cargador, 2 )

        storyboard.gotoScene( “Menu_Inicio”, “fade”, 200  )

    end

    

    return true

end

y me devuelve el siguiente error:

createScene de Intro

entrerScene de Intro

Runtime error

…\proyecto\on going\Intro.lua:26: attempt to index local ‘event’ (a nil value)

stack traceback:

        [C]: ?

        …proyecto\on going\Intro.lua:26: in function ‘_onRelease’

        ?: in function ‘?’

        ?: i

Parece que falla con la “creaccion” del boton

but_comenzar = widget.newButton

    {

        left = display.contentWidth/2 - (display.contentWidth/3)/2, – Posicion deseada menos la mitad del ancho del boton

        top = display.contentHeight - display.contentHeight/4 - (display.contentHeight/6)/2,

        width = display.contentWidth/3,

        height = display.contentHeight/6,

        id = “but_comanezar”,

        fontSize = 40,

        label = “Comenzar”,

        onRelease = on_but_comenzar_Touch

    }

¿Esta mal la llamada onRelease? ¿Deberia crearlo de otra forma?

Muchas gracias 

Un Saludo,

Fran