Hola que tal, desde ya gracias. estoy teniendo un problema y no logro encontrar la solucion para que el disparo de la nave destruya a los enemigos, y el disparo del ovni tambien destruya la nave.
# coding: utf-8
import pilasengine
import random
pilas = pilasengine.iniciar()
pilas.actores.Sonido()
fin_de_Juego = False
fondo = pilas.fondos.Galaxia()
puntos = pilas.actores.Puntaje( x=-300, y=-200, color= pilas.colores.blanco)
nave = pilas.actores.Nave( y= -200)
nave.aprender(pilas.habilidades.LimitadoABordesDePantalla)
disparo_de_nave = pilasengine.actores.Misil
nave.aprender(pilas.habilidades.Disparar, municion = disparo_de_nave , angulo_salida_disparo = 90, frecuencia_de_disparo = 2)
nave.aprender(pilas.habilidades.PuedeExplotar)
nave.aprender(pilas.habilidades.MoverseConElTeclado)
nave.definir_enemigos
enemigo1 = pilas.actores.Ovni( y = 200)
enemigo1.radio_de_colision=25
enemigo1.aprender(pilas.habilidades.PuedeExplotar)
enemigo1.x = [0, -300, 300] *1000, 3
disparo_de_enemigo1 = pilasengine.actores.Bomba
enemigo1.aprender(pilas.habilidades.Disparar, control=None, municion = disparo_de_enemigo1 , angulo_salida_disparo = 270, frecuencia_de_disparo = 1, escala = 0.5)
def dispara():
enemigo1.disparar()
return True
pilas.tareas.agregar(1, dispara)
def crear_enemigo():
enemigo2 = pilas.actores.Aceituna()
enemigo2.aprender(pilas.habilidades.PuedeExplotarConHumo)
enemigo2.aprender(pilas.habilidades.Disparar, control=None, angulo_salida_disparo = 270, frecuencia_de_disparo = 0.5, escala = 0.5)
enemigo2.x = random.randrange(-200, 200)
enemigo2.y = random.randrange(-100, 150)
enemigos.agregar(enemigo2)
if fin_de_Juego:
return False
else:
return True
pilas.tareas.siempre(1, crear_enemigo)
enemigos = pilas.actores.Grupo()
def destruir(disparo, enem):
disparo.eliminar()
enem.eliminar()
global puntos
puntos.agregar(cantidad="100")
def perder(nav, ene):
global fin_de_Juego
ene.decir("Has Perdido")
nav.eliminar()
pilas.tareas.eliminar_todas()
fin_de_Juego = True
pilas.avisar("GAME OVER")
pilas.escena_actual().colisiones.agregar(nave, enemigo1, nave.eliminar)
pilas.escena_actual().colisiones.agregar(nave, enemigos, nave.eliminar)
pilas.escena_actual().colisiones.agregar(nave, enemigos, perder)
pilas.escena_actual().colisiones.agregar(nave, enemigo1, perder)
pilas.ejecutar()
No logro hacer la colision de esos y cuando creo una funcion para destruir los parametros de el disparo y lo q quiero destruir no me los toma como valido, me los rechaza