#! /usr/bin/env python
# -*- coding: utf-8 -*-
import pilasengine
import random
pilas = pilasengine.iniciar()
En primer lugar, he cambiado las variables del actor y le he indicado que el tipo de bala sea misil.
# Variables y Constantes
balas_simples = pilasengine.actores.Misil
Creamos un nuevo enemigo, los cuales no están determinados.
Nave = []
tiempo=6
fin_de_juego=False
# Funciones
def Nave_destruida(disparo, enemigo):
# Eliminar la nave alcanzada
enemigo.eliminar()
disparo.eliminar()
# Actualizar el marcador con un efecto bonito
puntos.escala = 1
puntos.escala = pilas.utils.interpolar(puntos, 'escala', 1, duracion=0.5)
puntos.aumentar(1)
def crear_Nave():
Indicamos que el nuevo enemigo son Naves.
# Crear un enemigo nuevo
enemigo = pilas.actores.Nave()
Estas linea hace que la transición dure 5 segundo hasta llegar a escala 3
# Hacer que se aparición sea con un efecto bonito
enemigo.escala = 2
enemigo.escala =pilas.utils.interpolar(enemigo, 'escala', 3, duracion=5)
# Dotarle de la habilidad de que explote al ser alcanzado por un disparo
enemigo.aprender(pilas.habilidades.PuedeExplotar)
# Situarlo en una posición al azar, no demasiado cerca del jugador
x = random.randrange(270, 320)
y = random.randrange(-190, 240)
if x >= 0 and x <=100 :
x = 180
elif x <= 0 and x >= -100:
x = -180
if y >= 0 and y <= 100:
y = 180
elif y <= 0 and y >= -100:
y = -180
enemigo.x = x
enemigo.y = y
a=random.randrange(-320, 320)
b=random.randrange(-1000, 1000)
enemigo.x = [a, b], 1
enemigo.y = [b, a], 1
# Añadirlo a la lista de enemigos
Nave.append(enemigo)
# Permitir la creación de enemigos mientras el juego esté en activo
if fin_de_juego:
return False
else:
return True
def perder(Planeta, enemigo):
# Indicar fin de juego y eliminar lo que ya no se necesita
global fin_de_juego
Planeta.eliminar()
pilas.tareas.eliminar_todas()
fin_de_juego = True
pilas.avisar("GAME OVER. Conseguiste % puntos" % (puntos.obtener()))
Indicamos un nuevo fondo, Espacio.
# Usar un fondo estándar
pilas.fondos.Espacio()
# Añadir un marcador
puntos = pilas.actores.Puntaje(x=-240, y=-220, color=pilas.colores.verde)
puntos.magnitud = 40
# Añadir el conmutador de Sonido
pilas.actores.Sonido()
# Añadir la torreta del jugador
Torreta = pilas.actores.Torreta(municion_bala_simple=balas_simples,
enemigos=Nave,
cuando_elimina_enemigo=Nave_destruida)
# Crear un enemigo cada segundo
pilas.tareas.agregar(1, crear_Nave)
# Añadir la colisión de enemigos con la torreta para finalizar el juego
pilas.colisiones.agregar(Torreta, Nave, perder)
# Arrancar el juego
pilas.ejecutar()
No hay comentarios:
Publicar un comentario