В общем, да, я потратил вечер на то, чтобы чуть почистить скрипт от использования тысяч тонн глобальных переменных. Теперь используется всего одна, $game_temp, которая как раз для подобных мелочей и нужна. В принципе, разницы в использовании скрипта нет, новая версия совместима с предыдущей.
Вынес в два отдельных скрипта аддон и фикс.
Аддон по имени Show Book добавляет возможность просматривать содержимое книги не из меню "Книги", а прямо из инвентаря. Что удобно, если это меню отключено и убрано. Также вы сможете из инвентаря читать книги, которые не добавились в "библиотеку". Таким образом вы сможете добавлять в библиотеку только книги, а всякие там мелкие записки оставлять в инвентаре.
Прямо перед публикацией добавил также возврат из книги в инвентарь. Теперь после прочтения книги из инвентаря вы вернетесь обратно в инвентарь в то же место. То есть в категорию "Книги", при этом будет выбрана та книга, которую вы только что читали. Это удобно, если нужно просмотреть подряд несколько книг/записок.
Для работы аддона всем книжкам в базе данных надо будет назначить тег, но об этом подробнее написано в инструкции в аддону.
Фикс по имени "Show Book + Szyu Craft Fix" нужно устанавливать
только в том случае, если вы используете скрипт Crafting System от Szyu. Я так и не придумал, как обеспечить совместимость с ним каким-то другим способом, тем более, что автор не поддерживает использование $imported, так что пусть будет так.
Ссылка на демку:
yadi.sk/d/0aeyrNu3nP8Em
Синдер, перед заливкой в первый пост прошу проверить и вернуть туда разные windowskin, а то я вот только в последний момент об этом вспомнил.