Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - braulio--

#351
Ejercicios / Re: Juego ejercicios [Python]
4 Enero 2010, 21:49 PM
crear==dibujar?
#352
Los descargué de los repositorios.
#353
Es que yo no lo tengo en ese directorio, tengo cuatro directorios con el nombre de nessus:

/usr/bin/nessus (esto no es un directorio)
/var/lib/nessus
/var/log/nessus
/etc/nessus
/etc/pki/nessus

Y no me sale ninguno con carpeta bin ni sbin.
En /var/lib/nessus tengo una carpeta llamada plugins vacía.
#354
Se ha puesto ya como mover las imágenes por la pantalla.
#355
Yo también uso fedora e hice eso.
Pero me dice que no existe ese comando y si lo busco con un whereis nessus-update-plugins tampoco lo encuentra.
#356
Es totalmente normal, pero lo que puedes hacer es irte a la ventana de la consola y darle a enter.
Creo que en un par de horas continuaré el curso.
#357
Ya he configurado el certificado, el usuario...
Alguien entiende por qué me aparece así?

Gracias.
#358
Ejercicios / Re: Juego ejercicios [Python]
3 Enero 2010, 22:28 PM
De que libro/tutorial estás aprendiendo python???
La función para números primos está en la página anterior me parece.
#359
Ejercicios / Re: Juego ejercicios [Python]
3 Enero 2010, 15:13 PM
El próximo ejercicio, un programa que vaya escribiendo la sucesión de fibonacci y además diga si cada número es primo o no.
La sucesión de fibonacci es una sucesión de números enteros donde cada número es la suma de los dos anteriores (de la sucesión)
Primeros números : 0,1,1,2,3,5,8,13,21
#360
Debido a que he visto que en el foro hay interés por python, he decidido que voy a hacer un pequeño taller sobre la librería para desarrollo de juegos pygame.
Las lecciones de este taller se irán poniendo en este mismo post para que estén todas juntas.
Debo aclarar que esto no va a ser un análisis de los métodos y clases que ofrece pygame, sino una aplicación práctica de los que considero mas importantes.
Instalación
  • En linux.
    Python viene preinstalado y para instalar pygame basta con bajarse el paquete de los repositorios.

    # yum install pygame
    [...]
    $ sudo apt-get install pygame
    [...]
    # zypper install pygame
    [...]

    Depende de la distribución que uséis.
  • En windows
    Python os lo podéis bajar de su web : (yo voy a usar la versión 2.6)
    Y para pygame os podéis bajar el instalador desde esta web : http://www.pygame.org/download.shtml


    Un poco de teoría
    Todos los juegos que podéis imaginar, siguen este esquema:
    Mientras no se termine:
  • Procesar entradas (que pueden ser del teclado, del ratón...)
  • Actualizar gráficos (puede ser mover un marcianito, cambiar de color una roca ...)
  • Actualizar sonido (puede ser un disparo, los expectadores grintando gol ...)
  • Mostrar gráficos (ponerlos en la pantalla)
  • Reproducir sonidos (hacer que suenen)
    A cada repetición que se hace de este esquema se le llama frame.
    Empezando con pygame
    Por el momento, para importar pygame haremos esto:
    Código (python) [Seleccionar]

    import pygame

    Creando la ventana y mostrando la primera imagen
    Para crear la ventana se haría así:
    Código (python) [Seleccionar]

    import pygame
    ventana = pygame.display.set_mode((800,400))
    raw_input()

    Donde 800 y 400 son el tamaño de la ventana.
    Si lo ejecutan verán que les aparece una ventana.
    También les voy a aclarar que todo lo que se puede mostrar en esa ventana son objetos Surface de la librería pygame.
    Para mostrar una imagen hay que hacer esto :
    Código (python) [Seleccionar]

    import pygame
    ventana = pygame.display.set_mode((800,400))
    imagen = pygame.image.load('nombredeimagen')
    ventana.blit(imagen,(0,0))
    pygame.display.flip()
    raw_input()

    pygame.image.load() crea una surface a partir de una imagen donde nombredeimagen es el nombre de una imagen que esté en el mismo directorio que el juego.
    Lo que hace el método blit es colocar la Surface que le pasemos como argumento en las coordenadas que le pasemos como segundo argumento siendo 0,0 la esquina superior izquierda.
    pygame.display.flip() lo que hace es mostrar los gráficos que tenga que mostrar.
    Aquí acaba la primera lección, mas tarde seguiré.
    Mover imágenes por la pantalla
    Para mover imágenes por la pantalla lo que hay que hacer es ir actualizando un par de variables que servirán como cordenadas del método .blit(). De esta forma :
    Código (python) [Seleccionar]

    import pygame,time
    pantalla = pygame.display.set_mode((600,400)) # Crea la pantalla con esas dimensiones
    imagen = pygame.image.load('imagen.gif') # Carga la imagen

    while 1:
    for i in range(400):
     pantalla.blit(imagen,(i,i)) # Pone la imagen en las coordenadas que diga la variable
     pygame.display.flip()
     time.sleep(0.01)
    for i in range(400):
     pantalla.blit(imagen,(400-i,400-i))
     pygame.display.flip()
     time.sleep(0.01)

    Si prueban ese código verán que la imagen.gi (podéis cambiarle el nombre por el nombre de la imagen que usaron antes) se va moviendo en diagonal por la pantalla , pero , hay un problema y es que la imagen se va sobreponiendo sin borrar la anterior.
    En pygame , no se pueden borrar las imágenes que aparecen en la pantalla, pero lo que si se puede hacer es tapar lo que había antes con una imagen del tamaño de la ventana.De esta forma :
    Código (python) [Seleccionar]

    import pygame,time
    pantalla = pygame.display.set_mode((600,400)) # Crea la pantalla con esas dimensiones
    imagen = pygame.image.load('imagen.gif') # Carga la imagen
    fondo = pygame.Surface((600,400)) # Crea una imagen (Surface)
    fondo.fill([255,255,255]) # La rellena de color blanco (255,255,255esla representacion de rojo,amarillo y azul de la imagen)
    while 1:
    for i in range(400):
     pantalla.blit(fondo,(0,0)) # Carga el fondo en la pantalla, tapando todo lo que hubiera antes
     pantalla.blit(imagen,(i,i)) # Pone la imagen en las coordenadas que diga la variable i tapando esa parte del fondo
     pygame.display.flip()
     time.sleep(0.01)
    for i in range(400):
     pantalla.blit(fondo,(0,0))
     pantalla.blit(imagen,(400-i,400-i))
     pygame.display.flip()
     time.sleep(0.01)

    Y así se evita el problema.