ola gracias por contestar no ya resolví quería saber si lo puedo compartir ya que me guié de muchas partes del foro si me dejas subir aquí eta el codigo
> # -*- encoding: utf-8 -*-
> import pilasengine
> import random
> sonido_de_menu = pilas.sonidos.cargar('Sonidos1/menu.wav')
> sonido_de_juego = pilas.sonidos.cargar('Sonidos1/juego.wav')
> sonido_de_gameover = pilas.sonidos.cargar('Sonidos1/fin.wav')
> sonido_intro = pilas.sonidos.cargar('Sonidos1/intro.wav')
> sonido_de_recolectar = pilas.sonidos.cargar('Sonidos1/recolectar.wav')
> pilas = pilasengine.iniciar()
> class EscenaMenu(pilasengine.escenas.Escena):
> def iniciar(self):
> self.fondo = self.pilas.fondos.Fondo("Imagenes/fondoinicio.png")
> self.Mi_Menu = pilas.actores.Menu(
> [
> (u"Jugar", self.Opcciones),
> (u"Ayuda", self.Ayuda),
> (u"Salir", self.Salir_de_Pilas)
>
> ])
> Nombre_de_juego = pilas.actores.Texto(u"Menu Principal")
> Nombre_de_juego.color = pilas.colores.amarillo
> Nombre_de_juego.y = 50
> def actualizar(self):
> pass
> def Ayuda(self):
> pilas.escenas.EscenaAyuda()
> def Opcciones(self):
> pilas.escenas.Opcciones()
>
> def Salir_de_Pilas(self):
> pilas.terminar()
>
> class Opcciones(pilasengine.escenas.Escena):
> def iniciar(self):
> self.fondo_juego = pilas.fondos.Noche()
> self.fondo_juego.imagen = "Imagenes/opccion.png"
> self.pilas.actores.Boton_Regresar()
> self.Mi_Menu = pilas.actores.Menu(
> [
> (u"Facil", self.Ir_al_juego),
> (u"Dificil", self.nivel)
>
> ])
> Nombre_de_juego = pilas.actores.Texto(u"Elige nivel")
> Nombre_de_juego.color = pilas.colores.amarillo
> Nombre_de_juego.y = 50
>
> def nivel(self):
> pilas.escenas.Escena_Juego1()
> def Ir_al_juego(self):
> pilas.escenas.Escena_Juego()
> class EscenaAyuda(pilasengine.escenas.Escena):
> def iniciar(self):
> self.fondo_juego = pilas.fondos.Noche()
> self.fondo_juego.imagen = "Imagenes/fondo.png"
> self.Boton_Volver = pilas.interfaz.Boton("Volver al Menu")
> self.Boton_Volver.y = 220
> self.Boton_Volver.x = 250
> self.Boton_Volver.conectar(self.Volver)
> def Volver(self):
> pilas.escenas.EscenaMenu()
> def actualizar(self):
> pass
> class Actor_Principal(pilasengine.actores.Actor):
> def iniciar(self):
> self.imagen = pilas.imagenes.cargar_grilla("Imagenes/naruto.png")
> self.x = 0
> self.y = -170
> self.aprender(pilas.habilidades.LimitadoABordesDePantalla)
> self.radio_de_colision = 70
> def actualizar(self):
> if pilas.control.izquierda:
> self.x -= 8
> self.espejado = False
> self.imagen.avanzar(velocidad=10)
> if pilas.control.derecha:
> self.x += 8
> self.espejado = True
> self.imagen.avanzar(velocidad=10)
> class Boton_Regresar(pilasengine.actores.Actor):
> def iniciar(self):
> self.imagen = "Imagenes/regresar.png"
> self.cuando_hace_click = self.volver_a_escena_principal
> self.y = -213
> self.x = -283
> self.escala = 0.8
> def volver_a_escena_principal(self, evento):
> self.pilas.escenas.EscenaMenu()
> sonido_de_juego.detener()
> sonido_intro.reproducir()
> class Nuez1(pilasengine.actores.Actor):
> def iniciar(self):
> self.imagen = "Imagenes/ramen1.jpg"
> self.aprender(pilas.habilidades.PuedeExplotarConHumo)
> self.x = pilas.azar(-1390, 1390) * 0.2
> self.y = 290
> self.velocidad = 0
> self.radio_de_colision = 14
> def actualizar(self):
> self.velocidad += 0.02
> self.y -= self.velocidad
> self.rotacion += 2
> if self.y < -300:
> self.eliminar()
> class Nuez2(pilasengine.actores.Actor):
> def iniciar(self):
> self.imagen = "Imagenes/ramen2.jpg"
> self.aprender(pilas.habilidades.PuedeExplotarConHumo)
> self.x = pilas.azar(-1390, 1390) * 0.2
> self.y = 290
> self.velocidad = 0
> self.radio_de_colision = 14
> def actualizar(self):
> self.velocidad += 0.03
> self.y -= self.velocidad
> self.rotacion += 2
> if self.y < -300:
> self.eliminar()
> class Enemigo(pilasengine.actores.Actor):
> def iniciar(self):
> self.imagen = "Imagenes/kunai.png"
> self.x = pilas.azar(-1390, 1390) * 0.2
> self.y = 290
> self.velocidad = 0
> rectangulo = pilas.fisica.Rectangulo(
> 0, 0, 90, 40, sensor=True, dinamica=False)
> self.figura_de_colision = rectangulo
> def actualizar(self):
> self.velocidad += 0.08
> self.y -= self.velocidad
> if self.y < -300:
> self.eliminar()
>
> class Enemigo1(pilasengine.actores.Actor):
> def iniciar(self):
> self.imagen = "Imagenes/kunai.png"
> self.x = pilas.azar(-1390, 1390) * 0.2
> self.y = 290
> self.velocidad = 10
> rectangulo = pilas.fisica.Rectangulo(
> 0, 0, 90, 40, sensor=True, dinamica=False)
> self.figura_de_colision = rectangulo
> def actualizar(self):
> self.velocidad += 0.08
> self.y -= self.velocidad
> if self.y < -300:
> self.eliminar()
> class Escena_Juego(pilasengine.escenas.Escena):
> def iniciar(self):
> self.Tex()
> self.pilas.actores.Actor_Principal()
> self.pilas.tareas.siempre(1, self.crear_un_actor_Nuez1)
> self.pilas.tareas.siempre(1, self.crear_un_actor_Nuez2)
> self.pilas.tareas.siempre(4, self.crear_un_actor_Enemigo)
> self.pilas.actores.Boton_Regresar()
> self.pilas.colisiones.agregar(
> 'Actor_Principal', 'Nuez1', self.colision1)
> self.pilas.colisiones.agregar(
> 'Actor_Principal', 'Nuez2', self.colision2)
> self.pilas.colisiones.agregar(
> 'Actor_Principal', 'Enemigo', self.colision5)
> def Tex(self):
> FondoJuego = pilas.fondos.Fondo()
> FondoJuego.imagen = pilas.imagenes.cargar("Imagenes/fondomenu.png")
> self.puntaje = pilas.actores.Puntaje(-20, 200,
> color=pilas.colores.Color(0, 204, 255))
> self.puntaje.escala = 1.5
> def crear_Principal1(self):
> self.pilas.actores.Actor_Principal()
> def crear_un_actor_Nuez1(self):
> self.pilas.actores.Nuez1()
> def crear_un_actor_Nuez2(self):
> self.pilas.actores.Nuez2()
> def crear_un_actor_Enemigo(self):
> self.pilas.actores.Enemigo()
> def regresar(self, evento):
> pilas.escenas.PantallaMenu()
>
> def colision1(self, Pr, Nue1):
> Nue1.eliminar()
> self.puntaje.aumentar(5)
> print(self.puntaje.valor)
> pilas.utils.interpolar(self.puntaje, 'escala',
> 1.5, duracion=0.5, tipo='elastico')
> self.puntaje.rotacion = random.randint(0, 60)
> self.puntaje.rotacion = [0], 0.6
> sonido_de_recolectar.reproducir()
> def colision2(self, Pr, Nue2):
> Nue2.eliminar()
> self.puntaje.aumentar(5)
> pilas.utils.interpolar(self.puntaje, 'escala',
> 1.5, duracion=0.5, tipo='elastico')
> self.puntaje.rotacion = random.randint(30, 60)
> self.puntaje.rotacion = [0], 0.6
> if self.puntaje.valor < 100:
> self.puntaje.aumentar(1)
> else:
> pilas.avisar("Haz Ganado!!!")
> Pr.eliminar()
> pilas.escena_actual().tareas.eliminar_todas()
> sonido_de_recolectar.reproducir()
> def colision5(self, Pr, Enem):
> Enem.eliminar()
> Pr.eliminar()
> pilas.escena_actual().tareas.eliminar_todas()
> t1 = pilas.actores.Texto("RECAUDASTE\n\n\n")
> t1.x = 20
> t1.y = 100
> t2 = pilas.actores.Texto("FIN DEL JUEGO")
> t2.x = 20
> t2.y = 0
> sonido_de_juego.detener()
> sonido_de_gameover.reproducir()
> class Escena_Juego1(pilasengine.escenas.Escena):
> def iniciar(self):
> self.Tex()
> self.pilas.actores.Actor_Principal()
> self.pilas.tareas.siempre(1, self.crear_un_actor_Nuez1)
> self.pilas.tareas.siempre(3, self.crear_un_actor_Nuez2)
> self.pilas.tareas.siempre(2, self.crear_un_actor_Enemigo1)
> self.pilas.actores.Boton_Regresar()
> self.pilas.colisiones.agregar(
> 'Actor_Principal', 'Nuez1', self.colision1)
> self.pilas.colisiones.agregar(
> 'Actor_Principal', 'Nuez2', self.colision2)
> self.pilas.colisiones.agregar(
> 'Actor_Principal', 'Enemigo1', self.colision6)
> self.pilas.colisiones.agregar(
> 'Actor_Principal', 'Enemigo', self.colision5)
>
> def Tex(self):
> FondoJuego = pilas.fondos.Fondo()
> FondoJuego.imagen = pilas.imagenes.cargar("Imagenes/fondodificil.png")
> self.puntaje = pilas.actores.Puntaje(-20, 200,
> color=pilas.colores.Color(0, 204, 255))
> self.puntaje.escala = 1.5
> def crear_Principal1(self):
> self.pilas.actores.Actor_Principal()
> def crear_un_actor_Nuez1(self):
> self.pilas.actores.Nuez1()
> def crear_un_actor_Nuez2(self):
> self.pilas.actores.Nuez2()
>
> def crear_un_actor_Enemigo1(self):
> self.pilas.actores.Enemigo1()
>
> def crear_un_actor_Enemigo(self):
> self.pilas.actores.Enemigo()
> def colision1(self, Pr, Nue1):
> Nue1.eliminar()
> self.puntaje.aumentar(1)
> print(self.puntaje.valor)
> pilas.utils.interpolar(self.puntaje, 'escala',
> 1.5, duracion=0.5, tipo='elastico')
> self.puntaje.rotacion = random.randint(0, 60)
> self.puntaje.rotacion = [0], 0.6
> sonido_de_recolectar.reproducir()
> def colision2(self, Pr, Nue2):
> Nue2.eliminar()
> self.puntaje.aumentar(1)
> pilas.utils.interpolar(self.puntaje, 'escala',
> 1.5, duracion=0.5, tipo='elastico')
> self.puntaje.rotacion = random.randint(30, 60)
> self.puntaje.rotacion = [0], 0.6
> if self.puntaje.valor < 10:
> self.puntaje.aumentar(1)
> else:
> pilas.avisar("Haz Ganado!!!")
> Pr.eliminar()
> pilas.escena_actual().tareas.eliminar_todas()
>
> sonido_de_recolectar.reproducir()
> def colision5(self, Pr, Enem):
> Enem.eliminar()
> pilas.utils.interpolar(self.puntaje, 'escala',
> 4.5, duracion=0.5, tipo='elastico')
> Pr.eliminar()
> pilas.escena_actual().tareas.eliminar_todas()
> t1 = pilas.actores.Texto("RECAUDASTE\n\n\n")
> t1.x = 20
> t1.y = 100
> t2 = pilas.actores.Texto("FIN DEL JUEGO")
> t2.x = 20
> t2.y = 0
> sonido_de_juego.detener()
> sonido_de_gameover.reproducir()
> def colision6(self, Pr, Enem):
> Enem.eliminar()
> pilas.utils.interpolar(self.puntaje, 'escala',
> 4.5, duracion=0.5, tipo='elastico')
> Pr.eliminar()
> pilas.escena_actual().tareas.eliminar_todas()
> t1 = pilas.actores.Texto("RECAUDASTE\n\n\n")
> t1.x = 20
> t1.y = 100
> t2 = pilas.actores.Texto("FIN DEL JUEGO")
> t2.x = 20
> t2.y = 0
> sonido_de_juego.detener()
> sonido_de_gameover.reproducir()
>
> pilas.escenas.vincular(EscenaMenu)
> pilas.escenas.vincular(Escena_Juego)
> pilas.escenas.vincular(Escena_Juego1)
> pilas.actores.vincular(Boton_Regresar)
> pilas.actores.vincular(Actor_Principal)
> pilas.actores.vincular(Nuez1)
> pilas.actores.vincular(Nuez2)
> pilas.actores.vincular(Nuez3)
> pilas.actores.vincular(Nuez4)
> pilas.actores.vincular(Enemigo)
> pilas.actores.vincular(Enemigo1)
> pilas.escenas.vincular(EscenaAyuda)
> pilas.escenas.vincular(Opcciones)
> pilas.escenas.EscenaMenu()
> pilas.ejecutar()
el menu seria asi
la ayuda seria asi
cuando das a jugar seria elegir entre dos niveles
facil:conseguir 100 puntos para ganar
difil:conseguir 50 para ganar
y este seria la pantalla del modo facil
y este del dificil
y eso seria todo el juego
gracias por la ayuda