Skip to content

v2.1.0

Latest

Choose a tag to compare

@Alfa-ao Alfa-ao released this 27 Jun 22:49

  • Главное дополнение: Изменение интерфейса и расположение кнопок.

    • Для возврата стандартного расположения кнопок, нужно:
    • Открыть скрипт LibreAlchemy\Scripts\Core\AlchemyConfig.lua
    • Изменить атрибут ENABLE_CUSTOM_LAYOUT = true на ENABLE_CUSTOM_LAYOUT = false и перезагрузить игру.
  • Lua:

    • Абсолютно вся скриптовая часть была переписана с нуля.
    • Использовано Объектно-Ориентированное Программирование (ООП), SOLID по возможности.
    • Контракты EventClassInterface.lua, SearchAlgorithmClassInterface.lua, WidgetClassInterface.lua
    • Сервис поиска AlchemySearchService разделен на логические составляющие и ответственность:
      • BacktrackingSearchAlgorithm - Алгоритм перебора сдвигов каждого барабана на основе сопоставление аспетков компонента с требуемых компонетов.
      • DrumShiftMapper - Создает карту всевозможных сдвигов для каждого барабана.
      • RecipeEvaluator - Отсекает худшие рецепты.
    • AlchemyWidgetManager - Регистратор виджетов с элементами управления. Он проверяет, что переданный объект реализует интерфейс WidgetClassInterface (используя InstanceOf).
      • WidgetRollsBar, WidgetOuText, WidgetDnD - каждый реализует свои дополнения и инициализирует их по запросу в логике.
  • Widgets:

    • Исправление недочётов. issues #1
  • Известные ошибки:

    1. При изменении масштаба интерфейса игры с минимального на стандартный после перезагрузки игры текст подсказки исчезает.
    • Причина: координаты подсказки становятся отрицательными, и при следующем входе в игру текст прячется за экраном. Лечится удалением Configs\LibreAlchemy\user.cfg.
    • Ответственность за это несет библиотека LibDnD.lua. Она должна обнулять (или корректировать) отрицательные координаты.