domingo, 25 de septiembre de 2011

Empezando videojuego (Parte 2)

En esta segunda parte ya tengo color en la pantalla, y algunas figuras dentro de ella.

#!/usr/bin/python
import pygame


def main():
    pygame.init()
    pantalla=pygame.display.set_mode([600,400])
    pygame.display.set_caption("Juego Medieval")
    salir=False
    reloj1=pygame.time.Clock()
    verde=(0,100,0)
    rojizo=(200,20,50)
    azulado=(70,70,190)
    s1=pygame.Surface((100,150))
    s1.fill(rojizo)
    s2=pygame.Surface([25,25])
    s2.fill(azulado)
    

    while salir!=True:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                salir=True
        reloj1.tick(20)
        pantalla.fill(verde)
        pantalla.blit(s1,[100,200])
        pantalla.blit(s2,[10,10])
        pygame.display.update()

    pygame.quit()

main()



Como podemos ver, ya tenemos nuevas líneas de código respecto al de la entrada pasada.

reloj1=pygame.time.Clock() Esta función es de tiempo, la cual nos sirve para esta otra:
reloj1.tick(20) Esta nos indica que cada 20 frames por segundo se actualizará la pantalla, esto es para que no se trabe tanto al momento de ejecutar
  verde=(0,100,0) Esta función es el color que le pondré a la pantalla completa, en RGB el color verde es 0,100,0 pero para no volver a escribirlo lo represento con la palabra "verde", y está relacionada con esta:
pantalla.fill(verde) Esta hace que toda la pantalla sea del color verde, que ya especificamos con RGB en la anterior.

rojizo=(200,20,50)
    azulado=(70,70,190)
Estas funciones son sólo los nombres de los colores para no tener que escribir de nuevo toda la asignación de colores.

 s1=pygame.Surface((100,150))
    s1.fill(rojizo)
    s2=pygame.Surface([25,25])
    s2.fill(azulado) 
  Estas funciones son para hacer superficies en la pantalla que se nos despliega, la primera de s1 el 100 y el 150 nos indica el tamaño de los rectángulos que haremos, y el segundo indica de qué color será este.

  pantalla.blit(s1,[100,200])
        pantalla.blit(s2,[10,10])
Esta es para que las superficies estén en pantalla.



Aquí dejo una página que contiene los códigos en hexadecimal de los colores.
http://www.yellowpipe.com/yis/tools/hex-to-rgb/color-converter.php

No hay comentarios:

Publicar un comentario