Monday, March 25, 2019

Mientras tanto, en Plutón...

Seguimos con el análisis de la definición de objetos que empezamos en la anterior entrada. En esta ocasión veremos los atributos más "normales" que no estaban en la versión primitiva del motor, dejando la definición de acciones y disparadores para la próxima entrada.

Esta es CASI mi forma final

La clase gameItem tiene un pié puesto en la versión final, con la excepción de un par de atributos relacionados con el ruido que puede hacer un objeto y una posible revisión de cómo funciona el empujar, tirar y mover objetos, claro.
  • inventariable. Un valor booleano que indica si el objeto puede ser añadido al inventario del jugador.
  • movable, pushable, pullable. Valores booleanos que indican si un objeto si el jugador puede tirar de un objeto, empujarlo o moverlo. Actualmente movable no se utiliza y pushable y pullable se usan como condición necesaria para ejecutar las acciones "empujar" y "tirar".
  • weight. Un valor entero que indica el peso del objeto. A efectos prácticos el peso indica el espacio que el objeto ocupa en el inventario, de modo que el jugador no podrá llevar en su inventario objetos cuyo peso supere el límite de inventario definido en adventure.json.
  • lightSource. Un valor entero que indica el nivel de luz emitido por el objeto. Pueden echarle un vistazo al funcionamiento de las fuentes de luz en esta entrada de la serie.
  • noisy, noiseDescription. Actualmente pendientes de implementación. La idea es que el atributo noisy indique si el objeto hace ruido y noiseDescription se añada a la descripción de la localización si hay un objeto ruidoso en la localización o en una localización adyacente.
  • visibility. Un valor entero que indica el valor mínimo que deben tener las fuentes de luz presentes en la localización para que el personaje pueda ver el objeto. El jugador no podrá interactuar con aquellos objetos que no pueda ver.
  • image, largeImage. Los nombres de los archivos de imagen que se usarán en las listas de objetos de inventario y de objetos en la localización actual en el caso de image o en la vista de detalle del objeto a pantalla completa, si se usa, en el caso de largeImage.
  • implicit. El funcionamiento del atributo implicit se explicó en la primera entrada de esta serie. Los objetos implícitos serán aquellos que forman parte del inventario del personaje, pero no ocupan espacio, no se muestran en el panel de objetos de inventario -ya hablaremos sobre este panel cuando lleguemos a la interfaz de usuario- y el personaje no podrá interactuar con ellos de la misma manera que con los objetos no implícitos.
Como ven, nada demasiado complicado. Por ahora.

No comments: