pilasengine.habilidades

Submódulos

pilasengine.habilidades.arrastrable

class pilasengine.habilidades.arrastrable.Arrastrable(pilas)

Clases base: pilasengine.habilidades.habilidad.Habilidad

arrastrando(evento)
iniciar(receptor)
intentar_arrastrar()
intentar_capturar_figura()
termina_de_arrastrar(evento)

pilasengine.habilidades.aumentar_con_rueda

class pilasengine.habilidades.aumentar_con_rueda.AumentarConRueda(pilas)

Clases base: pilasengine.habilidades.habilidad.Habilidad

cambiar_de_escala(evento)
iniciar(receptor)

pilasengine.habilidades.disparar

class pilasengine.habilidades.disparar.Disparar(pilas)

Clases base: pilasengine.habilidades.habilidad.Habilidad

Establece la habilidad de poder disparar un Actor o un objeto de tipo pilas.municion.Municion.

actualizar()
definir_colision(grupo_enemigos, cuando_elimina_enemigo)
disparar()
eliminar()
frecuencia_de_disparo

Número de disparos por segundo.

get_frecuencia_de_disparo()
get_municion()
iniciar(receptor, municion='Bala', parametros_municion={}, grupo_enemigos=[], cuando_elimina_enemigo=None, frecuencia_de_disparo=10, angulo_salida_disparo=0, distancia=0, offset_origen_actor=(0, 0), cuando_dispara=None, escala=1, rotacion_disparo=90, control='control.boton')

Construye la habilidad.

Parámetros:
  • municion – Municion o Actor que se disparará.
  • grupo_enemigos – Actores que son considerados enemigos y con los que colisionará la munición disparada.
  • cuando_elimina_enemigo – Método que será llamado cuando se produzca un impacto con un enemigo.
  • frecuencia_de_disparo – El número de disparos por segundo que realizará.
  • angulo_salida_disparo – Especifica el angulo por donde saldrá el disparo efectuado por el Actor.
  • rotacion_disparo – Rotacion del actor que representara el disparo.
  • distancia – Distancia que deben tener los disparos con respecto al actor.
  • offset_origen_actor – Si el Actor no tiene su origen en el centro, con este parametro podremos colocar correctamente el disparo.
  • cuando_dispara – Metodo que será llamado cuando se produzca un disparo.
  • escala – Escala de los actores que serán disparados.
  • control – Indica los controles que utiliza el actor para saber cuando pulsa el botón de disparar.
Example:
>>> mono = pilas.actores.Mono()
>>> mono.aprender(pilas.habilidades.Disparar,
>>>               municion=pilas.actores.proyectil.Bala,
>>>               grupo_enemigos=enemigos,
>>>               cuando_elimina_enemigo=eliminar_enemigo)
municion

Establece el tipo de municion que dispara.

pulsa_disparar()
set_frecuencia_de_disparo(valor)
set_municion(valor)
class pilasengine.habilidades.disparar.DispararConClick(pilas)

Clases base: pilasengine.habilidades.disparar.Disparar

Establece la habilidad de poder disparar un Actor o un objeto de tipo pilas.municion.Municion.

cuando_hace_click(evento)
cuando_termina_click(evento)
iniciar(receptor, municion='Bala', parametros_municion={}, grupo_enemigos=[], cuando_elimina_enemigo=None, frecuencia_de_disparo=10, angulo_salida_disparo=0, distancia=0, offset_origen_actor=(0, 0), cuando_dispara=None, escala=1, rotacion_disparo=90, control=None)
pulsa_disparar()

pilasengine.habilidades.eliminarse_si_sale_de_pantalla

class pilasengine.habilidades.eliminarse_si_sale_de_pantalla.EliminarseSiSaleDePantalla(pilas)

Clases base: pilasengine.habilidades.habilidad.Habilidad

Se asegura de que el actor sea eliminado si sale de los bordes de la pantalla.

actualizar()
eliminar_actor()
iniciar(receptor)
Parámetros:receptor – El actor que aprenderá la habilidad.

pilasengine.habilidades.habilidad

class pilasengine.habilidades.habilidad.Habilidad(pilas)

Clases base: object

Representa una habilidad que los actores pueden aprender

actualizar()
eliminar()
iniciar(receptor)

pilasengine.habilidades.imitar

class pilasengine.habilidades.imitar.Imitar(pilas)

Clases base: pilasengine.habilidades.habilidad.Habilidad

Logra que el actor imite las propiedades de otro.

actualizar()
eliminar()
imitar()
iniciar(receptor, objeto_a_imitar, con_escala=True, con_rotacion=True)

Inicializa la habilidad.

Parámetros:
  • receptor – Referencia al actor.
  • objeto_a_imitar – Cualquier objeto con atributos rotacion, x e y (por ejemplo otro actor).
  • con_rotacion – Si debe imitar o no la rotación.

pilasengine.habilidades.limitado_a_bordes_de_pantalla

class pilasengine.habilidades.limitado_a_bordes_de_pantalla.LimitadoABordesDePantalla(pilas)

Clases base: pilasengine.habilidades.se_mantiene_en_pantalla.SeMantieneEnPantalla

Se asegura de que el actor no pueda salir por los bordes de la pantalla.

iniciar(receptor)
Parámetros:receptor – El actor que aprenderá la habilidad.

pilasengine.habilidades.mirar_al_actor

class pilasengine.habilidades.mirar_al_actor.MirarAlActor(pilas)

Clases base: pilasengine.habilidades.habilidad.Habilidad

“Hace que un actor rote para mirar hacia otro actor.

iniciar(receptor, actor_a_seguir, lado_seguimiento='ARRIBA')

Inicializa la habilidad.

Parámetros:receptor – Actor que aprenderá la habilidad.

:param actor_a_seguir : Actor al que se desea seguir con la mirada. :param lado_seguimiento: Establece el lado del actor que rotará para

estar encarado hacia el actor que desea vigilar.
rotar(evento)

pilasengine.habilidades.moverse_como_coche

class pilasengine.habilidades.moverse_como_coche.MoverseComoCoche(pilas)

Clases base: pilasengine.habilidades.moverse_con_el_teclado.MoverseConElTeclado

Hace que un actor se mueva como un coche.

get_rozamiento()
get_velocidad_maxima()
iniciar(receptor, control=None, velocidad_maxima=4, aceleracion=0.06, deceleracion=0.1, rozamiento=0, velocidad_rotacion=1, marcha_atras=True)
rozamiento

Define el rozamiento del coche con la superficie por donde circula.

set_rozamiento(nivel_rozamiento)
set_velocidad_maxima(velocidad)

pilasengine.habilidades.moverse_con_el_teclado

class pilasengine.habilidades.moverse_con_el_teclado.MoverseConElTeclado(pilas)

Clases base: pilasengine.habilidades.habilidad.Habilidad

Hace que un actor cambie de posición con pulsar el teclado.

aceleracion

Define la acelaracion.

actualizar()
avanzar(delta)
decelerar()
get_aceleracion()
get_velocidad_maxima()
iniciar(receptor, control=None, direcciones=8, velocidad_maxima=4, aceleracion=1, deceleracion=0.1, con_rotacion=False, velocidad_rotacion=1, marcha_atras=True)

Inicializa la habilidad.

Parámetros:
  • receptor – Referencia al actor que aprenderá la habilidad.
  • control – Control al que va a responder para mover el Actor.
  • direcciones – Establece si puede mover en cualquier direccion o unicamente en 4 direcciones arriba, abajo, izquierda y derecha. El parametro con_rotacion establece las direcciones a 8 direcciones siempre.
  • velocidad_maxima – Velocidad maxima en pixeles a la que se moverá el Actor.
  • aceleracion – Indica lo rapido que acelera el actor hasta su velocidad máxima.
  • deceleracion – Indica lo rapido que decelera el actor hasta parar.
  • con_rotacion – Si deseas que el actor rote pulsando las teclas de izquierda y derecha.
  • velocidad_rotacion – Indica lo rapido que rota un actor sobre si mismo.
  • marcha_atras – Posibilidad de ir hacia atrás. (True o False)
mover()
mover_con_rotacion()
set_aceleracion(aceleracion)
set_velocidad_maxima(velocidad)
velocidad_maxima

Define la velocidad maxima.

pilasengine.habilidades.puede_explotar

class pilasengine.habilidades.puede_explotar.PuedeExplotar(pilas)

Clases base: pilasengine.habilidades.habilidad.Habilidad

Hace que un actor se pueda hacer explotar invocando al metodo eliminar.

crear_explosion()
eliminar_y_explotar()
iniciar(receptor)

pilasengine.habilidades.puede_explotar_con_humo

class pilasengine.habilidades.puede_explotar_con_humo.PuedeExplotarConHumo(pilas)

Clases base: pilasengine.habilidades.puede_explotar.PuedeExplotar

Hace que un actor se pueda hacer explotar invocando al metodo eliminar.

crear_explosion()

pilasengine.habilidades.rebotar_como_caja

class pilasengine.habilidades.rebotar_como_caja.RebotarComoCaja(pilas)

Clases base: pilasengine.habilidades.habilidad.Habilidad

Le indica al actor que rebote y colisiones como una caja cuadrada.

>>> un_actor = pilas.actores.Aceituna()
>>> un_actor.aprender(pilas.habilidades.RebotarComoPelota)
eliminar()
iniciar(receptor)

pilasengine.habilidades.rebotar_como_pelota

class pilasengine.habilidades.rebotar_como_pelota.RebotarComoPelota(pilas)

Clases base: pilasengine.habilidades.habilidad.Habilidad

Le indica al actor que rebote y colisiones como una pelota.

>>> un_actor = pilas.actores.Aceituna()
>>> un_actor.aprender(pilas.habilidades.RebotarComoPelota)
eliminar()
empujar(dx, dy)
impulsar(dx, dy)
iniciar(receptor)

pilasengine.habilidades.rotar_con_mouse

class pilasengine.habilidades.rotar_con_mouse.RotarConMouse(pilas)

Clases base: pilasengine.habilidades.habilidad.Habilidad

“Hace que un actor rote con respecto a la posicion del mouse.

Ejemplo:

>>> actor.aprender(pilas.habilidades.RotarConMouse,
                   lado_seguimiento='ABAJO')
iniciar(receptor, lado_seguimiento='ARRIBA')

Inicializa la Habilidad

Parámetros:
  • receptor – La referencia al actor.
  • lado_seguimiento – Establece el lado del actor que rotará para estar encarado hacia el puntero del mouse.
rotar(evento)
se_movio_el_mouse(evento)

pilasengine.habilidades.se_mantiene_en_pantalla

class pilasengine.habilidades.se_mantiene_en_pantalla.SeMantieneEnPantalla(pilas)

Clases base: pilasengine.habilidades.habilidad.Habilidad

Se asegura de que el actor regrese a la pantalla si sale o que no salga en nigún momento de la pantalla.

Si el actor sale por la derecha de la pantalla, entonces regresa por la izquiera. Si sale por arriba regresa por abajo y asi...

actualizar()
iniciar(receptor, permitir_salida=True)
Parámetros:
  • receptor – El actor que aprenderá la habilidad.
  • permitir_salida – Valor booleano que establece si el actor puede salir por los lados de la ventana y regresar por el lado opuesto. Si se establece a False, el actor no puede salir de la ventana en ningún momento.

pilasengine.habilidades.seguir_al_mouse

class pilasengine.habilidades.seguir_al_mouse.SeguirAlMouse(pilas)

Clases base: pilasengine.habilidades.habilidad.Habilidad

Hace que un actor siga la posición del mouse en todo momento.

iniciar(receptor)
mover(evento)

pilasengine.habilidades.seguir_clicks

class pilasengine.habilidades.seguir_clicks.SeguirClicks(pilas)

Clases base: pilasengine.habilidades.habilidad.Habilidad

iniciar(receptor)
moverse_a_este_punto(evento)

pilasengine.habilidades.siempre_en_el_centro

class pilasengine.habilidades.siempre_en_el_centro.SiempreEnElCentro(pilas)

Clases base: pilasengine.habilidades.habilidad.Habilidad

Hace que un actor siempre esté en el centro de la camara y la desplace cuando el actor se desplaza.

actualizar()

Contenido del módulo

class pilasengine.habilidades.Habilidades

Clases base: object

Representa la forma de acceso y construcción de las habilidades.

Esta clase representa el objeto creado por pilas que se puede acceder escribiendo pilas.habilidades. Desde aquí se puede acceder a las habilidades pre-diseñadas de pilas y ‘enseñarselas’ a los actores.

Por ejemplo, para ‘enseñar’ una habilidad:

>>> nave = pilas.actores.Nave()
>>> nave.aprender(pilas.habilidades.Arrastrable)
Arrastrable
AumentarConRueda
Disparar
DispararConClick
EliminarseSiSaleDePantalla
Habilidad
Imitar
LimitadoABordesDePantalla
MirarAlActor
MoverseComoCoche
MoverseConElTeclado
PuedeExplotar
PuedeExplotarConHumo
RebotarComoCaja
RebotarComoPelota
RotarConMouse
SeMantieneEnPantalla
SeguirAlMouse
SeguirClicks
SiempreEnElCentro
buscar_habilidad_por_nombre(nombre)
vincular(clase_del_comportamiento)
class pilasengine.habilidades.ProxyHabilidades(habilidades)

Clases base: object

Implementa un intermediario con todas las habilidades del Actor.