Foros del Web » Programando para Internet » Javascript »

Aumentar numero / juego online

Estas en el tema de Aumentar numero / juego online en el foro de Javascript en Foros del Web. Hola a todos, estoy creando un juego online tipo travian, ogame, etc.. y tengo un problemilla. Antes de nada si a alguien le interesa verlo ...
  #1 (permalink)  
Antiguo 28/04/2008, 06:23
Avatar de Chupytoloco  
Fecha de Ingreso: julio-2007
Mensajes: 88
Antigüedad: 17 años, 4 meses
Puntos: 1
Aumentar numero / juego online

Hola a todos, estoy creando un juego online tipo travian, ogame, etc.. y tengo un problemilla.

Antes de nada si a alguien le interesa verlo solo tiene k registrarse http://84.123.37.148/principal.php . (esta en version beta pero funciona bien, los recursos se dan cada minuto para que podais probar todo.)

El tema es el siguiente, ahora mismo lo tengo programado para que un usuario reciba cada hora 1000 x su numero de lunas (recursos) y quiero que se cobre en tiempo real, no por horas.

Entonces por ejemplo, imaginamos que cobramos 8000 de crystal por hora. Quiero que los recursos se den en "tiempo real", osea que necesito un script que sume al valor de crystal 8000/3600seg = 2.22 cada segundo.

Espero que alguien me enseñe la luz pk solo veo oscuridad xD
  #2 (permalink)  
Antiguo 28/04/2008, 10:52
Avatar de Fann_Lavigne  
Fecha de Ingreso: diciembre-2004
Mensajes: 622
Antigüedad: 19 años, 11 meses
Puntos: 12
Re: Aumentar numero / juego online

Yo creo que este liga te servira, http://javascript.espaciolatino.com/...etinterval.htm

la funcion es setInterval, y recibe 2 parametros, la funcion y el tiempo de ejecucion. Chekalo y espero te sea de ayuda, y de ser asi, regalame karma, saludos.
__________________
"Entre Mas Brillante Es Una Mente, Tiene Que Luchar Contra Demonios Internos Mas Poderosos"
[email protected]
  #3 (permalink)  
Antiguo 28/04/2008, 16:20
Avatar de Chupytoloco  
Fecha de Ingreso: julio-2007
Mensajes: 88
Antigüedad: 17 años, 4 meses
Puntos: 1
Re: Aumentar numero / juego online

var imgActual = 0;
var listaImg = new Array('im1.gif', 'im2.gif','im3.gif')
function cambiarImg( ){
if (document.images['anim'] == null) return;
document.images['anim'].src = listaImg[imgActual];
imgActual++;
if (imgActual == listaImg.length)
imgActual = 0;
}
timer = setInterval("cambiarImg()", 5000);;

Gracias por contestar lavigne, pero mis conocimientos de javascript son bastante limitados y aunk suene muy noob no sabria implementar a esta funciona una variable tipo numerico.

Viendo el codigo (hasta lo k llego a entender) parece muy parecido a lo que busco.
Solo que yo en vez de imagenes tengo un simple numero, ejemplo:

var n=100; // los recursos que tengo
var h=120; // lo que cobro por hora

El algoritmo tendria que ser algo asi:

n = n + h / 3600 = valor que se suma cada segundo

Esto tiene 2 problemas:

1- Tiene que mostrarse en tiempo real
2- El valor puede salir decimal, en el ejemplo k puse saldria 0.03 y no tengo ni idea de lo que tendria k hacer.

Weno, si a alguien se le ocurre como hacerlo estare eternamente agradecido
  #4 (permalink)  
Antiguo 29/04/2008, 06:09
Avatar de Chupytoloco  
Fecha de Ingreso: julio-2007
Mensajes: 88
Antigüedad: 17 años, 4 meses
Puntos: 1
Re: Aumentar numero / juego online

weno como toy aburrido en clase he intentado hacer un boceto, a ver que opinais:

Código:
// SCRIPT
var recursos = document.getElementbyid('crystal');
var recursos_hora = document.getElementbyid('crystal_hora');
var seg = 0;
var t;

function time()
{
     document.getElementbyid('crystal') = recursos;
     seg = recursos_hora / 3600;
     recursos = recursos + seg;
     t = setTimeout("time()", 1000);

}
// HTML
<span id="crystal">500</span>
<span id="crystal_hora">100</span>
No se si mi planteamiento es correcto o no, lo k si se es que si esto funciona voy a tener un problema con los decimales, a ver si alguien ve la luz xD.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:41.