A ver, yo no se si es que me estoy volviendo estupido o algo asi, que no consigo hacer aparecer un menú emergente cuando selecciono una opción de un menú. Lo que deseo es que el menú se quede fijo, y solo consigo una leve aparición de un microsegundo lol.
Agradeceria algo de ayudita, y a ser posible alguna manera de contactar con coders, que cuando se les necesita no se como contactar con ellos! \o/
Aqui os dejo el code, probadlo vosotros mismos ^^
menubatalla = {"Ataque básico","Habilidad","Objeto","A correr"} habilidades = {"Habilidad 1"} personaje = {x=410,y=135,w=30,h=30,vida=9,habilidad=1,defensa=4,ataque=10,imagen = image.create(10,10,color.new(255,0,0))} enemigo = {x=70, y=135, w=0, h=0,vida=9,habilidad=1,defensa=5,ataque=6,imagen=image.create(10,10,color.new(0,255,0))} dado = image.load("res/dadomenu.png"); colores = {rojo=color.new(255,0,0)}; selmenu = 1; selmenuhab=1; function battleMenu(selected) local y=135; for i=1,#menubatalla do if selected == i then screen.print(240,y,menubatalla[i],0.5,colores.rojo,color.new(0,0,0)); else screen.print(240,y,menubatalla[i],0.5,color.new(255,255,255),color.new(0,0,0)); end y=y+20; end end function habilityMenu(selected) local y=155; for i=1,#habilidades do if selected == i then screen.print(310,y,habilidades[i],0.5,colores.rojo,color.new(0,0,0)); else screen.print(310,y,habilidades[i],0.5,color.new(255,255,255),color.new(0,0,0)); end y=y+20; end end while true do controls.read() personaje.imagen:blit(personaje.x,personaje.y) enemigo.imagen:blit(enemigo.x,enemigo.y) screen.print(personaje.x,personaje.y-20,personaje.vida); screen.print(enemigo.x,enemigo.y-20,enemigo.vida); if controls.press("up") and selmenu > 1 then selmenu = selmenu - 1 end if controls.press("down") and selmenu < #menubatalla then selmenu = selmenu + 1 end battleMenu(selmenu); if (selmenu == 1 and controls.press("cross")) then enemigo.vida= enemigo.vida - (personaje.ataque-enemigo.defensa) elseif selmenu == 2 and controls.press("cross") then habilityMenu(selmenuhab) end screen.flip() end
En un par de proyectos:
Current: Fantasymind [|| ] PROGRESS: 10%
Next: FAR STARS
Twitter: @Cere_Ender
Yo te recomiendo que todas
Yo te recomiendo que todas esas strings las cargues desde un .ini o un .xml. Si alguna vez tienes que traducir tu homebrew sólo necesitas agregar ini's y no cambiar el código de tu juego (o usar un editor hex).
arieldev.blogspot.mx
De hecho eso quisiera hacer,
De hecho eso quisiera hacer, pero no tengo ni idea de como manejar las strings almacenadas en un ini y llamarlas desde lua.
Habia pensado en escribirlas directamente en un .lua.
Aunque lo que hay escrito ahi es solo juegos de prueba para desarrollar el engine de batalla que tendrá mi HB.
En un par de proyectos:
Current: Fantasymind [|| ] PROGRESS: 10%
Next: FAR STARS
Twitter: @Cere_Ender
no se la verdad mucho del lua
no se la verdad mucho del lua que se usa en psp pero con un "ini parser" (cargador de inis) se puede. Aunque también es una buena opción usar otro script con las constantes.
arieldev.blogspot.mx
No hace falta usar XML o INI
Podeis usar TXT o LUA, y guardar el idioma en tablas, ejemplo:
language.txt o languaje.lua
script.lua
Saludos.
Programador en C++ y Lua.
Creando un Juego con Unity3D para Android.
Deseo poder crear mi propio IDE para C++ y un Motor de Videojuegos.
Funciona, pero el problema
Funciona, pero el problema sería cuando cargues diálogos completos. De nuevo, no se si LUA ejecute el script con el proc. "dofile", pero si lo hace y tienes muchas tablas con mucho texto, ahí vendría el problema, lo mejor sería abrir un stream, cargar lo necesario y cerrarlo de nuevo. Pero repito, eso para más textos más largos.
arieldev.blogspot.mx
Ya esta ...
Alli esta tu code listo, mira que utilize una bool y una condicion para que de desaparezca el menu emerguente.
PD: Creo que vienes de C, pero los ( ; ) no son necesarios en este interprete para cerrar la instruccion, talvez sea constumbre. Saludos.
En efecto, vengo de C!
En efecto, vengo de C! muchisimas gracias, que tontería mas grande en no caer con una bool
Boolean
Lo que puedes hacer es poner una variable boolean, algo así:
cuando intento adaptarlo, me
cuando intento adaptarlo, me da error en la linea del elseif ("nil value"), creo que es porque selmenuhab es un booleano ahora y antes era numerico, me equivoco?
En un par de proyectos:
Current: Fantasymind [|| ] PROGRESS: 10%
Next: FAR STARS
Twitter: @Cere_Ender
Muchisimas gracias! Parezco
Muchisimas gracias! Parezco novato, pero es que LUA a veces me desconcierta en algunas cosas...
Otras es que me hace falta un poco mas de practica.
Saludines!
PD: Alguna manera para contactar con coders por si se necesita ayuda?
En un par de proyectos:
Current: Fantasymind [|| ] PROGRESS: 10%
Next: FAR STARS
Twitter: @Cere_Ender