示例#1
0
    def initializeGL(self):
        glClearColor(0.0, 0.0, 0.0, 0.0)
        glShadeModel(GL_SMOOTH)

        glEnable(GL_BLEND)
        glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA)

        glEnable(GL_ALPHA_TEST)
        glAlphaFunc(GL_NOTEQUAL, 0.0)

        glMatrixMode(GL_PROJECTION)
        glLoadIdentity()
        glOrtho(-50.0, 50.0, -50.0, 50.0, -1, 1)
        glMatrixMode(GL_MODELVIEW)
        glLoadIdentity()

        self.myNave = Nave(self.animation_propellant_enemy, self.player_x)
        self.in_scene.append(self.myNave)

        self.myNave2 = Nave(self.animation_propellant_enemy, self.player2_x)
        self.in_scene.append(self.myNave2)

        self.imageID_back = self.loadImage("img/Background.png")

        for i in range(EXPLOSION_FRAMES):
            self.animation_explosion[i] = self.loadImage("img/explosion/Comp" +
                                                         str(i) + ".png")

        for i in range(PROPELLANT_FRAMES):
            self.animation_propellant_enemy[i] = self.loadImage(
                "img/fire/Comp" + str(i) + ".png")

        self.img_nave_amarela = self.loadImage("img/nave4.png")
        self.img_nave_azul = self.loadImage("img/nave1.png")
        self.img_nave_preta = self.loadImage("img/nave3.png")
        self.img_tiro_amarelo = self.loadImage("img/nave4_pow.png")
        self.img_tiro_preto = self.loadImage("img/nave3_pow.png")
        self.img_tiro_azul = self.loadImage("img/nave1_pow.png")
        self.img_tiro = self.loadImage("img/nave2_pow.png")
        self.logo_init = self.loadImage("img/SpaceCute.png")
        self.logo_end = self.loadImage("img/YouDied.png")

        self.myLogo_i.load("inicio", self.logo_init, self.logo_end)
        self.ornaments.append(self.myLogo_i)
        self.myLogo_i.inited = True

        self.myLogo_e.load("fim", self.logo_init, self.logo_end)

        self.init_queue()
示例#2
0
 def prep_naves(self):
     self.naves = Group()
     for numero_naves in range(self.estadisticas.naves_restantes):
         nave = Nave(self.configuracion_ia, self.pantalla)
         nave.rect.x = 10 + numero_naves * nave.rect.width
         nave.rect.y = 10
         self.naves.add(nave)
示例#3
0
def run_game():
    pygame.init()
    m_settings = Settings()
    stats = Estadisticas(m_settings)
    fj.cargar_puntuacion(stats)
    screen = pygame.display.set_mode((m_settings.screen_width, m_settings.screen_height)) #dibujar pantalla
    nave = Nave(screen, m_settings) #Dibujar nave
    balas = Group() #Un grupo es una lista con funciones añadidas
    marcianitos = Group()
    fj.crear_flota(m_settings, screen, nave, marcianitos)
    icon = pygame.image.load("images/alien.bmp")
    pygame.display.set_icon(icon)
    pygame.display.set_caption("Marcianitos")
    boton = Boton(m_settings, screen, "Jugar")
    hud = Hud(m_settings, screen, stats)
    m.musica_fondo()


    while True:
        fj.comprobar_eventos(m_settings, screen, nave, balas, stats, marcianitos, boton)
        if stats.jugando:
            nave.actualizar_posicion(m_settings)
            fj.actualizar_balas(m_settings, screen, nave, marcianitos, balas, stats, hud)
            fj.actualizar_flota(m_settings, stats, screen, balas, marcianitos, nave, hud)
        fj.actualizar_pantalla(m_settings, screen, nave, marcianitos, balas, boton, stats, hud)
示例#4
0
def run_game():
    pygame.init()  #Inicializa o jogo e cria um objeto para a tela
    ai_configuracoes = Configuracoes(
    )  #objeto ai_configuracoes da Classe Configuracoes
    tela = pygame.display.set_mode(
        (ai_configuracoes.tela_width, ai_configuracoes.tela_height))
    pygame.display.set_caption("Space War")
    nave_espacial = Nave(ai_configuracoes,
                         tela)  #objeto nave_espacial da classe Nave
    municoes = Group()  #Cria um grupo no qual serão armazenados as munições
    aliens = Group()  #Cria um grupo vazio para armazenar os aliens do jogo
    jf.cria_frota(
        ai_configuracoes, tela, nave_espacial, aliens
    )  #Cria uma frota de aliens (usa configurações, tela e um grupo vazio de aliens)

    while True:  #Inicia o laço principal do jogo
        jf.check_eventos(ai_configuracoes, tela, nave_espacial,
                         municoes)  #checa os eventos
        nave_espacial.update_nave()  #posicionamento da nave
        jf.update_municoes(
            ai_configuracoes, tela, nave_espacial, aliens,
            municoes)  #verifica as municoes na tela ,se houve disparo
        jf.update_aliens(ai_configuracoes, aliens)
        jf.update_tela(ai_configuracoes, tela, nave_espacial, aliens,
                       municoes)  #update da tela
示例#5
0
 def __init__(self,idProceso,prioridad,recurso,posX ,ventana, posY,quantum=0,nombre="ataque planeta",t=8,tr=0,):
     Proceso.__init__(self,idProceso,prioridad,quantum,nombre,recurso,t,tr,ventana)
     Sprite.__init__(self)
     self.disparo = Nave()
     self.disparo.rect.top = posY
     self.disparo.rect.left = posX
     self.disparo.disparada = True
示例#6
0
 def prep_naves(self):
     """Amostra quantas naves ainda restam"""
     self.naves = Group()
     for nave_num in range(self.stats.nave_left):
         nave = Nave(self.ik_game)
         nave.image = pygame.transform.rotate(pygame.transform.scale(
             pygame.image.load(os.path.join('complemento/aventine_ship.bmp')), (50, 20)), 90)
         nave.rect.x = 10 + nave_num * nave.rect.width
         nave.rect.y = 10
         self.naves.add(nave)
示例#7
0
def run_game():
    pygame.init()

    settings = Settings()
    screen = pygame.display.set_mode(
        (settings.tela_larguraX, settings.tela_alturaY))

    naveX_change = 0
    naveY_change = 0

    nave = Nave(screen)
    run = True
    while run:
        screen.fill((settings.bg_color))

        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                run = False

            if event.type == pygame.KEYDOWN:  # 1-quando a tecla estah sendo apartada
                if event.key == pygame.K_UP:
                    naveY_change = -settings.velocidade

                if event.key == pygame.K_DOWN:
                    naveY_change = settings.velocidade

                if event.key == pygame.K_LEFT:
                    naveX_change = -settings.velocidade
                if event.key == pygame.K_RIGHT:
                    naveX_change = settings.velocidade

                if event.key == pygame.K_ESCAPE or event.key == pygame.K_q:
                    run = False
            if event.type == pygame.KEYUP:
                if event.key == pygame.K_UP or event.key == pygame.K_DOWN:
                    naveY_change = 0
                if event.key == pygame.K_LEFT or event.key == pygame.K_RIGHT:
                    naveX_change = 0

        settings.naveY += naveY_change
        settings.naveX += naveX_change

        if settings.naveX <= 0:
            settings.naveX = 0
        elif settings.naveX >= 736:
            settings.naveX = 736

        if settings.naveY <= 0:
            settings.naveY = 0
        elif settings.naveY >= 535:
            settings.naveY = 535

        nave.colocar(settings.naveX, settings.naveY)
        pygame.display.update()
示例#8
0
def run_game():
    # Inicializa o jogo e define resolução
    pygame.init()
    config = Settings()
    tela = pygame.display.set_mode((config.screen_width, config.screen_height))
    pygame.display.set_caption("Alien Invasion")
    nave = Nave(tela, config)

    while True:
        # Laço principal do jogo
        game_functions.check_events(nave)
        nave.update()
        game_functions.update_screen(config, tela, nave)
示例#9
0
 def criarNave(self, idModelo, nick):
     orientacaoInicial = sample(
         [0, 90, 180, 270],
         1)[0]  #escolhe uma direcao aleatoria para comecar
     posicaoInicial = [randint(0, 600), randint(0, 600)
                       ]  #escolhe uma posicao aleatoria para comecar a nave
     velocidade = self.__modelos[idModelo].getVelocidadePadrao()
     nave = Nave(orientacaoInicial, posicaoInicial, velocidade, idModelo,
                 self.__modelosTiroPadrao[idModelo], nick,
                 self.__modelos[idModelo].getGp())
     print("id nave criado: ", nave.getId())
     self.__naves[nave.getId()] = nave
     return [nave.getId(), nave.getOrientacao(), nave.getPosicao()]
示例#10
0
def run_game():
    pygame.init()
    ai_config = Config()

    screen = pygame.display.set_mode(
        (ai_config.screen_width, ai_config.screen_height))
    image = ai_config.sprit_image

    pygame.display.set_caption('Foguete')
    nave = Nave(ai_config, screen)

    while True:
        gf.check_events(nave)
        nave.update()
        gf.update_screen(image, screen, nave)
示例#11
0
    def __init__(self):
        pygame.init()
        self.conf = Configurador()

        #Abre la pantalla
        self.pantalla = pygame.display.set_mode(
            (self.conf.ancho_pant, self.conf.largo_pant))

        pygame.display.set_caption("Hola Pyschool")

        self.nave = Nave(self)
        self.balas = pygame.sprite.Group()
        self.aliens = pygame.sprite.Group()

        self._crear_invasores()
示例#12
0
 def reestart(self):
     self.reloc()
     self.started = False
     self.in_scene = []
     self.player_x = 0
     self.player2_x = 20
     self.myNave = Nave(self.animation_propellant_enemy, self.player_x)
     self.myNave2 = Nave(self.animation_propellant_enemy,
                         self.player_x + 20)
     self.elapsed_time_shoot = 0
     self.elapsed_time_asteroide = 0
     self.elapsed_time_inimigo = 0
     self.hack = False
     self.in_scene.append(self.myNave)
     self.in_scene.append(self.myNave2)
     self.sound_inGame.stop()
     self.sound_inGame = QSound("sound/inGame.wav", self)
     self.sound_inGame.play()
     if self.myLogo_i.inited:
         self.ornaments.remove(self.myLogo_i)
         self.myLogo_i.inited = False
     if self.myLogo_e.inited:
         self.ornaments.remove(self.myLogo_e)
         self.myLogo_e.inited = False
示例#13
0
def rodar_game():
    pygame.init()  #inicializa a biblioteca paygame

    configuracoes = Configuracoes()  #cria o objeto configuracoes

    tela = pygame.display.set_mode(
        (configuracoes.largura_tela,
         configuracoes.altura_tela))  #configura as dimensoes da tela
    pygame.display.set_caption(
        "Invasão Alienígena")  #adiciona um titulo a tela criada

    play = Botao(configuracoes, tela, "PLAY")  #criar o objeto botao para play

    nave = Nave(configuracoes, tela)  #criar o objeto nave

    tiros = Group()  #criar um grupo de tiros

    aliens = Group()  #criar um grupo de aliens

    naves_vidas = Group()  #criar um grupo de naves para vidas

    tela_pontuacao = TelaPontuacao(configuracoes,
                                   tela)  #criar tela para pontuacao

    fg.criar_frota_aliens(aliens, nave, configuracoes,
                          tela)  #criar frota inicial de aliens

    fg.criar_naves_vidas(naves_vidas, configuracoes,
                         tela)  #criar as tres naves vidas

    while True:
        fg.checar_eventos(nave, tiros, configuracoes, tela,
                          play)  #checa eventos do teclado
        fg.atualizar_tela(configuracoes, nave, naves_vidas, tela, tiros,
                          aliens, play,
                          tela_pontuacao)  #atualiza a tela para cada ciclo
        if configuracoes.jogo_ativo:  #condicao para jogo comecar
            nave.atualizacao_nave()  #atualiza a posicao da nave
            fg.atualizacao_tiros(tiros)  #atualiza a posicao dos tiros
            tela_pontuacao.atualizacao_pontuacao()
            fg.atualizar_frota(aliens, tiros, nave, naves_vidas, configuracoes,
                               tela)  #atualiza a tela por ciclo do laco
 def reestart(self):
     self.reloc()
     self.started = False
     self.player_move_left = False
     self.player_move_right = False
     self.myNave = Nave(0)
     self.elapsed_time_shoot = 0
     self.elapsed_time_asteroide = 0
     self.elapsed_time_inimigo = 0
     self.in_scene = []
     self.in_scene.append(self.myNave)
     self.sound_inGame.stop()
     self.sound_inGame = QSound("sound/inGame.wav", self)
     self.sound_inGame.play()
     if self.myLogo_i.inited:
         self.ornaments.remove(self.myLogo_i)
         self.myLogo_i.inited = False
     if self.myLogo_e.inited:
         self.ornaments.remove(self.myLogo_e)
         self.myLogo_e.inited = False
示例#15
0
def run_game():
    # Inicializa o pygame, as configurações e o objeto screen
    pygame.init()
    ai_settings = Cfg()
    screen = pygame.display.set_mode(
        (ai_settings.screen_width, ai_settings.screen_height))
    pygame.display.set_caption("invasao alien")

    # Cria uma espaçonave
    nave = Nave(ai_settings, screen)

    disparos = Group()

    # Inicializa o laço principal do jogo
    while True:
        # Observa eventos de teclado e de mouse
        gf.check_events(ai_settings, screen, nave, disparos)
        nave.update()
        gf.disparos_update(disparos)
        gf.update_screen(ai_settings, screen, nave, disparos)
示例#16
0
    def run(self) -> None:
        """
		Bucle principal del juego.
		"""
        self.clock = pygame.time.Clock()
        self.nave = Nave(self.nav_img, 200, 400)
        while True:
            self.clock.tick(40)

            # - events -
            for event in pygame.event.get():
                if event.type == pygame.QUIT:
                    pygame.quit()
                    sys.exit()

            # - draw -
            self.window.blit(self.bg, (0, 0))
            self.nave.draw(self.window)
            self.nave.update()

            # - updates -
            pygame.display.update()
示例#17
0
    def __init__(self):
        """Inicializa o jogo e cria os recursos"""
        pygame.init()
        self.configuracoes = Configuracoes()
        """Para habilitar modo Fullscreen, retire as anotações 
        dos três códigos abaixo e adicione observação no 'self.screen'"""
        # self.screen = pygame.display.set_mode((0, 0), pygame.FULLSCREEN)
        # self.configuracoes.screen_width = self.screen.get_rect().width
        # self.configuracoes.screen_height = self.screen.get_rect().height
        self.screen = pygame.display.set_mode(
            (self.configuracoes.screen_width,
             self.configuracoes.screen_height))
        pygame.display.set_caption("Invasão Klingon")
        # Cria uma instância para armazenar os dados do jogo
        self.stats = GameStats(self)
        self.placar = Placar(self)
        self.placar = Placar(self)
        # Músicas de fundo
        self.open_music = pygame.mixer.Sound(
            os.path.join("complemento/tng_open.mp3")
        )  # Abertura da série Star Trek: Next Generation
        self.battle_music = pygame.mixer.Sound(
            os.path.join(
                "complemento/first_contact.mp3"))  # Assimilation battle sound
        # Sprites
        self.nave = Nave(self)
        self.tiros = pygame.sprite.Group()
        self.klingons = pygame.sprite.Group()
        self._criar_frota()

        # Botão de iniciar
        self.play_botao = Botao(self, "Iniciar")

        # Icon
        self.icon = pygame.transform.scale(
            pygame.image.load(os.path.join("complemento/klingon_icon.png")),
            (35, 35))
        pygame.display.set_icon(self.icon)
示例#18
0
def correr_juego():
	pygame.init()
	configuracion_ia = Configuracion()
	pantalla = pygame.display.set_mode(
		(configuracion_ia.ancho_pantalla, configuracion_ia.alto_pantalla))
	pygame.display.set_caption("Invasion Alien")
	boton_jugar = Boton(configuracion_ia, pantalla , "Jugar!")
	estadisticas = EstadisticasJuego(configuracion_ia)
	tp = TablaPuntaje(configuracion_ia, pantalla, estadisticas)
	nave = Nave(configuracion_ia, pantalla)
	balas = Group()
	aliens = Group()
	
	fj.crear_flota(configuracion_ia, pantalla, nave, aliens)
	
	while True:
		
		fj.chequear_events(configuracion_ia, pantalla, estadisticas, tp, boton_jugar, nave, aliens, balas)
		if estadisticas.juego_activo:			
			nave.actualizar()
			fj.actualizar_balas(configuracion_ia,pantalla, estadisticas, tp, nave, aliens, balas)	
			fj.actualizar_aliens(configuracion_ia, estadisticas, tp, pantalla, nave, aliens, balas)			
		fj.actualizar_pantalla(configuracion_ia, pantalla, estadisticas, tp, nave, aliens, balas, boton_jugar)
def criar_naves_vidas(naves_vidas, configuracoes, tela):
    for i in range(configuracoes.limite_vida):
        nova_nave_vida = Nave(configuracoes, tela)
        nova_nave_vida.rect.top = nova_nave_vida.tela_rect.top
        nova_nave_vida.rect.x = nova_nave_vida.rect.width * i
        naves_vidas.add(nova_nave_vida)
def run():
    """ Inicio del juego y crea el screen del juego """
    print(platform.python_version())  #Ver version python

    #pygame.init()
    #Alternativa al init para ganar velocidad
    pygame.display.init()
    pygame.font.init()

    configuracion = Configuracion()  #Configuracion inicial del juego

    #Lee la configuracion de pantalla
    pantalla = pygame.display.set_mode(
        (configuracion.ancho_pantalla, configuracion.alto_pantalla))

    pygame.display.set_caption(configuracion.nombre)  #Nombre del juego

    #Crea una instancia de una nave
    nave = Nave(configuracion, pantalla)

    #Crea una instancia de un marciano
    #marciano=Marciano(configuracion,pantalla)

    #Creo la flota de marcianos
    marcianos = Group()

    #Crea la flota de marcianos
    func.crear_flota(configuracion, pantalla, nave, marcianos)

    #Guarda los disparos en un grupo de pygame.sprite
    disparos = Group()

    #Guarda los disparos marcianos en un grupo de pygame.sprite
    disparosM = Group()

    #puntuaciones inicializa puntuaciones , n naves etc
    marcador = Marcador(configuracion)

    #Informacion de las puntuaciones , marcadores
    informacion = Informaciones(configuracion, pantalla, marcador)

    #Crea un boton de play
    boton = Boton(configuracion, pantalla, "Juega")

    #Crea un bunker
    bunkers = pygame.sprite.Group()
    func.crear_bunkers(configuracion, pantalla, bunkers)

    #Sonidos juego
    sonidos = Sonidos()

    #Bucle principal
    while True:
        sleep(0.01)  #CPU usage

        #Mira eventos de teclado o raton
        func.analiza_eventos(configuracion, pantalla, marcador, boton, nave,
                             disparos, sonidos)

        if marcador.juego_activo:  #Juego activo ?Todas las vidas ?
            #Dibuja la nave del jugador
            nave.actualiza()

            #Actualiza TODOS los disparo en el GROUP pero es un disparo
            func.actualiza_disparos(
                configuracion, marcador, pantalla, nave, marcianos, disparos,
                bunkers, sonidos)  #Este update() esta en la clase disparo

            #Actualiza si un marciano ha disparado , falta mostrarlo
            func.actualiza_marcianos(configuracion, marcador, pantalla, nave,
                                     marcianos, disparos, disparosM, bunkers,
                                     sonidos)

            #Actualiza disparos Marcianos
            func.actualiza_disparosMarcianos(
                configuracion, marcador, pantalla, bunkers, nave, marcianos,
                disparosM, sonidos)  #Este update() esta en la clase disparo

        func.actualiza_pantalla(configuracion, pantalla, informacion, marcador,
                                nave, marcianos, disparos, disparosM, boton,
                                bunkers)

        #Muestra en pantalla
        pygame.display.flip()
示例#21
0
    def initializeGL(self):
        glClearColor(0.0, 0.0, 0.0, 0.0)
        glShadeModel(GL_SMOOTH)
        glEnable(GL_DEPTH_TEST)
        glEnable(GL_BLEND)
        glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA)

        glEnable(GL_ALPHA_TEST)
        glAlphaFunc(GL_NOTEQUAL, 0.0)

        glMatrixMode(GL_PROJECTION)
        glLoadIdentity()

        gluPerspective(45, 1.65, 0.1, 500)
        gluLookAt(0, -100, 50, 0, 0, 0, 0, 1, 0)
        glMatrixMode(GL_MODELVIEW)
        glLoadIdentity()

        self.myNave = Nave(self.animation_propellant_enemy, 0)
        self.in_scene.append(self.myNave)

        for i in range(EXPLOSION_FRAMES):
            self.animation_explosion[i] = self.loadImage("img/explosion/Comp" +
                                                         str(i) + ".png")

        for i in range(PROPELLANT_FRAMES):
            self.animation_propellant_enemy[i] = self.loadImage(
                "img/fire/Comp" + str(i) + ".png")

        for i in range(10):
            self.img_planets[i] = self.loadImage("img/planets/planeta" +
                                                 str(i) + ".png")

        self.img_nave_amarela = self.loadImage("img/nave4.png")
        self.img_nave_azul = self.loadImage("img/nave1.png")
        self.img_nave_preta = self.loadImage("img/nave3.png")
        self.img_tiro_amarelo = self.loadImage("img/nave4_pow.png")
        self.img_tiro_preto = self.loadImage("img/nave3_pow.png")
        self.img_tiro_azul = self.loadImage("img/nave1_pow.png")
        self.img_tiro = self.loadImage("img/nave2_pow.png")
        self.logo_init = self.loadImage("img/SpaceCute.png")
        self.logo_end = self.loadImage("img/YouDied.png")
        self.power_up_vida = self.loadImage("img/power_up_life.png")
        self.power_up_shoot = self.loadImage("img/power_up_shot.png")
        self.power_up_speed = self.loadImage("img/power_up_speed.png")

        self.myLogo_i.load("inicio", self.logo_init, self.logo_end)
        self.ornaments.append(self.myLogo_i)
        self.myLogo_i.inited = True

        self.myLogo_e.load("fim", self.logo_init, self.logo_end)

        self.init_queue()

        # Arrumando erros de frict
        fix_p = self.propellant_queue.pop()
        fix_p.load(self.animation_propellant_enemy, 1000, 1000, "fix")
        self.ornaments.append(fix_p)

        new_explosion = self.explosion_queue.pop()
        new_explosion.load(self.animation_explosion, 1000, 1000, "fix")
        self.ornaments.append(new_explosion)

        tx = 0
        ambiente = [0.2, 0.2, 0.2, 1.0]
        difusa = [0.7, 0.7, 0.7, 1.0]
        especular = [1.0, 1.0, 1.0, 1.0]
        posicao = [0.0, 3.0, 2.0, 0.0]
        lmodelo_ambiente = [0.2, 0.2, 0.2, 1.0]

        glLightfv(GL_LIGHT0, GL_AMBIENT, ambiente)
        glLightfv(GL_LIGHT0, GL_DIFFUSE, difusa)
        glLightfv(GL_LIGHT0, GL_POSITION, posicao)
        glLightfv(GL_LIGHT0, GL_SPECULAR, especular)
        glLightModelfv(GL_LIGHT_MODEL_AMBIENT, lmodelo_ambiente)
        glEnable(GL_LIGHTING)
        glEnable(GL_LIGHT0)
        glEnable(GL_COLOR_MATERIAL)
示例#22
0
    def selecao(self):
        """
        Este metodo controla a selecao de jogadores e naves
        """
        for i in range(2):
            system("clear")
            print("SELEÇÃO")
            print("1 - Criar")
            print("2 - Já tenho")
            opcao = input(": ")

            if opcao == "1":
                print("\nJOGADOR")
                while True:
                    nome = input("Nome: ").upper()

                    if not self.buscar_nome(nome):
                        break
                    else:
                        print("Este jogador já existe.\n")

                print("\nNAVE")
                print(
                    "Você tem 10 pontos para distribuir (entre velocidade máxima, aceleração e escudo)."
                )

                while True:
                    try:
                        velocidade_maxima = int(
                            input("Velocidade máxima (1-5): "))
                        aceleracao = int(input("Aceleração (1-5): "))
                        escudo = int(input("Escudo (0-5): "))
                    except:
                        print("Valor inválido!\n")
                        continue

                    if velocidade_maxima + aceleracao + escudo <= 10:
                        break
                    else:
                        print("Você gastou mais de 10 pontos.\n")

                while True:
                    print("Cor:")
                    print("1 - vermelho")
                    print("2 - amarelo")
                    print("3 - verde")
                    print("4 - azul turquesa")
                    print("5 - azul")
                    print("6 - roxo")

                    try:
                        cor = int(input(": "))
                    except:
                        print("Valor inválido!\n")
                        continue

                    if cor > 0 and cor < 7:
                        break
                    else:
                        print("Cor inexistente.")

                if i == 0:
                    nave = Nave(jogo.ambiente, cor, Vetor(200, 300),
                                velocidade_maxima, aceleracao * 0.5, escudo, 0)
                else:
                    nave = Nave(jogo.ambiente, cor, Vetor(1000, 300),
                                velocidade_maxima, aceleracao * 0.5, escudo, 1)
                self.lista_naves.append(nave)

                self.salvar_configuracao(nome, cor, velocidade_maxima,
                                         aceleracao * 0.5, escudo)

            elif opcao == "2":
                nome = input("Nome: ").upper()

                configuracao = self.ler_configuracao(nome)

                if i == 0:
                    nave = Nave(jogo.ambiente, configuracao[0],
                                Vetor(200, 300), configuracao[1],
                                configuracao[2], configuracao[3], 0)
                else:
                    nave = Nave(jogo.ambiente, configuracao[0],
                                Vetor(1000, 300), configuracao[1],
                                configuracao[2], configuracao[3], 1)
                self.lista_naves.append(nave)

            else:
                print("Opção inválida")
                sys.exit()
示例#23
0
"""Exercicio com pygame."""
import pygame
from estrela import Estrela
import random
from nave import Nave

estrelas = []
rastros = []
num_estrelas = 300
num_rastros = 5
vel_mult = 2
nave = Nave()
rastrocontrol = Nave()
nave_espacial = pygame.image.load("./imgs/nave.png")


GREY = (128, 128, 128)
BLACK = (0, 0, 0)
WHITE = (255, 255, 255)


def criacao(param):
    """Metodo de criacao de estrela."""
    if param == 0:
        x = random.randint(0, 800)
    elif param == 1:
        x = 800
    y = random.randint(0, 600)
    vel = random.randint(1, 3)

    estrela = Estrela()
示例#24
0
    pygame.mixer.music.load("data/música/the_field_of_dreams.mp3")
    pygame.mixer.music.play(-1)


play2()
# =====================================================#
# Sounds:                                              #
# =====================================================#

shoot = pygame.mixer.Sound("data/música/Shoot.wav")

# =====================================================#
# loop:                                                #
# =====================================================#

nave = Nave(objectGroup)
asteroid = Asteroid(objectGroup)

gameLoop = True
gameOver = False
clock = pygame.time.Clock()
numero = 10

if __name__ == "__main__":

    while gameLoop:

        clock.tick(30)

        for event in pygame.event.get():
            if event.type == pygame.QUIT:
示例#25
0
def instancia_nave():
    """Instancia uma nave."""
    nave = Nave()
    nave.set_x = 100
    nave.set_y = 100