Bien, solucionado el código del cursor (puse x1, x1 y tenia que ser x1, y1) lo he provado y va a las mil maravillas hasta elegir una opcion:
-- Cargamos imágenes-- cursor = Image.load("./img/cursor.png") menu = Image.load("./img/fondo.png") icono1 = Image.load("./img/ico/icono1.png") icono1sel = Image.load("./img/ico/icono1sel.png") icono2 = Image.load("./img/ico/icono2.png") icono2sel = Image.load("./img/ico/icono2sel.png") icono3 = Image.load("./img/ico/icono3.png") icono3sel = Image.load("./img/ico/icono3sel.png") icono4 = Image.load("./img/ico/icono4.png") icono4sel = Image.load("./img/ico/icono4sel.png") icono5 = Image.load("./img/ico/icono5.png") icono5sel = Image.load("./img/ico/icono5sel.png") icono6 = Image.load("./img/ico/icono6.png") icono6sel = Image.load("./img/ico/icono6sel.png") icono7 = Image.load("./img/ico/icono7.png") icono7sel = Image.load("./img/ico/icono12sel.png") icono8 = Image.load("./img/ico/icono8.png") icono8sel = Image.load("./img/ico/icono12sel.png") icono9 = Image.load("./img/ico/icono9.png") icono9sel = Image.load("./img/ico/icono12sel.png") icono10 = Image.load("./img/ico/icono10.png") icono10sel = Image.load("./img/ico/icono12sel.png") icono11 = Image.load("./img/ico/icono11.png") icono11sel = Image.load("./img/ico/icono12sel.png") icono12 = Image.load("./img/ico/icono12.png") icono12sel = Image.load("./img/ico/icono12sel.png") -- Variables x = 0 x0 = 235 y0 = 150 x1 = 0 y1 = 0 function borrar() fondo = nil cursor = nil icono1 = nil icono1sel = nil icono2 = nil icono2sel = nil icono3 = nil icono3sel = nil icono4 = nil icono4sel = nil icono5 = nil icono5sel = nil icono6 = nil icono6sel = nil icono7 = nil icono7sel = nil icono8 = nil icono8sel = nil icono9 = nil icono9sel = nil icono10 = nil icono10sel = nil icono11 = nil icono11sel = nil icono12 = nil icono12sel = nil collectgarbage() end -- Pulsaciones function LeerPulsacion() pad = Controls.read() x1 = x0 y1 = y0 dy = pad:analogY() dx = pad:analogX() if math.abs(dx) > 64 then x0 = x0 + dx / 24 end if math.abs(dy) > 64 then y0 = y0 + dy / 24 end if pad:up() then y0 = y0 - 10 end if pad:down() then y0 = y0 + 10 end if pad:right() then x0 = x0 + 10 end if pad:left() then x0 = x0 - 10 end if x0 >= 82 and x0 <= 146 and y0 >= 21 and y0 <= 85 and pad:cross() then borrar() dofile ("./sections/creditos.lua") end if x0 >= 152 and x0 <= 216 and y0 >= 21 and y0 <= 85 and pad:cross() then borrar() dofile ("./sections/Bateria.lua") end if x0 >= 222 and x0 <= 286 and y0 >= 21 and y0 <= 85 and pad:cross() then borrar() dofile ("./sections/InfoPSP.lua") end if x0 >= 292 and x0 <= 356 and y0 >= 21 and y0 <= 85 and pad:cross() then borrar() dofile ("./sections/test.lua") end if x0 >= 362 and x0 <= 426 and y0 >= 21 and y0 <= 85 and pad:cross() then borrar() dofile ("./sections/explorador.lua") end if x0 >= 82 and x0 <= 146 and y0 >= 101 and y0 <= 165 and pad:cross() then borrar() dofile ("./sections/ups.lua") end if x0 >= 152 and x0 <= 216 and y0 >= 101 and y0 <= 165 and pad:cross() then borrar() dofile ("./sections/ups.lua") end if x0 >= 222 and x0 <= 286 and y0 >= 101 and y0 <= 165 and pad:cross() then borrar() dofile ("./sections/ups.lua") end if x0 >= 292 and x0 <= 356 and y0 >= 101 and y0 <= 165 and pad:cross() then borrar() dofile ("./sections/ups.lua") end if x0 >= 362 and x0 <= 426 and y0 >= 101 and y0 <= 165 and pad:cross() then borrar() dofile ("./sections/ups.lua") end if x0 >= 82 and x0 <= 146 and y0 >= 181 and y0 <= 245 and pad:cross() then borrar() dofile ("./sections/ups.lua") end if x0 >= 152 and x0 <= 216 and y0 >= 181 and y0 <= 245 and pad:cross() then borrar() dofile ("./sections/ups.lua") end end --Bucle principal-- while true do if x0<0 then x0=0 end if x0>478 then x0=478 end if y0<0 then y0=0 end if y0>270 then y0=270 end --Menu-- screen:clear() screen:blit (0, 0, menu) screen:blit (82, 21, icono1) screen:blit (152, 21, icono2) screen:blit (222, 21, icono3) screen:blit (292, 21, icono4) screen:blit (362, 21, icono5) screen:blit (82, 101, icono6) screen:blit (152, 101, icono7) screen:blit (222, 101, icono8) screen:blit (292, 101, icono9) screen:blit (362, 101, icono10) screen:blit (82, 181, icono11) screen:blit (152, 181, icono12) --Damos Efecto al pasar el Cursor Encima-- if x0 >= 82 and x0 <= 146 and y0 >= 21 and y0 <= 85 then screen:blit(82, 21, icono1sel) end if x0 >= 152 and x0 <= 216 and y0 >= 21 and y0 <= 85 then screen:blit(152, 21, icono2sel) end if x0 >= 222 and x0 <= 286 and y0 >= 21 and y0 <= 85 then screen:blit(222, 21, icono3sel) end if x0 >= 292 and x0 <= 356 and y0 >= 21 and y0 <= 85 then screen:blit(292, 21, icono4sel) end if x0 >= 362 and x0 <= 426 and y0 >= 21 and y0 <= 85 then screen:blit(362, 21, icono5sel) end if x0 >= 82 and x0 <= 146 and y0 >= 101 and y0 <= 165 then screen:blit(82, 101, icono6sel) end if x0 >= 152 and x0 <= 216 and y0 >= 101 and y0 <= 165 then screen:blit(152, 101, icono7sel) end if x0 >= 222 and x0 <= 286 and y0 >= 101 and y0 <= 165 then screen:blit(222, 101, icono8sel) end if x0 >= 292 and x0 <= 356 and y0 >= 101 and y0 <= 165 then screen:blit(292, 101, icono9sel) end if x0 >= 362 and x0 <= 426 and y0 >= 101 and y0 <= 165 then screen:blit(362, 101, icono10sel) end if x0 >= 82 and x0 <= 146 and y0 >= 181 and y0 <= 245 then screen:blit(82, 181, icono11sel) end if x0 >= 152 and x0 <= 216 and y0 >= 181 and y0 <= 245 then screen:blit(152, 181, icono12sel) end screen:blit(x1, y1, cursor) screen.waitVblankStart() screen.flip() LeerPulsacion() end
Me dice, ERROR: Bad argument 2# Image Expected got nil
De donde puede venir ese error?
Cabe destacar, que me ocurre al pulsar un icono que es un sobre plástificado, es decir, los que no estan en uso y los lleva a el ups.lua, ademas del explorador y créditos.
En cambio InfoPSP y InfoBatery si que funcionan.
Extraño, eh?
We're off now to seek all our fortunes to the land... of... our dreams
Cuantas lineas de código
Cuantas lineas de código desperdiciadas!!
Te has dado cuenta de que escribes
Millones de veces? Por qué no lo simplificas con una función simple como esta:?
Y reemplazas por ejemplo esto:
Por esto:
Y asi sucesivamente? Ves todas las lineas que he ahorrado?
Has eso y luego será más fácil hacerle debug a ese código...
Un saludo.
Para recibir ayuda por parte de otros usuarios más rápidamente, recomendamos que pongas títulos descriptivos y no utilices abreviaturas (estilo MSN) en tus post de los foros. Recuerda que accediendo al Manual del perfecto forero y las Normas de la Comunidad aprenderas trucos para resolver tus dudas antes.
No preguntes por MP, mejor pregunta aquí.
Si bueno xD, gracias, asi
Si bueno xD, gracias, asi queda mejor estructurado y limpio.
Hay esta, creo que no hay ningun fallo.
We're off now to seek all our fortunes to the land... of... our dreams
Si bueno xD, gracias, asi
Si bueno xD, gracias, asi queda mejor estructurado y limpio.
Juas, "estructurado y limpio" dice, y se queda tan ancho.
Bueno, tú siempre a tu aire, suerte "coder".
LuaDiE: Crea en Lua sin teclear código. Compatible HM7, HMv2, LuaPlayer, LuaDEV y PGE.
En fin, veis por ahi el
En fin, veis por ahi el fallo?
Un error
hay seguro. Porque sino no harías creado este post XDD.
Lo único que se me ocurre es que pone en nil alguna imagen que luego intenta mostrar. Por lo que te recomendaría es que borrer todas las partes donde dice imagenXX = nil y pruebes a ver si de esa manera funciona.
Un saludo.
Para recibir ayuda por parte de otros usuarios más rápidamente, recomendamos que pongas títulos descriptivos y no utilices abreviaturas (estilo MSN) en tus post de los foros. Recuerda que accediendo al Manual del perfecto forero y las Normas de la Comunidad aprenderas trucos para resolver tus dudas antes.
No preguntes por MP, mejor pregunta aquí.
Ya, pero entonces no puedo
Ya, pero entonces no puedo limpiarlas y me quedo sin memoria RAM.
Eso por ahora no importa.
Lo que realmente importa es encontrar la fuente del error. Si lo encuentras, sabrás que pasa y podrás arreglarlo. Luego hay tiempo para preocuparse por la RAM...
Un saludo.
Para recibir ayuda por parte de otros usuarios más rápidamente, recomendamos que pongas títulos descriptivos y no utilices abreviaturas (estilo MSN) en tus post de los foros. Recuerda que accediendo al Manual del perfecto forero y las Normas de la Comunidad aprenderas trucos para resolver tus dudas antes.
No preguntes por MP, mejor pregunta aquí.
Sin nilear las imagenes si
Sin nilear las imagenes si que funciona! Creo, que el bucle las muestra SIEMPRE, es decir, cuando las nileo las intenta mostrar y no puede, por eso pasa solo cuando lo deoy a un icono.
We're off now to seek all our fortunes to the land... of... our dreams
mmm
cheka que la(s) imagen(es) esten todas cargadas...por ejemplo:
si quieres blitear una imagen procura que la imagen que quieras blitear este cargada...
un saludo y suerte ;)
Estan todas cargadas
Estan todas cargadas.
mmm
dejame copio el codigo y ahora te digo...
ok
ok
Ok
pues por lo visto,lo que pasa es que...necesito una aspirina :S (XD) pues me duele la cabeza por el codigo....simplemente no lo entiendo...si los de mas son practicamente iguales(casi) porque ahi da un error?
solo una pregunta...que se supone que pretendes hacer con el codigo...que quieres que haga? quiza se pueda interpretar el codigo diferente...
un saludo (y voy por la aspirina)
Es un menu con cursor. AL
Es un menu con cursor. AL pasar el cursor por encima de un icono, cambia. Funciona PERFECTO, lo extraño es que al pulsar X en algunos iconos me mete ese extraño error. En otros iconos si que va!
PD: A mi también me duele la cabezo. Estoy asi hace 4 dias.
We're off now to seek all our fortunes to the land... of... our dreams