martes, 2 de abril de 2019

Plataformas

COMENTARIO DEL CÓDIGO DE PLATAFORMAS.

import pilasengine  -Este código importa todo el modulo de pilasengine. -
pilas = pilasengine.iniciar( ) -Este, indica el comienzo del programa de pilasengine.-
pilas.reiniciar_si_cambia(__file__)
mapa = pilas.actores.MapaTiled('plataformas.tmx', densidad=0, -Instrucciones que modifican el      restitucion=0, friccion=0, amortiguacion=0)                                  fondo.-
                                                                                          
caja= pilas.actores.Caja()  -Importa el actor llamado caja.-
caja.aprender('arrastrable') -Permite la habilidad de arrastrar al actor caja.-

pilas.fondos.Tarde() -Esta linea indica que el fondo sea Tarde.

class Protagonista(pilasengine.actores.Actor):  -Este código creara una nueva clase llamada Protagonista la cual poseerá atributos.-
   def iniciar(self):  -Esta Función creara el actor aceituna.-
   self.imagen = "aceituna.png" -Indicamos la imagen que se usara para el actor.-
   self.figura= pilas.fisica.Circulo(self.x,self.y,17) -Esta linea indica que la física del actor de la aceituna sera un circulo.-
   self.figura.sin_rotacion= True -Afirmamos que el actor no tendrá el atributo de rotación.-
   self.escala_de_gravedad=2  -Indicamos que tendrá de valor 2 de gravedad.-  
   self.sensor_pies=pilas.fisica.Rectangulo(self.x, self.y, 20, sensor=True, dinamica=False)
   -Instrucción para que el actor al tocar el suelo, este tenga la física del rectángulo.-

 def actualizar(self):
   velocidad=10 -Le indicamos una velocidad de valor 10.-
   salto=15 -Le indicamos también un salto de valor 15.-
   self.x=self.figura.x -Instrucción para igualar la x y la y.-
   self.y=self.figura.y
 if self.pilas.control.derecha:
   self.figura.velocidad_x=velocidad -Indicamos que la x tome el valor de velocidad.-
   self.rotacion-=velocidad  
 elif self.pilas.control.izquierda:
   self.figura.velocidad_x=-velocidad -Indicamos que la x tome el valor de velocidad.-
   self.rotacion+=velocidad -Instrucción para que la rotación se incremente con el valor de la velocidad.-
 else:
   self.figura.velocidad_x=0   -Indicamos que la x de la velocidad toma valor de 0 y se pare.-
 if self.si_esta_pisando_suelo(): -Condición para cuando el actor este en el suelo
   if self.pilas.control.arriba and (int(self.figura.velocidad_y))<=0:
     self.figura.impulsar(0,salto)  -Indicamos que si la velocidad es negativa y pulsamos para impulsar, la figura se impulsa.-
self.sensor_pies.x=self.x  -Instrucción para que valor x del sensor de pies tenga el valor x .-
self.sensor_pies.y=self.y-20  -Instrucción para que el valor y del sensor de pies tenga el valor y 20.-

 if self.si_esta_pisando_suelo(): -Condición para cuando el actor este en el suelo-.
  self.imagen= "aceituna.png" -Indicamos que si esta pisando , introduzca la imagen aceituna.-
 else:
  self.imagen="aceituna_risa.png" -Sino, introduzca la imagen aceituna sonriendo.-

 def si_esta_pisando_suelo(self): -Creamos una función para que el actor pueda pisar el suelo.-
   return len(self.sensor_pies.figuras_en_contacto)>0

#Programa Principal
pilas.actores.vincular(Protagonista) -Unión del actor con la clase protagonista.-
Oriol=pilas.actores.Protagonista() -Indicamos que el actor se llama Oriol.-
pilas.ejecutar() -Indicamos que se ejecute todo el programa pilasengine.-

No hay comentarios:

Publicar un comentario