Download Programando con pilas Pilas programando con python

Document related concepts
no text concepts found
Transcript
Programando con pilas
Contenido
• 1 Pilas programando con python
♦ 1.1 Características técnicas
♦ 1.2 Paquetes necesarios para poder funcionar en Lihuen 4.01
♦ 1.3 Instalación
• 2 Creando una aplicación simple
♦ 2.1 Agregar las clases creadas en los directorios correctos
♦ 2.2 Agregar la importación de las clases
♦ 2.3 Enlaces de interés
Pilas programando con python
Pilas es un Framework para realizar juegos, el objetivo no es que sean expertos en vídeo juegos sino dar al alumno la posibilidad de aprender a
programar utilizando herramientas libres y lenguajes de programación que permitan motivarlo sin que piense específicamente las áreas especificas que
esta abarca como pueden ser :
*
*
*
*
*
*
Paradigmas de programación procedural.
Paradigmas de programación orientada a objetos.
Cálculos matemáticos.
Geometría.
Física.
Llamadas al sistema.
Con lo cual el alumno sólo tiene un objetivo aprender.
Características técnicas
• Es multiplataforma (Funciona sobre GNU/Linux y Windows)
• Cuenta con objetos prediseñados para agilizar el desarrollo.
• Documentación completamente en español.
• Se utiliza desde python, lo que permite usarla desde sesiones interactivas.
• Incluye interacción con el motor de física pybox2d.
• Es software libre.
• Cuenta con varios ejemplos y tutoriales para ir paso a paso.
Paquetes necesarios para poder funcionar en Lihuen 4.01
*
*
*
*
*
*
*
Python-qt4.
Python-opengl.
Python-sphinx.
Python-setuptools.
Python-box2d.
Python-pygame.
Mercurial(Para descarga Pila desde los repositorios).
Instalación
• Como root instalamos los paquetes:
#apt-get install python-qt4 python-opengl python-sphinx python-setuptools python-box2d python-pygame
• Descargamos pila como usuario:
$hg clone http://bitbucket.org/hugoruscitti/pilas
• Instalación
# cd pilas
# python setup.py install
Si en lugar de instalar la versión estable queremos probar la versión develop
# python setup.py develop
En la carpeta pilas se encuentra una lista de personajes ya diseñados y ejemplos correspondiente.
Para probar si funciona después de toda la instalación escribimos como usuario python para ir a la consola:
Si logramos esta parte ya tendremos pilas listo para ser utilizado.
Creamos un persona x y asignamos una imagen:
* imagen = pilas.imagenes.cargar("neptuno1.jpg")
* neptuno = pilas.actores.Actor(imagen)
vemos como funciona un simple actor:
Creando una aplicación simple
Vamos a crear un menú de presentación bien simple:
Extracción del manual:
import pilas
pilas.iniciar() ---> necesario para toda aplicación de pilas
pilas.fondos.Pasto() ? clase invocada para cambiar la escena fondo del menu
def iniciar_juego(): ? metodo que invoca ?inciar?
print "Tengo que iniciar el juego"
def salir_del_juego(): ? metodo q imprimi salir
print "Tengo que salir..."
pilas.actores.Menu( ? principalmente necesitamos esta sección para invocar a la creación
[
(?iniciar juego?, iniciar_juego),
(?salir?, salir_del_juego),
])
pilas.ejecutar() ? necesario para lanzar
es así como en base a este ejemplo diseñamos el menú para Lihuen y añadimos un juego de física donde un actor Lihuen tiene las propiedades de una
caja y un actor Windows7 las propiedades de una pelota.
1. Permite mostrar un menú con pilas y luego ejecutar la aplicación ejemplo sistemas.
import sys
import pilas
from pilas.escenas import Normal
pilas.iniciar()
class EscenaDeMenu(Normal):
def __init__(self):
Normal.__init__(self)
pilas.fondos.Lihuen()
opciones = [
('Iniciar menu Lihuen Edu', self.comenzar),
('Salir', self.salir)]
self.menu = pilas.actores.Menu(opciones)
def comenzar(self):
pilas.mundo.definir_escena(EscenaDeJuego())
def salir(self):
import sys
sys.exit(0)
class EscenaDeJuego(Normal):
def __init__(self):
Normal.__init__(self)
pilas.actores.CursorMano()
pilas.fondos.Lihuen()
lihuen = pilas.actores.Lihuen() * 10
lihuen.aprender(pilas.habilidades.Arrastrable)
windows = pilas.actores.Windows7() * 10
windows.aprender(pilas.habilidades.Arrastrable)
pilas.avisar("Use el puntero del mouse para arrastrar las figuras.")
pilas.eventos.pulsa_tecla.conectar(self.cuando_pulsa_tecla)
def cuando_pulsa_tecla(self, evento):
if evento.texto == u'q':
pilas.mundo.definir_escena(EscenaDeMenu())
pilas.mundo.definir_escena(EscenaDeMenu())
pilas.ejecutar()
Para llevar al cabo algunas de estas tareas es necesario editar un poco algunos archivos para que el framework levante todo la aplicación sin
problemas.
Empecemos:
• Escribir las clases necesarias.
• Agregar las clases creadas en los directorios correctos.
• Agregar la importación de las clases.
• Reescribir el código necesario para el funcionamiento.
• Importar los archivos necesarios.
Agregar las clases creadas en los directorios correctos
En el directorio pilas/pilas/actores agregamos las clases necesarias:
Agregar la importación de las clases
Las imágenes para los actores pilas/pilas/data luego necesitamos editar __init__.py en actores para que el framework las reconozca entonces
agregamos
from lihuen import Lihuen
from windows7 import Windows7
hacemos lo mismo para fondos
vemos que agregamos un fondo llamado Lihuen, las imágenes para fondos deben ir en pilas/pilas/data/fondos. Vídeo con el ejemplo mostrado
anteriormente.
Lo sentimos, pero tu navegador tiene JavaScript inhabilitado o no tiene ningún reproductor compatible instalado.
Puedes descargar el clip o descargar un reproductor para poder ver el vídeo en tu navegador.
Todo lo realizado aquí ha sido a partir de la guía didáctica de los desarrolladores de pile-engine.
Enlaces de interés
Página oficial
Prototipo de prueba
Sitio para bajarse la última versión