Platin Posted February 5, 2015 Share Posted February 5, 2015 Buenas, vengo con otra nueva pared que me puso el scripting y, como siempre, necesito algo de ayuda de ustedes para saltarla (re poeta el pibe). Empezando, el resource es de unas bolsas que aparecen en el mapa y una vez encontradas, estas despawnean y aparecen en otra parte luego de 15 minutos. El problema es que, cuando pones /tiemporestante, te lo dice en milisegundos y no se como hacer para que te lo diga en segundos. function cuantoFalta (player) tiempo = getTimerDetails(tiempoRestante) if (tiempo) then outputChatBox("Tiempo restante para la siguiente bolsa: #00FF00"..tiempo, player, 255, 255, 255, true) else outputChatBox("¡La bolsa sigue perdida! ¡Buscala!", player, 255, 255, 255, true) end end addCommandHandler("tiemporestante", cuantoFalta) Link to comment
alex17 Posted February 6, 2015 Share Posted February 6, 2015 Puedes intentarlo de esta froma 1 segundo tiene mil milisegundos , si te da el resultado en milisegundos solo divide entre mil y tendras el resultado en segundos tiempo = getTimerDetails(tiempoRestante)/1000 Link to comment
Platin Posted February 6, 2015 Author Share Posted February 6, 2015 Puedes intentarlo de esta froma 1 segundo tiene mil milisegundos , si te da el resultado en milisegundos solo divide entre mil y tendras el resultado en segundos tiempo = getTimerDetails(tiempoRestante)/1000 Solucionado a medias, me deja los "decimales" Link to comment
Platin Posted February 6, 2015 Author Share Posted February 6, 2015 math.floor Casi nunca uso los math, solamente el math.random. ¿Un ejemplo? Y gracias por tu respuesta, al igual que alex17 Link to comment
alex17 Posted February 6, 2015 Share Posted February 6, 2015 tiempo = math.floor(getTimerDetails(tiempoRestante)/1000) Link to comment
Platin Posted February 6, 2015 Author Share Posted February 6, 2015 tiempo = math.floor(getTimerDetails(tiempoRestante)/1000) Me sirvio, gracias. Esta duda es por si es algo facil, si no, no pasa nada, ¿es posible hacer que te diga si son por ejemplo 200 segundos te diga 2 minutos con tantos segundos? EDIT: De repente me dejo de funcionar, ¿idea del por qué? Link to comment
Tomas Posted February 6, 2015 Share Posted February 6, 2015 Me sirvio, gracias. Esta duda es por si es algo facil, si no, no pasa nada, ¿es posible hacer que te diga si son por ejemplo 200 segundos te diga 2 minutos con tantos segundos? EDIT: De repente me dejo de funcionar, ¿idea del por qué? 200 segundos no son dos minutos, 200 segundos son 3.3pp minutos, simplemente divide los segundos entre 60. seconds = math.floor(getTimerDetails(tiempoRestante)/1000)/60 minutes = math.round(seconds,2) function math.round(number, decimals, method) decimals = decimals or 0 local factor = 10 ^ decimals if (method == "ceil" or method == "floor") then return math[method](number * factor) / factor else return tonumber(("%."..decimals.."f"):format(number)) end end Link to comment
Platin Posted February 6, 2015 Author Share Posted February 6, 2015 Me sirvio, gracias. Esta duda es por si es algo facil, si no, no pasa nada, ¿es posible hacer que te diga si son por ejemplo 200 segundos te diga 2 minutos con tantos segundos? EDIT: De repente me dejo de funcionar, ¿idea del por qué? 200 segundos no son dos minutos, 200 segundos son 3.3pp minutos, simplemente divide los segundos entre 60. seconds = math.floor(getTimerDetails(tiempoRestante)/1000)/60 minutes = math.round(seconds,2) function math.round(number, decimals, method) decimals = decimals or 0 local factor = 10 ^ decimals if (method == "ceil" or method == "floor") then return math[method](number * factor) / factor else return tonumber(("%."..decimals.."f"):format(number)) end end Gracias Tomás Y era un ejemplo Link to comment
Tomas Posted February 6, 2015 Share Posted February 6, 2015 Me sirvio, gracias. Esta duda es por si es algo facil, si no, no pasa nada, ¿es posible hacer que te diga si son por ejemplo 200 segundos te diga 2 minutos con tantos segundos? EDIT: De repente me dejo de funcionar, ¿idea del por qué? 200 segundos no son dos minutos, 200 segundos son 3.3pp minutos, simplemente divide los segundos entre 60. seconds = math.floor(getTimerDetails(tiempoRestante)/1000)/60 minutes = math.round(seconds,2) function math.round(number, decimals, method) decimals = decimals or 0 local factor = 10 ^ decimals if (method == "ceil" or method == "floor") then return math[method](number * factor) / factor else return tonumber(("%."..decimals.."f"):format(number)) end end Gracias Tomás Y era un ejemplo De nada Link to comment
Recommended Posts