Ayuda con sonido

Weno estoy a mas de un 90% de terminar mi 1er hombrew en lua (es algo sencillo, pero creo que sera muy aceptado por muchos XD) y me gustaria darle un pequeño toque de elegancia al agregarle un sonido, osea como un Click, al presionar el pad en el menu. XD

 

Aqui va parte del codigo:

menu = Image.load("ms0:/PSP/GAME/proy/Imagenes/menu.png")
seleccion = Image.load("ms0:/PSP/GAME/proy/Imagenes/selector.png")
 
current = 1;
 
 --Bucle principal--
while true do
	screen:clear()
	pad = Controls.read()
	screen:blit(3,0, menu)
 
	---Moviendo el pad arriba y abajo---
	if pad:down() then
	current = current + 1
	System.sleep(200)
end
 
	if pad:up() then
	current = current - 1
	System.sleep(200)
 
---Moviendo el pad derecha e izquierda---
 if pad:right() then
	current = current + 3
	System.sleep(200)
 
end
 
	if pad:left() then
	current = current - 3
	System.sleep(200)
end
 
---Aqui depende de la cantidades de opciones yo tengo 12---
 
	if current < 1 then
	current = 12
end
 
	if current > 12 then 
 	current = 1
end
 
---Opciones del menu y para que ponga tu imagen de seleccion en una de las opciones a elejir--- 
 
	if current == 1 then
	screen:blit(40,5,seleccion)   
	end 
 
	if  current == 2 then   
	screen:blit(40,78,seleccion)
	end
 
	if current == 3 then
	screen:blit(40,151,seleccion)
	end
       .............. hasta el 12
 
---Ejecutando ---
 
if pad:cross() then
    if current == 1 then
	lo que sea
 
    elseif current == 2 then
	lo que sea
 
    elseif current == 3 then
	lo que sea
 
    ........ hasta el 12
 
end
 
 	screen.flip()
	screen.waitVblankStart()
end

 

Saludos !!!


Anuncios Google

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de NEKERAFA

Un error

No se si sera este el archivo original, pero si lo has copia a medias o entero y despues lo abresiate, tienes que mirar esto:

if pad:cross() then
    if current == 1 then
	lo que sea
 
    elseif current == 2 then
	lo que sea
 
    elseif current == 3 then
	lo que sea
 
    ........ hasta el 12
 
end

Creo que a lo mejor es ese el error que te da, en todo caso tendrias que poner:

if pad:cross() and current == 1 then
	lo que sea
 
    elseif pad:cross() and current == 2 then
	lo que sea
 
    elseif pad:cross() and current == 3 then
	lo que sea
 
    ........ hasta el 12
 
end

Ya que asi compruebas que se este pulsando el boton cruz y que current sea igual a tal numero.


NekeOS, el nuevo shell para PSP

PS4 500GB OFW, PS3 320GB OFW, PS3 500GB OFW, PSP 6.39 PRO-C Fix4.

Sony Xperia Z1 Compact con Android 5.1.1

Portatil Lenovo z50-70 Intel® Core™ i7-4510U y NVIDIA GeForce 840M con Elementary OS 0.3.2 Freya (64 bits) y Windows 10 (64 bits).

Lo escribi

Lo que escribi fue la mitad del codigo, aunque los demas faltantes es de la misma forma que estan lo que puse.

El codigo que tengo funciona bien, lo que pasa es al ponerle como dice chus, marca error con el audio .wav, pero si es en mp3 no me carca el error.

Pero con el de mp3 cuando muevo el pad a cualquier direccion solo una vez emite el sonido (click) y si lo muevo de nuevo no hace nada.

Aunque habia leido por el foro, que con ese codigo el sonido solo emitira una sola vez, que es lo que me esta pasando.

Voy a probar mejorar mi codigo a la forma que explica, aunque veo que deberia funcionar y ocupar menos lineas de codigo.

PD: No he lanzado mi proyecto (esta a un 99%, mayormente gracias a varios coders de la comunidad), debido a este problema aunque no es obligatorio ponerle lo que pido. XD

Imagen de -chus-

Hola XD

Bueno pues es simple, carga el sonido del click, despues lo reprocuces al momento de presionar el boton arriba/abajo

Ejemplo: 
 
click = Sound.load("ruta del sonido/click.wav")
 
while true do
 
--resto de código--
 
if pad:down() then 
Sound.play(click) 
current = current + 1 
System.sleep(200) 
end 
 
--resto de código--
end

espero y sea de ayuda, cualquier cosa no dudes en preguntar...un saludo


                                          Mis Homebrew´s

 http://psp.scenebeta.com/noticia/memorama-games#comment-803033


Da error

Me da error, de la forma que dice.

Lo probe con Mp3 como esta en este codigo, pero al presionarlo la 1ra vez funciona, pero si presiono el pad a cualquier direccion de nuevo no emite el sonido.

 

Mp3.load("ruta del sonido/click.mp3")
 
while true do
 
--resto de código--
 
if pad:down() then 
Mp3.play() 
current = current + 1 
System.sleep(200) 
end 
 
--resto de código--
end

Lo estaba

Lo estaba haciendo algo parecido, pero era con mp3 XD

Weno probare, cuando este en la casa, luego informo.

 

Gracias!!!

Imagen de PhAnThOm

Mp3me.load() --Carga un

Mp3me.load() --Carga un archivo de sonido en formato .mp3.
 
Mp3me.play() --Empieza un sonido previamente cargado, tiene que ser en formato .mp3.
 
Mp3me.stop() --Detiene el sonido .mp3 que se esta reproduciendo.

usa esas... pero son las del luaHM2... osea... no funcionan en luaplayer pc... solo en la psp

saludosss!!!


PhAnThom...

COBHC...


Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.