Aspectos importantes a tener en cuenta al actualizar:
- Las reglas de scope han cambiado: (A) al añadir objetos al scope mediante un array add_to_scope ya no se añadirán los elementos secundarios de los objetos especificados, y (B) al añadir objetos mediante un procedimiento add_to_scope que llame a PlaceInScope ya no se comprueba la propiedad add_to_scope de los objetos añadidos. Si utiliza add_to_scope y/o PlaceInScope, asegúrate de comprobar que los objetos que deben estar en el scope siguen estando en él tras la actualización de la biblioteca.
- La compatibilidad con add_to_scope ahora es opcional (está habilitada a menos que se defina la constante OPTIONAL_NO_ADD_TO_SCOPE). Los proyectos existentes no se ven afectados, pero minimal.inf ahora está configurado por defecto sin compatibilidad con la propiedad add_to_scope.
Cambios específicos de la versión española:
- Corregir error al escribir 'ir' a secas (gracias DareInt).
- Correcciones de errores de parseado y warnings de compilación al usar V4 en español.
- Cambiado verbo de opción "interesantes" al final de una aventura por el más usual "curiosidades".
- Corregido error que impedía que se pudiera usar tanto "reinicia" como "reiniciar" en V3, V4 y V5.
Cambios heredados de PunyInform v6.7:
Funcionalidades nuevas o modificadas:
- Se ha hecho opcional la compatibilidad con add_to_scope, regulada por la constante OPTIONAL_NO_ADD_TO_SCOPE.
- Se ha mejorado la compatibilidad con otras liberías, para las extensiones menu, talk_menu y cheap_scenery.
Optimizaciones:
- Se han optimizado algunas rutinas de scope.
- Se ha optimizado la coincidencia de nombres en la extensión cheap scenery.
- Se ha mejorado el almacenamiento de texto en Library of Horror.
Correcciones de errores:
- Se ha corregido un error: add_to_scope, al utilizar un array, también añadía los hijos de todos los objetos. Esto difería de DM4 y de la biblioteca estándar.
- Error corregido: add_to_scope, al utilizar un procedimiento que añadía objetos con PlaceInScope, también comprobaba add_to_scope para los objetos añadidos. Esto difería de DM4 y de la biblioteca estándar.
- Se han recuperado muchos mensajes del verbo de depuración ROUTINES, que se habían perdido en las versiones z5+ de PunyInform v6.5.
- El verbo de depuración «purloin» no establecía scope_modified, por lo que el elemento sustraído podía acabar quedando fuera del ámbito.
- Se han mejorado las comprobaciones para "curiosidades".
- Se ha corregido un error: la extensión cheap_scenery podía intentar imprimir CS_DEFAULT_MSG como una cadena incluso si se trataba de una rutina.