a continuacion la clase "Principal"
Código:
import pygame
import Personaje
class Principal:
def __init__(self):
pygame.display.init()
pygame.display.set_icon(pygame.image.load("favicon.png"))
self.personaje = Personaje.Personaje("wowo","Mago","Elfo",50,50)
self.tamaño = (1000,650)
self.ventanaPrincipal = pygame.display.set_mode(self.tamaño,pygame.RESIZABLE)
def draw(self):
'''
Descripcion: Crea la ventana,Setea el titulo de la ventana,Agrega al personaje
Retorna: nada
Argumentos: no tiene
'''
self.ventanaPrincipal.fill((255,255,255))
pygame.display.set_caption("Fatum Online")
self.ventanaPrincipal.blit(self.personaje.draw(),(self.personaje.getPosicionX(),self.personaje.getPosicionX()))
pygame.display.flip()
def capturarEventos(self):
'''
Descripcion: Crea un bucle que se encarga de tomar los eventos y toma desiciones en torno a ellos
Retorna: nada
Argumentos: no tiene
'''
pygame.display.update()
#Un bucle para mantener la ventana y tomar los eventos
while True:
#Aqui checamos todos los eventos que ocurrieron
for e in pygame.event.get():
pygame.display.update()
#Si el tipo del evento es QUIT (o salir) entonces termina el ciclo
if e.type == pygame.QUIT:
pygame.display.quit()
break
#Si existen tomo los eventos del teclado
if e.type == pygame.KEYDOWN:
#Cuando se pulse en las felchas de teclado seteamos la posicion del personaje y su visualizacion en pantalla
if e.key == pygame.K_DOWN:
self.personaje.moverArriba()
pygame.display.update()
break
if e.key == pygame.K_UP:
self.personaje.moverAbajo()
pygame.display.update()
break
if e.key == pygame.K_RIGHT:
self.personaje.moverDerecha()
pygame.display.update()
break
if e.key == pygame.K_LEFT:
self.personaje.moverIzquierda()
pygame.display.update()
break
if e.key == pygame.K_ESCAPE:
pygame.display.quit()
#Inicia el objeto principal
principal = Principal()
principal.draw()
principal.capturarEventos()
y la clase "Personaje"
Código:
import pygame
class Personaje:
def __init__(self,nombre,clase,raza,posicionX,posicionY):
self.nombre = nombre
self.clase = clase
self.raza = raza
self.posicionX = posicionX
self.posicionY = posicionY
self.cuerpo = pygame.image.load("personaje.png")
def draw(self):
'''
Devuelve el cuerpo del personaje
'''
return self.cuerpo
def getPosicionX(self):
'''
Retorna la posicion en X
'''
return self.posicionX
def getPosicionY(self):
'''
Retorna la posicion en Y
'''
return self.posicionY
def moverArriba(self):
'''
Aumenta la posicion en X
'''
self.posicionX += 10
def moverAbajo(self):
'''
Disminuye la posicion en X
'''
self.posicionX -= 10
def moverDerecha(self):
'''
Aumenta la posicion en Y
'''
self.posicionY += 10
def moverIzquierda(self):
'''
Disminuye la posicion en Y
'''
self.posicionY -= 10



