tiempo en juegos

Si tienes alguna duda sobre cómo usar pilas, o tienes problemas para instalar o hacer algo en pilas comentalo aquí.

tiempo en juegos

Notapor carlachacon » Dom May 22, 2011 10:11 pm

Buenas Tardes Hugo!!

Te escribo para saber si pilas tiene algún componente para trabajar con TIEMPO en juegos. como un cronómetro.. si me entiendes?

Avísame por favor!

pd: recuerda colocar lo de las grillas con varias filas y varias columnas, en el manual....

Saludos!!!
carlachacon
 
Mensajes: 68
Registrado: Mié Feb 16, 2011 7:04 pm
Ubicación: Venezuela

Re: tiempo en juegos

Notapor pchack » Lun May 23, 2011 3:21 am

Saludos,
Que tal! je je je no soy Hugo, pero tratare de responder tu pregunta.

Pilas no tiene un cronómetro pero si lo puedes hacer tu,
existe en pilas un método:

pilas.mundo.agregar_tarea_siempre(1, metodo_a_ejecutar)


Esta línea lo que hace es ejecutar el método "metodo_a_ejecutar" cada 1 segundo (se pude modificar ese tiempo, ejemplo para que se ejecute cada 2, 3, 100 segundo, etc.).

Esto te serviría para controlar el tiempo. Ejemplo cuando inicias la aplicación creas un contador que se sume 1 por cada segundo y sabrías cuanto tiempo lleva ejecutada tu aplicación.

Aquí te doy una demostración con un texto que cada 1 segundo se cambia, sumándole 1 cada vez.

import pilas
pilas.iniciar()

tiempo = 0

cronometro = pilas.actores.Texto(str(tiempo))

def avanzar_un_segundo():
global tiempo
tiempo += 1
cronometro.texto = str(tiempo)


pilas.mundo.agregar_tarea_siempre(1, avanzar_un_segundo)

pilas.ejecutar()


Eso seria, espero que te sea útil la respuesta.

Y como dice Hugo.

Salute.
pchack
 
Mensajes: 106
Registrado: Lun Dic 13, 2010 12:23 am

Re: tiempo en juegos

Notapor carlachacon » Mié May 25, 2011 7:21 pm

Hola Pchack

muchas gracias por tu ayuda!!!!

peeero tengo una duda; como hago si en cierto momento quiero que se detenga, y diga: "se te acabo el tiempo" por ejemplo ???

gracias de antemano!
carlachacon
 
Mensajes: 68
Registrado: Mié Feb 16, 2011 7:04 pm
Ubicación: Venezuela

Re: tiempo en juegos

Notapor pchack » Mié May 25, 2011 11:42 pm

Que Tal!,

Mira una alternativa es dentro de la llamada que se ejecuta cada 1 segundo (el método "avanzar_un_segundo()")
tu puedes colocar una variable que controle el estado del cronometro, si esta variable esta encendida (en 1) entonces incrementa la variable tiempo y si esta en 0 no hace nada. Así puedes controlar el tiempo de mejor manera y enviar mensajes según el tiempo que quieras, ya que si llega a un tiempo límite puedes dejar la variable que controla el estado en 0 y quedara pausado.

Aquí el codigo:

import pilas
pilas.iniciar()

tiempo = 0
cronometro_on = 1

limite_tiempo = 10

cronometro = pilas.actores.Texto(str(tiempo))



def pausar_cronometro():
global cronometro_on
cronometro_on = 0

def reaunudar_cronometro():
global cronometro_on
cronometro_on = 1

def reiniciar_cronometro():
global tiempo
tiempo = 1
cronometro.texto = str(tiempo)



def avanzar_un_segundo():
global tiempo
global limite_tiempo

if cronometro_on == 1:
tiempo += 1
cronometro.texto = str(tiempo)


if tiempo == limite_tiempo:
pausar_cronometro()
pilas.avisar("se te acabo el tiempo !")



pilas.mundo.agregar_tarea_siempre(1, avanzar_un_segundo)

pilas.ejecutar()



Espero que te sirva.

Saludos.
pchack
 
Mensajes: 106
Registrado: Lun Dic 13, 2010 12:23 am

Re: tiempo en juegos

Notapor carlachacon » Jue May 26, 2011 8:39 pm

Hola Buenas Tardes!!!

muchisimas gracias!!!!!


me sirvió bastante!! thanks por la idea!!!

que tengas un buen día!
carlachacon
 
Mensajes: 68
Registrado: Mié Feb 16, 2011 7:04 pm
Ubicación: Venezuela

Re: tiempo en juegos

Notapor cosarara97 » Mié Jul 20, 2011 10:03 pm

Pues a mi también me ha ayudado, porque en el juego asteroides, en el archivo escena_juego.py pone "pilas.mundo.agregar_tarea" en lugar de "pilas.mundo.agregar_tarea_siempre", cosa que hace que el juego no empiece :( , pero lo he cambiado por "pilas.mundo.agregar_tarea_siempre" y ya funciona :D (Aunque con tantos asteroides en pantalla al final empieza a quedarse pillado...)

Así que... Muchas gracias!!!
cosarara97
 
Mensajes: 7
Registrado: Mié Jul 20, 2011 9:50 pm


Volver a Consultas, problemas o bugs.

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado