Bueno, pues el otro dia me descargue un ejemplo de un juego que habia aqui colgado llamado Invaders, que es tipo "1945", pues tras estudiar el codigo y verlo decidid intentar hacer una copia fijandome en el ejemplo para estudiarlo y ver mas o menos como funciona pygame, pero es que por mas que me fijo y me fijo no soy capaz de hacer que a`partir de una clase crear varias naves enemigas, os dejo el codigo, perdonar si esta un poco desorganizado
- Código: Seleccionar todo
- #Importacion de librerias
 import pygame
 import random
 from pygame.locals import *
 from pygame.sprite import Sprite
 #Variables de tamagno
 SCREEN_WIDTH = 800
 SCREEN_HEIGHT = 600
 #Funcion para subir fotos
 def load_image(fullname, colorkey=False):
 try:
 image = pygame.image.load(fullname)
 except pygame.error, message:
 print 'No se puede cargar la imagen: ', fullname
 raise SystemExit, message
 image = image.convert()
 if colorkey:
 colorkey = image.get_at((0, 0))
 image.set_colorkey(colorkey, RLEACCEL)
 return (image, image.get_rect())
 #Clase de la nave
 class nave(pygame.sprite.Sprite):
 def __init__(self):
 pygame.sprite.Sprite.__init__(self)
 (self.image, self.rect) = load_image('datos/nave.png', True)
 self.rect = self.image.get_rect()
 self.rect.x = 368
 self.rect.y = 536
 def update(self):
 teclas = pygame.key.get_pressed()
 #Movimiento
 if teclas[K_LEFT]:
 self.rect.x -= 1
 if teclas[K_RIGHT]:
 self.rect.x += 1
 if teclas[K_UP]:
 self.rect.y -= 1
 if teclas[K_DOWN]:
 self.rect.y += 1
 #Limites
 if self.rect.x <26> 826:
 self.rect.x = -26
 if self.rect.y <0>= 536:
 self.rect.y = 536
 
 #Naves enemigas
 class enemigo(pygame.sprite.Sprite):
 def __init__(self):
 pygame.sprite.Sprite.__init__(self)
 (self.image, self.rect) = load_image('datos/enemigo.png', True)
 self.set_initial_position()
 self.load_image()
 def set_initial_position(self):
 self.rect.centerx = random.randint(100, 700)
 self.rect.y = 0
 self.x_velocity = 1
 self.y_velocity = 2
 def load_image(self):
 (self.image, self.rect) = load_image('datos/enemigo.png', True)
 def update(self):
 #Mover el sprite en 20
 self.rect.move_ip((self.x_velocity, self.y_velocity))
 if self.rect.left <64>= SCREEN_WIDTH +64:
 self.rect.left = -64
 if self.rect.y >= SCREEN_HEIGHT:
 self.rect.y = 0
 
 #Programa principal
 if __name__ == '__main__':
 pygame.init()
 salir = False
 screen = pygame.display.set_mode( (SCREEN_WIDTH,SCREEN_HEIGHT) )
 pygame.display.set_caption( "Pruebas" )
 (background_image, _) = load_image('back.jpg')
 screen.blit(background_image, (0, 0))
 sprites = pygame.sprite.RenderClear()
 nave = nave()
 enemigo = enemigo()
 sprites.add(nave)
 enemies = pygame.sprite.RenderClear()
 enemy_counter = 0
 while not salir:
 screen.blit(background_image, (0,0) )
 keyinput = pygame.key.get_pressed()
 keyinput = pygame.key.get_pressed()
 sprites.update()
 enemies.add(enemigo)
 sprites.add(enemigo)
 sprites.draw(screen)
 pygame.display.flip()
 if keyinput[K_ESCAPE] or pygame.event.peek(QUIT):
 raise SystemExit



 
 
 

