Перейти к содержимому

Устранение неполадок

На этой странице описаны наиболее распространенные проблемы при настройке и запуске локальных скриптов Melonity.


Скрипт компилируется, но не отображается в Melonity.

Наиболее распространенной причиной является неправильный путь вывода сборки.

Проверьте следующее:

  • webpack.config.js записывает выходной файл в папку scripts Melonity
  • сгенерированный .js файл действительно появляется в этой папке после пересборки
  • Settings -> Scripts -> Load local scripts включен
  • скрипт появится в списке локальных скриптов
  • скрипт включен в этом списке

Если проект всё же собирается в dist, скрипт будет успешно скомпилирован, но Melonity не загрузит его автоматически.

Если вы добавили в папку новый .js файл и он ещё не отображается в списке, нажмите F7, чтобы перезагрузить скрипты.


Скрипт загружается, но callback-обработчики не работают

Обычно это означает, что скрипт был зарегистрирован неправильно.

Убедитесь, что:

  • вы создали ScriptDescription объект
  • вы назначили callbacks этому объекту
  • вы вызвали RegisterScript(...)

Важно

Без RegisterScript некоторые части скрипта могут по-прежнему работать, например пункты меню. Однако callback-обработчики не будут работать.


Пункт меню появляется, но логика скрипта не работает

Обычно это означает одно из двух:

  • основные callback-обработчики скрипта не зарегистрированы
  • ваша логика отключена переключателем или ранним return

Проверять:

  • RegisterScript(...) действительно вызывается
  • включен ли ваш переключатель
  • функция OnUpdate или OnDraw не завершается слишком рано

npm install терпит неудачу

Обычно это локальная проблема Node.js или зависимостей.

Проверьте следующее:

  • Node.js установлен корректно
  • вы используете версию LTS
  • вы запускаете команду в корне проекта
  • package.json существует в текущем каталоге

При необходимости удалите node_modules и переустановите зависимости.


npm run watch терпит неудачу

Если наблюдатель не запускается, проверьте:

  • зависимости установлены
  • webpack.config.js не содержит недействительных изменений
  • путь вывода действителен
  • никакой другой процесс не блокирует целевой выходной файл

Если ошибка появилась после редактирования config, восстановите последнюю рабочую версию и повторите попытку.


Изменения не применяются после перестроения

Если проект перекомпилируется, но в Melonity ничего не изменится, проверьте:

  • сгенерированный файл записывается в правильную папку scripts
  • Melonity загружает локальные скрипты
  • наблюдатель перестраивает тот же файл записи, который вы редактируете
  • скрипт был перезагружен после изменения файла

Иногда сборка завершается успешно, но обновляется не тот файл или не тот каталог.


OnDraw или рендеринг работает плохо

OnDraw вызывается каждый кадр. Это означает, что при более высоком FPS он срабатывает чаще, поэтому внутри него не должно быть тяжёлой логики. OnDraw может ухудшить производительность.

Старайтесь использовать OnDraw только для рендеринга, а сложные вычисления переносите в OnUpdate или в кэшируемые значения.


menu сломан или появляются другие визуальные ошибки.

Если меню выглядит сломанным или вы видите другие визуальные проблемы, сначала проверьте консоль.

Использовать:

txt
F10

Консоль — это самое быстрое место для поиска ошибок времени выполнения, вызванных вашим скриптом.


Все еще не работает

Если настройка по-прежнему не работает, пройдите эти страницы еще раз по порядку:

  1. Preparing the environment
  2. Creating your first script

Затем сравните свой проект с репозитория шаблона и проверьте, соответствуют ли ему ваша структура, путь сборки и процесс регистрации.