inicio | documentación | contacto
Version para imprimir Imprimir
Inicio » Documentación » El listado de objetos y el inventario

El listado de objetos y el inventario

El listado de objetos

Las localidades listan todos los objetos de manera automática al entrar o mirar dentro de ellas. Este listado es simplemente una enumeración del nombre de cada objeto separados por comas. Con los métodos alListar y alListarEspecial es posible modificar el comportamiento de este listado.

Los métodos alListar y alListarEspecial son incompatibles entre sí. Si se indican las dos, tiene preferencia alListarEspecial sobre alListar.

Modificando el nombre de un objeto al listar

El método alListar permite definir un nuevo nombre al objeto que solo será mostrado en los listados de objetos. En el ejemplo anterior, el boli aparecería listado junto con los demás objetos, así:

Puedes ver un mechero, un boli y una cama.

Pero si modificamos el objeto boli, añadiendo el método alListar :

object Boli dentro:Habitacion
    ...
    def alListar: "tu boli preferido" 
endobject

Al mirar la localidad, el listado de objetos ahora será así:

Puedes ver un mechero, tu boli preferido y una cama.

Descripciones especiales al listar

Imagina que quieres hacer una mención especial al boli y no deseas que sea listado con el resto de objetos como si fuera un objeto más, sino que quieres que tenga su propia descripción aparte que el jugador podrá leer cuando se encuentre este objeto por ahí. Podemos definir el método alListarEspecial con este texto especial, el cual será mostrado de manera independiente del resto de objetos listados.

En el ejemplo anterior, el mechero aparecería listado junto con los demás objetos, así:

Puedes ver un mechero, un boli y una cama.

Pero si modificamos el objeto mechero, añadiendo el método alListarEspecial :

object Mechero dentro:Habitacion
    ...
    def alListarEspecial: "Tu mechero preferido está aquí, ¡qué suerte!" 
endobject

Al mirar la localidad, el listado de objetos ahora será así:

Tu boli preferido está aquí, ¡qué suerte!
Puedes ver un boli y una cama.

Inventario

El inventario es un listado con todos los objetos que posee el jugador que aparece como resultado de la orden inventario o i (acción Inventario). Este listado es simplemente una enumeración del nombre de cada objeto poseído separados por comas o por líneas, dependiendo de si es inventario ancho o estrecho. Con los métodos alListarInventario y alListarInventarioEspecial es posible modificar el comportamiento de este listado.

Los métodos alListarInventario y alListarInventarioEspecial son incompatibles entre sí. Si se indican las dos, tiene preferencia alListarInventarioEspecial sobre alListarInventario

Formatos de inventario

inventario estrecho o i estrecho lista los objetos separados en distintas líneas.

>> i estrecho
Llevas:
    un mechero
    una pelota
    un boli

inventario ancho o i ancho lista los objetos en una única línea todos seguidos.

>> i ancho
Llevas un mechero, una pelota y un boli.

Inicialmente se utiliza el inventario estrecho. Si se cambia de un formato a otro, el sistema recuerda cual es, por lo que las siguientes veces lo mostrará de la última manera elegida.

Modificando el nombre en el inventario

Cuando hemos cogido un objeto, este aparecerá en el inventario junto con el resto de objetos. Si añadimos el método alListarInventario podemos cambiar este nombre.

Siguiendo con el ejemplo del capítulo anterior, supongamos que hemos cogido el mechero y el boli. Si hacemos inventario con i, obtendremos un listado como sigue

>> i
Llevas:
    un mechero
    un boli

Pero si modificamos el objeto boli, añadiendo el método alListarInventario :

object Boli dentro:Habitacion
    ...
    def alListarInventario: "tu boli preferido" 
endobject

El inventario aparecerá ahora así:

>> i
Llevas:
    un mechero
    tu boli preferido

Descripciones especiales en el inventario

Si no deseas que un objeto sea listado con el resto del inventario, sino que quieres que tenga su propia descripción aparte, podemos usar el método alListarInventarioEspecial. Esta método funciona de manera análoga a alListarEspecial, pero durante el inventario.

Siguiendo con el ejemplo del capítulo anterior, supongamos que hemos cogido el mechero y el boli. Si hacemos inventario con i, obtendremos un listado como sigue

>> i
Llevas:
    un mechero
    un boli

Pero si modificamos el objeto boli, añadiendo el método alListarInventarioEspecial :

object Boli dentro:Habitacion
    ...
    def alListarInventarioEspecial: "Tienes tu boli preferido bien guardado." 
endobject

El inventario aparecerá ahora así:

>> i
Tienes tu boli preferido bien guardado.
Además llevas:
    un mechero

Ejemplo completo

En esto ejemplo, tenemos cuatro objetos en una habitación.

  • El boli tiene una descripción en alListarEspecial y alListarInventarioEspecial por lo que tiene su propia descripción, al margen del resto, cuando se lista con los objetos de la localidad y cuando aparece en el inventario.
  • La pelota tiene la misma descripción en alListar y alListarInventario por lo que tiene un nombre distinto en el listado y en el inventario, pero sigue apareciendo junto con el resto de objetos.
Copiar | Descargar
include system/default

object Main:MainBase
    def start
        Estado.jugador = McAventura
        #jugador.accion(Mirar)
    end
endobject

/**
* El objeto jugador
*/
object McAventura:Personaje dentro:Habitacion
    nombre MS:Mc Aventura
    def alMirar: "Eres Mc Aventura, el protagonista de esta historia."
endobject

/**
* Localidades
*/
object Habitacion:Localidad
    nombre MS:Habitación
    def alMirar: "Estás en tu habitación, cálida y soleada, de donde parten tus primeros recuerdos."
endobject

/**
* Objetos por el suelo
*/
object Mechero dentro:Habitacion
    nombre MS:mechero
    def alMirar: "Es un mechero de color rojo."
endobject

object Vaso dentro:Habitacion
    nombre MS:vaso
    def alMirar: "Es un vaso de cristal."
endobject

object Pelota dentro:Habitacion
    nombre FS:pelota
    def alMirar: "Es una pelota azul."
    def alListar, alListarInventario: "una maldita pelota azul"
endobject

object Boli dentro:Habitacion
    nombre MS:boli
    def alMirar: "Es un boli de plástico, un poco gastado y mordisqueado."
    def alListarEspecial: "Tu boli de la suerte está aquí, ¡qué suerte!"
    def alListarInventarioEspecial: "Tienes tu boli preferido bien guardado."
endobject
Archivo: system/repositorio/!4-1-Listando objetos.k | Abrir el repositorio de ejemplos

Una salida al coger los objetos y listarlos por el inventario:

Habitación
Estás en tu habitación, cálida y soleada, de donde parten tus primeros recuerdos.

Salidas posibles: ninguna.
Tu boli de la suerte está aquí, ¡qué suerte!
Puedes ver un mechero, un vaso y una maldita pelota azul.

>> coger todo
Coges el mechero, el vaso, la pelota y el boli.

>> i
Tienes tu boli preferido bien guardado.
Además llevas:
   un mechero
   un vaso
   una maldita pelota azul

>> i ancho
Tienes tu boli preferido bien guardado.
Además llevas un mechero, un vaso y una maldita pelota azul.

>> dejar todo
Dejas el mechero, el vaso, la pelota y el boli.

Fíjate como la pelota muestra su nombre nuevo "una maldita pelota azul" al listar el inventario y en la localidad al mirar. Y el boli aparece apartado del resto cuando es listado, con su descripción completa aparte. Sin embargo, los dos conservan su nombre original, como el resto de objetos, cuando se muestra su nombre como resultado de una acción (por ejemplo, al coger y al dejar).

Resumen

Hemos visto que el sistema lista automáticamente los objetos que hay en el suelo al entrar o mirar en una localidad.

El conjunto de objetos que tenemos en nuestra posesión se llama inventario y tiene dos formatos que se pueden ver con i, i estrecho o i ancho.

Sabemos que es posible modificar el listado de objetos y del inventario con los métodos alListar, alListarEspecial, alListarInventario y alListarInventarioEspecial

xModifica solo el nombreInserta una sección propia
Listado automático de
objetos de una localidad
alListaralListarEspecial
Al hacer inventarioalListarInventarioalListarInventarioEspecial
Anterior Objetos por el suelo y decoradoSiguiente Nombres, sinonimos, genero y numero de los objetos
Última modificación: miércoles 14 de mayo de 2008 9:58:34
Fecha de creación: miércoles 23 de abril de 2008 14:48:09
Categorías: