Anuncios Google

[SOLUCIONADO POR RG] Limitar el valor de las variables en LuaDev.

Hola a todos, estoy con un code que se me resiste, me ayudais??

Quiero darle un valor a una variable, y establecer su valor minimo (hasta lo minimo que puede llegar la variable) y el máximo (al contrario).

Tengo este code:

function define(value,valmin,valmaerx) --funcion
	if value <= valmin then --si el valor de la variable es menor al valor minimo que digas
		value = valmin --el valor de la variable es el valor minimo
	elseif value >= valmaerx then --y si el valor de la variable es mayor...
		value = valmaerx --pues el valor de la variable es el valor máximo
	end
	return value --y hago esto para poder almacenar el valor en una variable que designe
end --fin
 
erx = define(20,10,100) --como ésta, por ejemplo (erx)
 
while true do --inicio bucle
controls.read() --leo controles
screen.print(erx,20,"Gracias a esta función, me ahorro muuuchos calculos.") --imprimo algo para hacer un ejemplo de "movimiento"
	if controls.cross() then --y al pulsar x
		erx = erx+10 --debería aumentar la variable, pero NO HACE NADA!!
	end --fin
if controls.start() and controls.select() then --esto es para trabajar más rápido, ignoradlo si queréis
	dovemac() --eso también
end --y esto
screen.flip() --flip!
end --y termino bucle

Pero no me funciona: se queda sin hacer nada al pulsar el botón X.

Agradecería que me dijerais que hago mal u otra forma de hacerlo.

SOLUCIONADO POR RG:

--Cambiar esto:
screen.print(erx,20,"Gracias a esta función, me ahorro muuuchos calculos.") 
--Por:
screen.print(define(erx,20,100),20,"Gracias a esta función, me ahorro muuuchos calculos.") 


 

 


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 Dioni0396

math.min

y math.max....

Ya encontré la solución, pero...

Podrías explicarme eso??

Imagen de Dioni0396

Perdon

me he equivocado.

Lo siento, error mio.

Ok.

Solucionado entonces.

Nada? No ví ningún problema

Nada? No ví ningún problema evidente, así que lo probé en mi psp y va bien.

No aplica la limitación, pero eso se soluciona bien sencillo, cambiando una de las líneas:

--Cambiar esto:
screen.print(erx,20,"Gracias a esta función, me ahorro muuuchos calculos.") 
--Por:
screen.print(define(erx,20,100),20,"Gracias a esta función, me ahorro muuuchos calculos.") 

Querras decir...

define(erx,10,100) --10, no 20, no??

EDITO: Probado, así es.

Muchas gracias, ahora que lo veo, es verdad, le faltaba eso.

Que haría yo sin esta comunidad... xD

Un saludo.


 

 

Imagen de AitorDB

By Aitor

Haber te lo voy a explicar como lo hago yo.

if variable1 <= 0 then variable1 = 0 end -- He puesto cero como ejemplo
if variable1 >= 100 then variable1 = 100 end -- He puesto cien como ejemplo
 
-- Si variable1 es menor o igual que 0 entonces variable1 será 0
-- Si variable1 es mayor o igual que 100 entonces variable1 será 100

 

Espero que te sirva. Suerte ;)


Sígueme en Twitter: @Aitor_db

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.