Herramientas de usuario

Herramientas del sitio


uso_del_lenguaje_beanshell

Uso del lenguaje BeanShell

Los formularios de PUCK, como los vistos en el capítulo anterior, proporcionan una manera sencilla de construir un mundo con diferentes localizaciones y objetos que los jugadores puedan manipular; sin necesidad de escribir código en ningún lenguaje de programación. Sin embargo, si queremos conseguir mundos complejos donde las entidades exhiban comportamientos dinámicos y donde podamos definir acciones personalizadas que vayan más allá de los comportamientos por defecto, sí que necesitaremos programar.

Para estas definiciones de comportamientos complejos que requieren programación, AGE utiliza el lenguaje BeanShell. BeanShell es un lenguaje de scripting muy parecido a Java. De hecho, la sintaxis de Java se puede utilizar tal cual en BeanShell; pero éste además permite usar variables con tipado dinámico y tiene otras características donde “relaja” los requisitos de Java.

Para añadir código BeanShell a un mundo con PUCK, se puede ir a la pestaña “Código y Propiedades” de cualquier entidad (las entidades son los objetos del mundo representados por iconos que añadimos en el mapa de PUCK, como habitaciones, cosas y criaturas) o bien del propio mundo, y nos aparecerá un área de texto (con un botón “Ampliar” que la convierte en una ventana independiente) para introducir el código. AGE es un sistema orientado a objetos, de modo que el código que modifique el comportamiento de una entidad determinada deberá introducirse en el campo de código de esa entidad. El campo de código del mundo permite hacer modificaciones más globales en el comportamiento de la aventura.

A lo largo de las secciones de este capítulo veremos una introducción a cómo programar en BeanShell para crear aventuras en AGE. Esta información se ampliará en subsiguientes capítulos, donde la entremezclaremos con más cosas que se pueden hacer en los formularios de PUCK; ya que ambas cosas no son independientes sino que hay aspectos de PUCK que hacen uso o interactúan con el código BeanShell, haciendo necesario tratarlas de forma entrelazada.

uso_del_lenguaje_beanshell.txt · Última modificación: 2011/03/13 00:17 por al-khwarizmi