De momento LuaDEV no tiene draw.circle, por lo tanto antes de usar cualquier snippet que use draw.circle deberemos poner:
function draw.circle(x,y,r,color) local x0, y0 = r, 0 for i=0,90,9 do local x1,y1 = r*math.cos( math.rad( i )), r*math.sin(math.rad( i )); draw.line(x+x1,y+y1,x+x0,y+y0,color); draw.line(x+x0,y-y0,x+x1,y-y1,color); draw.line(x-x0,y+y0,x-x1,y+y1,color); draw.line(x-x0,y-y0,x-x1,y-y1,color); x0, y0 = x1, y1; end end
Agradecimientos a DeViaNTe por la función.
He decido hacer un post para colgar nuestros snippets de Lua, empiezo con un reloj.
function draw.clock(x,y,rad,colcon,colnum,colsec,colmin,colhour)
sec = os.date("%S")
min = os.date("%M")
hour = os.date("%H")
if not colcon then colcon = color.new(255,0,0) end
if not colnum then colnum = color.new(155,0,155) end
if not colsec then colsec = color.new(0,255,0) end
if not colmin then colmin = color.new(155,155,0) end
if not colhour then colhour = color.new(0,0,255) end
draw.circle(x,y,rad,colcon)
for a=1,12 do
screen.print(x+math.cos(math.rad(((a+1)*360)/12)-90)*(rad-4)-4,y+math.sin(math.rad(((a+1)*360)/12)-90)*(rad-4)-4,a,0.6,colnum,0x0)
end
draw.line(x-math.cos(math.rad(sec*6-90))*rad/5,y-math.sin(math.rad(sec*6-90))*rad/5,x+math.cos(math.rad(sec*6-90))*rad,y+math.sin(math.rad(sec*6-90))*rad,colsec)
draw.line(x,y,x+math.cos(math.rad(min*6-90))*((rad/4)*3),y+math.sin(math.rad(min*6-90))*((rad/4)*3),colmin)
draw.line(x,y,x+math.cos(math.rad(((hour*360)/12)+((min*30)/60)-90))*((rad/5)*3),y+math.sin(math.rad(((hour*360)/12)+((min*30)/60)-90))*((rad/5)*3),colhour)
end
Uso:
draw.clock(coordenada X, coordenada Y,radio[,color contorno][,color números][,color segundos][,color minutos][,color horas])
function screen.print_vert(x,y,texto,tamaño,colorletras,colorsombra,interlineado) if not tamaño then tamaño = 0.77 end if not colorletras then colorletras = color.new(255,255,255) end if not colorsombra then colorsombra = 0x0 end if not interlineado then interlineado = 12 end for i = 1, #texto do screen.print(x,y+(i-1)*interlineado,string.sub(texto,i,i),tamaño,colorletras,colorsombra) end end
function screen.print_incircle(x,y,radio,sentido,texto,tamaño,colorletras,colorsombra) if not tamaño then tamaño = 0.77 end if not colorletras then colorletras = color.new(255,255,255) end if not colorsombra then colorsombra = 0x0 end for i = 1, #texto do if sentido == "right" then screen.print(x+math.cos(math.rad((360/#texto)*(i-1)-90))*radio,y+math.sin(math.rad((360/#texto)*(i-1)-90))*radio,string.sub(texto,i,i),tamaño,colorletras,colorsombra) elseif sentido == "left" then screen.print(x+math.cos(-math.rad((360/#texto)*(i-1)+90))*radio,y+math.sin(-math.rad((360/#texto)*(i-1)+90))*radio,string.sub(texto,i,i),tamaño,colorletras,colorsombra) end end end
function devtrigo() local oldsin = math.sin; local sinval = { }; for i=1,360 do table.insert(sinval,math.sin(math.rad(i))); end math.sin = function (x) return sinval[math.ceil(math.deg(x))]; end untrigo = function() math.sin = oldsin; end end
El otro día estuve haciendo
El otro día estuve haciendo un jueguecito con tiles y necesitaba hacer una función que devolviera el numero que más se aproximase.
Por ejemplo:
math.ceil(5.4) devolvería 6
math.floor(5.4) devolveria 5
Lo que yo queria es que devolveria el numero más aproximado, en este caso 5.
Aqui la dejo por si a alguien le sirve:
Un saludo a todos
Dos años en SCENEBETA
Click aquí para ver la Entrada de Bitácora.
Mmm...
Pues LuaDEV dispone de una función, llamada
math.round()
que lo que hace es redondear por aproximación.P.D: Un apunte,
math.ceil()
aproxima por exceso ymath.floor()
aproxima por defecto.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).
B
Uhm no conocia la existencia de math.round()
Creo que no está documentada
Salu2
Jej, buena lo del bt.
Jej, buena lo del bt. xDDDD
ahi va algo, va...:
Se prepara con devtrigo(), y se quita con untrigo(). Lo que hace es precachear todos los valores del seno, y cambiar la funcion seno, por una lectura de tabla. Una solución interesante para los que se pueden permitir ese pequeño lujo de la aproximación...
Actualmente desarrollando nuestra web y UXCode : http://www.gcrew.es
No sé si ya te lo había
No sé si ya te lo había enseñado, pero me dió por hacer un tester de botones. Al final me ha quedado de 6 líneas, aquí el code:
Disfrútenlo xD
quítale una linea xDDDDD
LuaDiE: Crea en Lua sin teclear código. Compatible HM7, HMv2, LuaPlayer, LuaDEV y PGE.
quitémosle otra xD
Que el waitforkey ya hace un read internamente jaj
PSP FAT [5.00 M33-6] [6.60 ME] [Hard Moded] / Nintendo Wii [4.1U] [cIOS Hermes] [D2X cIOS] / iPhone 3G [4.2.1] [BB 05.13.04] [redsn0w] / iPod Touch 4 [6.1] [evasi0n]
07/05/10: Tuve el placer de llamarle con todo derecho "N00B" a molotovi xDDD
Recuerda: Sé el intérprete -_-
Otra más
Yo también pensé lo del control.read, pero creía que era necesario :(. En ese caso, se puede recortar más.
NOTA: Si da error de nil (no puedo comprobarlo ahora), se puede comparar screen.print(...) == nil or true y se evita el error
EDITADO: Esto *creo* que funciona, aunque no estoy 100% seguro.
PD: Puedo poner el "messages" en el while, pero es ya de risa, más vale una linea más y que quede menos "gorrino" :D
Editado: Crear hilos y comentarios duplicados incumple las Normas de la Comunidad, si necesita cambiar su comentario puede usar la opción de Editar. Antes de volver a postear por favor revise las Normas.| Rober Galarga
LuaDiE: Crea en Lua sin teclear código. Compatible HM7, HMv2, LuaPlayer, LuaDEV y PGE.
bueh....
ya que insistes xD
ale, BT en una línea xD
Gusto en verte por aquí de nuevo jajajaja
PSP FAT [5.00 M33-6] [6.60 ME] [Hard Moded] / Nintendo Wii [4.1U] [cIOS Hermes] [D2X cIOS] / iPhone 3G [4.2.1] [BB 05.13.04] [redsn0w] / iPod Touch 4 [6.1] [evasi0n]
07/05/10: Tuve el placer de llamarle con todo derecho "N00B" a molotovi xDDD
Recuerda: Sé el intérprete -_-
Aver es que todavia no paro
Aver es que todavia no paro de reirme xD hahaha xD
Aver el qué lo haga más
Aver el qué lo haga más simplificado en una linea ahora xD PD:Buen post
Creo que ya nos divertimos
Creo que ya nos divertimos bastante... se acabó el off topic :P
PD. El de chime ya está en una línea.
sep xD
Creo que el dice en una línea mismo, pero más corto, si que se puede, agrupando algo asi: while not (print or flip) do end, poniendo la coordenada de un dígito y acortando los nombres de los botones... pero naa, ya no tiene gracia =(
PSP FAT [5.00 M33-6] [6.60 ME] [Hard Moded] / Nintendo Wii [4.1U] [cIOS Hermes] [D2X cIOS] / iPhone 3G [4.2.1] [BB 05.13.04] [redsn0w] / iPod Touch 4 [6.1] [evasi0n]
07/05/10: Tuve el placer de llamarle con todo derecho "N00B" a molotovi xDDD
Recuerda: Sé el intérprete -_-
WTF? xD
WTF? xD
xD
jajajaja no manches, nunca antes visto un BT en one linea, jajaja sos grandioso chime
Saludos.
xD
Quitemos otra naa xD esto ya parece concurso de quien hace el menor codigo jaja.
Saludos--;)
Si, y gorrister ha ganado xD
Si, y gorrister ha ganado xD
Madre mía, hacia tiempo que
Madre mía, hacia tiempo que no me reía tanto con un código, esto de los button tester es la leche.
Gracias por las risas ^^
Un saludo.
LuaDiE: Crea en Lua sin teclear código. Compatible HM7, HMv2, LuaPlayer, LuaDEV y PGE.
Muy cierto... ahora edito el
Muy cierto... ahora edito el código...
EDITO: Hecho. Gracias por la observación ;)
Saludos
Ese codigo, deberias de hasta
Ese codigo, deberias de hasta postearlo en tu firma..
Algo más
No pongo el código porque ya está posteados
Creo que tengo algo más por ahí, pero ahora mismo no me acuerdo.
LuaDiE: Crea en Lua sin teclear código. Compatible HM7, HMv2, LuaPlayer, LuaDEV y PGE.
creo que hay un error aqui
es en este codigo mmmmm
Es en if not tamaño then tamaño = 0.77 end porque la variable tamaño podria cojer el valor de colorletras, deverias ponerlo al final o hacer una funcion que verifique los argumentos o mejor asi
Hay solo se identifican los tipos de datos que se pasaron en cada variable
P.D. hise los comentarios como en c xD
por cierto
type(var) devuelve string, asi que seria "number" "string" "userdata" etc..
Saludos!
si es que lo hice rapido xD y
si es que lo hice rapido xD y ahora que lo respondistes no puedo editarlo hahah xD
um...
esto:
más bien sería algo así:
Y hay otra forma de hacerlo, sin necesidad de hacer siempre el os.date, luego veré si lo pongo :)
Saludos!
PSP FAT [5.00 M33-6] [6.60 ME] [Hard Moded] / Nintendo Wii [4.1U] [cIOS Hermes] [D2X cIOS] / iPhone 3G [4.2.1] [BB 05.13.04] [redsn0w] / iPod Touch 4 [6.1] [evasi0n]
07/05/10: Tuve el placer de llamarle con todo derecho "N00B" a molotovi xDDD
Recuerda: Sé el intérprete -_-
Nose si este sea un snippets.
Este es un crédito que se moverá de abajo hacia arriba.
Follow me twitter nautilus1_jmccu!!
Sony, ya a nadie le interesa tus UMD si alguien compra una psp es por nosotros los coders. Madura y has un FW que haga la diferencia y anime a las personas en comprar un PSP
Está bueno, luego lo mejoraré
Está bueno, luego lo mejoraré y lo aré al estilo: credits.blit()
Uh, que linda imagen aver si
Uh, que linda imagen aver si en vez de un reloj lo convierto en un millero de autos
Que son?
Que son snippets?
Los snippets son fragmentos
Los snippets son fragmentos de código.
Ok
Ok, gracias.
Muy bueno xerpi, lastima qué
Muy bueno xerpi, lastima qué no poseo ningun trozo.