#Actividad Esquiador #Archivo: run.py #Descripcion: Clase que maneja eventos de esquiador # #! /usr/bin/env python """Skeleton project file mainloop for new OLPCGames users""" import olpcgames, pygame, logging from skier import * from track import * from score import * from constants import * LOG_FILENAME='Esquiador.log' log = logging.getLogger( 'EsquiadorRun' ) #log.setLevel( logging.DEBUG ) def mainImpares(): """The mainloop which is specified in the activity.py file "main" is the assumed function name """ pygame.init() size = screen_size if olpcgames.ACTIVITY: size = olpcgames.ACTIVITY.game_size screen = pygame.display.set_mode(size) skier = Skier('impares') track = Track() score = Score(skier) clock = pygame.time.Clock() #Inicio del bucle del juego running = True while running: #Numero maximo de frames por segundo FPS milliseconds = clock.tick(50) # maximum number of frames per second #Bucle administrador del evento con soporte para pausar despues de x segundos (20 aqui) # Event-management loop with support for pausing after X seconds (20 here) events = pygame.event.get() # Now the main event-processing loop if events: for event in events: log.debug( "Evento: %s", event ) if event.type == pygame.QUIT: running = False elif event.type == pygame.KEYDOWN: if event.key == pygame.K_ESCAPE: running = False elif event.key == pygame.K_LEFT or event.key == ord('a'): skier.moveLeft() elif event.key == pygame.K_RIGHT or event.key == ord('d'): skier.moveRight() elif event.key == pygame.K_DOWN or event.key == ord('s'): skier.moveForward() elif event.key == pygame.K_UP or event.key == ord('w'): skier.moveBack() #Simulacion # simulation skier.update(milliseconds) skier.checkCollision(track) #Dibujar # draw screen.fill( (235,235,235)) score.draw(screen) track.draw(screen, skier.getOffsetY()) skier.draw(screen) pygame.display.flip() if __name__ == "__main__": logging.basicConfig(filename=LOG_FILENAME,level=logging.DEBUG) main()