Перейти к содержанию

Дайджесты за январь-февраль

Обновления гайдов и аддонов

Январь Февраль

Мониторинг серверов и редактор аддонов

Представляем вам две легенды. То, о чем можно было только мечтать, стало реальностью.

Мониторинг серверов Редактор аддонов

Подсказки из игры на вашем сайте

Теперь вы можете отображать сведения о внутриигровых элементах простым наведением курсора мыши.

Подробнее

Апдейтер аддонов

Представляем вам программу для автообновления аддонов и делимся подробностями.

Подробнее Скачать

hal.dll

Разработчик аддонов
  • Постов

    439
  • Зарегистрирован

  • Посещение

Весь контент hal.dll

  1. Спасибо за информацию. Проблему нашел и уже частично исправил. Обновление уже на подходе. Скитальцы там тоже будут.
  2. А скрины зачем обрезали? И позвольте поинтересоваться, вы на перекрестке до этого были?
  3. Окошко настроек в процессе. Срок: середина след. недели. Сейчас возможно это сделать только через config.txt, постоянно перезагружая аддон.
  4. Спасибо. Понял в чем дело: в игре 2 карты с одним названием (Осколок Язеса). Придется добавить проверку названия группы карт (то, что в левом выпадающем списке). Залью исправленную версию ночью. Лишних точек нет. Расположение камня не постоянно. Сегодня тут, завтра в 50 метрах сбоку. И так - в одном из 5-10 фиксированных мест.
  5. Скриншот не отображается. Можно залить на другой хостинг? С какой локации попали на Арену? PS: Постараюсь исправить как можно быстрее. Уже есть подозрения, что это может быть. Ночью возможно будет баг-фикс (без добавления нового функционала). Благодарю, добавлю в следующем релизе. Т.е. то же самое, что делал SearchCrown? Планируется перманентное слежение (в т.ч. в рамках сбора новых координат) за появлением камня в ближайшей округе. В планах также добавить какую-нибудь стрелку, указывающую направление (если это вообще возможно).
  6. Автобег сейчас стоит наиболее приоритетной задачей. По поводу редактирования координат - не задумывался. По поводу добавления координат: Если я правильно понимаю, то API Аллодов дают возможность записывать какие-либо данные только в пользовательские настройки. Писать в отдельный файл или синхронизировать данные по сети API вроде не позволяет. (Впрочем, этот вопрос еще не изучался, если известны наработки - просьба ткнуть меня носом). Т.е. без вмешательства пользователя аддон может сделать карту более детальной и точной только для данного пользователя, но не для остальных. На фоне этого больше хотелось бы, чтобы пользователи присылали координаты на форум, которые дальше уже добавляются в аддон. Как минимум есть планы перенести функционал клавиши PrintScreen из MinimapSla, который дополнительно писал координаты объекта в лог. Со временем также будет добавлено сохранение новых координат в пользовательских настройках.
  7. hal.dll

    Cartographer

    Cartographer Просмотр файла Ru: Аддон показывает расположение камней, необходимых для получения вехи по квесту "Путь твоего класса", а также некоторых других игровых объектов. Камни и игровые объекты отображаются на карте мира и на обоих миникартах. Начиная с версии 1.0 совместно со встроенной в игру миникартой полностью заменяет дополненный аддон MinimapSla, размещенный в профильной теме официального форума. Начиная с версии 1.6 дублирует функционал аддона SearchCrown. Начиная с версии 2.3 дублирует функционал аддона HerbMap. Автоперемещение: Автоперемещение не работает в связи с хотфиксом 5.0.00.66 [25.03.14]. Установка: Скачиваем архив с аддоном Cartographer_2.5.pak для любой версии игрового клиента. Удаляем предыдущие версии аддона (в том числе Crystals.pak, Cartographer.pak) из директории игры Allods Online\data\Mods\Addons\. Копируем (распаковывать не требуется) скачанный архив в директорию игры Allods Online\data\Mods\Addons Настройка: В аддоне присутствует окно настроек, позволяющее указывать, объекты какого типа вы хотите видеть на карте. Настройки являются независимыми для каждого персонажа. Окно настроек вызывается чат-командой /cart Так же можно частично отключить аддон: метки объектов при этом показываться не будут, все манипуляции пользователя с картой, требующие смены расположения показанных обектов (например, изменение масштаба), будут игнорироваться, таймер будет отключен, но окно настроек будет доступно. Данная возможность будет полезна при массовых сражениях. По умолчанию аддон показывает все известные ему объекты: Астральный лазурит Астральный хризолит Астральный топаз Сундуки с сокровищами Вход в пещеру Тка-Рика (доступно автоперемещение) Вход в Город Демонов Входы на Арены Межевые камни Корабельные причалы Торговцы миррой Места добычи трав и руды Телепорты на карте НИИ МАНАНАЗЭМ Силайа на Кольце Дракона Служители Времени на Кирахе Первый Скиталец во времени (синие песочные часы) Вторая Скитальца во времени (красные песочные часы) Заблудившийся во времени Саранг Ма (фиолетовые песочные часы) Боссы (красные короны) Окно настроек можно переместить в любую точку экрана мышкой за заголовок окна, а также менять его размер за нижний правый угол окна. Настройки применяются сразу после их изменения. Нажатие на кнопку "Сохранить" сохраняет изменения в игровые настройки аватара, которые будут загружены при следующем запуске игры. Нажатие на кнопку "Отменить измененное" сбрасывает все не сохраненные настройки. Объекты пользователя: Аддон позволяет добавлять на карту свои объекты. База объектов пользователя сохраняется в глобальных настройках, таким образом они будут доступны на всех перерождениях и альтернативных персонажах. Оконный интерфейс базы пользовательских объектов вызывается чат-командой /cdb Любое из 3 окон интерфейса можно перемещать или растягивать. Кроме того все 3 окна могут перемещаться одновременно за заголовок. Добавлять в базу можно либо текущее положение персонажа, либо координаты текущей цели аватара (но только при удачном стечении обстоятельств, которые разблокируют соответствующую кнопку). Для добавления меток на карту Астрала необходимо воспользоваться дополнительной панелью, отображаемой поверх карты Астрала. Для этого просто перетащите мышью (Drag'n'Drop) иконку объекта в то место на карте, куда хотите добавить свою метку. Для выбора иконки просто щелкните по ней левой кнопкой мыши. Сама панель также передвигается за рамку. Для объектов можно задавать иконку метки на карте, название для отображения в списке объектов и описание, которое будет использоваться во всплывающей подсказке. Все изменения применяются сразу. Это относится и к панелям текстового ввода. Нажатие на Enter и Esc при активной панели текстового ввода трактуется одинаково и приводит только к потере фокуса ввода. Нажатие на кнопку "Сохранить" сохраняет все изменения. Нажатие на кнопку "Отменить измененное" сбрасывает все не сохраненные изменения; в том числе будут удалены добавленные, но еще не сохраненные объекты, а также восстановлены случайно удаленные объекты (если еще не успели нажать на "Сохранить"). Кроме этого базу данных можно выгрузить в файл mods.txt, создав резервную копию всех объектов. Обмен координатами: Аддон позволяет отправлять координаты и параметры своих объектов другим игрокам-пользователям аддона, используя игровой чат. Отправка и получение координат осуществляется только для чата гильдии, офицеров, группы, рейда и через шёпот. Порядок действий: В окне со списком объектов выделить объект, координаты которого хотите кому-либо отправить. Открыть окно ввода сообщения чата и выбрать нужный чат. Нажать на кнопку "Отправить объект в чат". Если кнопка не активна, значит не все условия были выполнены. В окне ввода сообщения появится запрос на ввод клавиши Enter. Нажмите её. В чате появится специальным образом составленное сообщение, которое будет распознано аддоном, установленным у других пользователей. Внимание: Приём объектов осуществляется постоянно вне зависимости от того, включен ли аддон в настройках или нет. Каждый принятый объект сохраняется в базе объектов автоматически (открывать интерфейс и нажимать на кнопку "Сохранить" не требуется). Это позволит не потерять объекты, полученные во время отсутствия за компьютером, если клиент игры завершится с ошибкой. Дополнение общедоступных координат: Любой желающий может помочь автору аддона, прислав координаты неизвестных точек респа камней. Для этого необходимо включить соответствующую опции в окне настроек (команда /cart в окне чата), встать прямо в то место, где находится камень, и сделать скриншот. По клавише PrintScreen аддон запишет координаты аватара в файл Allods Online\Personal\Logs\mods.txt. Их надо извлечь и прислать (желательно вместе со скриншотом) либо на форум поддержки, либо в личные сообщения автору. ================================================================================================== En: Addon shows some known game objects on the World Map and both square and circle Minimaps: Respawn places of astral stones needed for a Ruby Treasures Milestones Tka-Rik cave entrance Gorluxor's Tower entrance Arena entrances Myrrh vendors Ship portals Herb Ore Elite bosses Soliskar at Dragon Ring Time travelers at Kirah Time servants at Kirah Teleporters at ZIT Headquarters Installation: Download archive with add-on Cartographer_2.5.pak Remove older versions of add-on (Crystals.pak as well) from the game add-ons directory Allods Online\data\Mods\Addons\ Move downloaded archive to the game add-ons directory Allods Online\data\Mods\Addons\ Automove: Automove is not working due to 5.0.00.66 game hotfix. User objects: Add-on allows to show user defined marks on maps. To see user objects database interface issue the following chat command: /cdb Sharing coordinates: You can share your mark with your buddies using game chat. Open user objects interface, select any mark in the list. Open chat text input window. Set its mode to desired (whisper, guild, officers, party or raid). You should see "Send object to chat" button active now. Push it. You will see "Object is ready. Press <Enter> now." message in chat input window. Press <Enter>. You will see special message is sent to recipient(s). The recipient(s) should, of course, have this addon installed to receive your mark. Setup: Setup objects that you would like to see using add-on settings window. To see it just issue the following chat command: /cart All settings are applied immediately. ================================================================================================== Добавил hal.dll Добавлено 02.11.2013 Категория Аддоны  
  8. hal.dll

    Cartographer

    Версия 8

    157 214 раз скачали

    Ru: Аддон показывает расположение камней, необходимых для получения вехи по квесту "Путь твоего класса", а также некоторых других игровых объектов. Камни и игровые объекты отображаются на карте мира и на обоих миникартах. Начиная с версии 1.0 совместно со встроенной в игру миникартой полностью заменяет дополненный аддон MinimapSla, размещенный в профильной теме официального форума. Начиная с версии 1.6 дублирует функционал аддона SearchCrown. Начиная с версии 2.3 дублирует функционал аддона HerbMap. Автоперемещение: Автоперемещение не работает в связи с хотфиксом 5.0.00.66 [25.03.14]. Установка: Скачиваем архив с аддоном Cartographer_2.5.pak для любой версии игрового клиента. Удаляем предыдущие версии аддона (в том числе Crystals.pak, Cartographer.pak) из директории игры Allods Online\data\Mods\Addons\. Копируем (распаковывать не требуется) скачанный архив в директорию игры Allods Online\data\Mods\Addons Настройка: В аддоне присутствует окно настроек, позволяющее указывать, объекты какого типа вы хотите видеть на карте. Настройки являются независимыми для каждого персонажа. Окно настроек вызывается чат-командой /cart Так же можно частично отключить аддон: метки объектов при этом показываться не будут, все манипуляции пользователя с картой, требующие смены расположения показанных обектов (например, изменение масштаба), будут игнорироваться, таймер будет отключен, но окно настроек будет доступно. Данная возможность будет полезна при массовых сражениях. По умолчанию аддон показывает все известные ему объекты: Астральный лазурит Астральный хризолит Астральный топаз Сундуки с сокровищами Вход в пещеру Тка-Рика (доступно автоперемещение) Вход в Город Демонов Входы на Арены Межевые камни Корабельные причалы Торговцы миррой Места добычи трав и руды Телепорты на карте НИИ МАНАНАЗЭМ Силайа на Кольце Дракона Служители Времени на Кирахе Первый Скиталец во времени (синие песочные часы) Вторая Скитальца во времени (красные песочные часы) Заблудившийся во времени Саранг Ма (фиолетовые песочные часы) Боссы (красные короны) Окно настроек можно переместить в любую точку экрана мышкой за заголовок окна, а также менять его размер за нижний правый угол окна. Настройки применяются сразу после их изменения. Нажатие на кнопку "Сохранить" сохраняет изменения в игровые настройки аватара, которые будут загружены при следующем запуске игры. Нажатие на кнопку "Отменить измененное" сбрасывает все не сохраненные настройки. Объекты пользователя: Аддон позволяет добавлять на карту свои объекты. База объектов пользователя сохраняется в глобальных настройках, таким образом они будут доступны на всех перерождениях и альтернативных персонажах. Оконный интерфейс базы пользовательских объектов вызывается чат-командой /cdb Любое из 3 окон интерфейса можно перемещать или растягивать. Кроме того все 3 окна могут перемещаться одновременно за заголовок. Добавлять в базу можно либо текущее положение персонажа, либо координаты текущей цели аватара (но только при удачном стечении обстоятельств, которые разблокируют соответствующую кнопку). Для добавления меток на карту Астрала необходимо воспользоваться дополнительной панелью, отображаемой поверх карты Астрала. Для этого просто перетащите мышью (Drag'n'Drop) иконку объекта в то место на карте, куда хотите добавить свою метку. Для выбора иконки просто щелкните по ней левой кнопкой мыши. Сама панель также передвигается за рамку. Для объектов можно задавать иконку метки на карте, название для отображения в списке объектов и описание, которое будет использоваться во всплывающей подсказке. Все изменения применяются сразу. Это относится и к панелям текстового ввода. Нажатие на Enter и Esc при активной панели текстового ввода трактуется одинаково и приводит только к потере фокуса ввода. Нажатие на кнопку "Сохранить" сохраняет все изменения. Нажатие на кнопку "Отменить измененное" сбрасывает все не сохраненные изменения; в том числе будут удалены добавленные, но еще не сохраненные объекты, а также восстановлены случайно удаленные объекты (если еще не успели нажать на "Сохранить"). Кроме этого базу данных можно выгрузить в файл mods.txt, создав резервную копию всех объектов. Обмен координатами: Аддон позволяет отправлять координаты и параметры своих объектов другим игрокам-пользователям аддона, используя игровой чат. Отправка и получение координат осуществляется только для чата гильдии, офицеров, группы, рейда и через шёпот. Порядок действий: В окне со списком объектов выделить объект, координаты которого хотите кому-либо отправить. Открыть окно ввода сообщения чата и выбрать нужный чат. Нажать на кнопку "Отправить объект в чат". Если кнопка не активна, значит не все условия были выполнены. В окне ввода сообщения появится запрос на ввод клавиши Enter. Нажмите её. В чате появится специальным образом составленное сообщение, которое будет распознано аддоном, установленным у других пользователей. Внимание: Приём объектов осуществляется постоянно вне зависимости от того, включен ли аддон в настройках или нет. Каждый принятый объект сохраняется в базе объектов автоматически (открывать интерфейс и нажимать на кнопку "Сохранить" не требуется). Это позволит не потерять объекты, полученные во время отсутствия за компьютером, если клиент игры завершится с ошибкой. Дополнение общедоступных координат: Любой желающий может помочь автору аддона, прислав координаты неизвестных точек респа камней. Для этого необходимо включить соответствующую опции в окне настроек (команда /cart в окне чата), встать прямо в то место, где находится камень, и сделать скриншот. По клавише PrintScreen аддон запишет координаты аватара в файл Allods Online\Personal\Logs\mods.txt. Их надо извлечь и прислать (желательно вместе со скриншотом) либо на форум поддержки, либо в личные сообщения автору. ================================================================================================== En: Addon shows some known game objects on the World Map and both square and circle Minimaps: Respawn places of astral stones needed for a Ruby Treasures Milestones Tka-Rik cave entrance Gorluxor's Tower entrance Arena entrances Myrrh vendors Ship portals Herb Ore Elite bosses Soliskar at Dragon Ring Time travelers at Kirah Time servants at Kirah Teleporters at ZIT Headquarters Installation: Download archive with add-on Cartographer_2.5.pak Remove older versions of add-on (Crystals.pak as well) from the game add-ons directory Allods Online\data\Mods\Addons\ Move downloaded archive to the game add-ons directory Allods Online\data\Mods\Addons\ Automove: Automove is not working due to 5.0.00.66 game hotfix. User objects: Add-on allows to show user defined marks on maps. To see user objects database interface issue the following chat command: /cdb Sharing coordinates: You can share your mark with your buddies using game chat. Open user objects interface, select any mark in the list. Open chat text input window. Set its mode to desired (whisper, guild, officers, party or raid). You should see "Send object to chat" button active now. Push it. You will see "Object is ready. Press <Enter> now." message in chat input window. Press <Enter>. You will see special message is sent to recipient(s). The recipient(s) should, of course, have this addon installed to receive your mark. Setup: Setup objects that you would like to see using add-on settings window. To see it just issue the following chat command: /cart All settings are applied immediately. ==================================================================================================
    Бесплатный
  9. hal.dll

    AutoSelectDialog

    Версия 3

    5 877 раз скачали

    Ru: Автоматически выбирает нужные действия и квесты у НПС, автоматически начинает разговор с НПС. Аддон будет полезен всем летунам на "Мироеде" в Мертвом Городе, а так же всем активным игрокам. Установка: Скачиваем и распаковываем AutoSelectDialog.zip Открываем в блокноте файл config.txt из папки AutoSelectDialog, переносим настройки из config.txt предыдущей версии аддона и меняем под свои нужды Удаляем папку AutoSelectDialog с предыдущей версией аддона из директории игры Allods Online\data\Mods\Addons Копируем папку AutoSelectDialog в директорию игры Allods Online\data\Mods\Addons Настройка: НПС, квесты и названия действий описываются в файле config.txt. Любой пользователь может добавлять и удалять в этом файле всё, что угодно (сохраняя общий формат), настраивая аддон под свои требования. 1. Таблица autoSelectQuests предназначена для перечисления квестов, которые надо автоматически получать и завершать у конкретного НПС. Порядок следования задает приоритет квестов. Допустимые форматы записи: [ "Имя NPC" ] = "Название квеста", [ "Имя NPC" ] = { "Название квеста 1", "Название квеста 2", "Название квеста 3" }, ВНИМАНИЕ!! За один разговор с НПС (т.е. то время, пока открыта панель взаимодействия с НПС со списком квестов и действий) каждый квест, настроенный на автовыбор, аддон принимает и завершает лишь один раз. Примеры: У персонажа 120 знаков рвения. Квест "Обет Рвения" настроен на автовыбор. Персонаж подбегает к Регистратору Гильдий. Квест "Обет Рвения" до этого не был взят. При начале разговора с НПС квест "Обет Рвения" будет автоматически взят и сдан. Если выйти из разговора и начать его снова, то квест "Обет Рвения" будет снова автоматически взят и сдан. В следующий (третий) разговор квест "Обет Рвения" будет только взят, но не засчитается из-за недостатка знаков рвения. У персонажа 120 знаков рвения. Квест "Обет Рвения" настроен на автовыбор. Персонаж подбегает к Регистратору Гильдий. Квест "Обет Рвения" до этого был взят. При начале разговора с НПС квест "Обет Рвения" будет автоматически сдан, но не будет взят вновь появившийся. Однако, начав разговор второй раз, квест "Обет Рвения" будет автоматически взят и сдан. Начав разговор в третий раз, квест "Обет Рвения" будет только взят, но не засчитается из-за недостатка знаков рвения. Пожалуйста, относитесь внимательно к непрерывно повторяющимся квестам, думая о последствиях до того, как добавлять такой квест в автовыбор. Список текущих настроек в autoSelectQuests (кратко): Список текущих настроек в autoSelectQuests (подробно): 2. Таблица autoSelectDialog предназначена для перечисления реплик аватара, которые надо последовательно автоматически выбрать у конкретного НПС. Допустимые форматы записи: ["Имя NPC"] = "Строка диалога", ["Имя NPC"] = { "Строка диалога 1", "Строка диалога 2", "Строка диалога 3" }, ["Имя NPC"] = function() --[[ Lua код для выполнения специфичных действий ]] end, ["Имя NPC"] = { "Строка диалога 1", function() --[[ Lua код ]] end, "Строка диалога 2" }, Список текущих реплик в autoSelectDialog (кратко): Список текущих реплик в autoSelectDialog (подробно): 3. Таблица autoStartDialog предназначена для перечисления имен НПС, с которыми надо автоматически начинать диалог при появлении его в контекстных действиях. Автодиалог не срабатывает, если персонаж уже находится в режиме разговора с каким-либо НПС или в режиме автоматического перемещения. Допустимый формат записи: "Имя NPC", Список текущих НПС в autoStartDialog (кратко): Список текущих НПС в autoStartDialog (подробно): Если есть сомнения по поводу собственных настроек, можно задать вопрос на форуме поддержки аддона. Текущий config.txt полностью: Известные проблемы: Иногда при начале диалога на экране будут показываться сообщения "Цель слишком далеко". Нельзя открыть окно аукциона с помощью выбора диалога "Аукцион" у аукционеров (анти-бот ограничение). Невозможно продолжать испытания в пещере Тка-Рика, если сдать квест "Вызов Вероники" при взятом квесте "Дорога испытаний" — пропадает диалог "Приступить к испытаниям" из окна взаимодействия с Вероникой Гипатской. =========================================================== En: Addon automatically selects conversation options and quests in the NPCs talk window. Addon is also able to automatically start dialog with NPCs. Installation: Download and unpack AutoSelectDialog.zip Open AutoSelectDialog\config.eng.txt file in Notepad and change in accordance with your use cases Rename AutoSelectDialog\config.eng.txt file to AutoSelectDialog\config.txt, replacing the existent file (or remove it before renaming) Remove previous version of AutoSelectDialog from the game add-ons directory Allods Online\data\Mods\Addons\ Move AutoSelectDialog folder to the game add-ons directory Allods Online\data\Mods\Addons\ Current config.eng.txt: If you have any questions with configuring it ask me on add-on forum. ===========================================================
    Бесплатный
  10. Нельзя ли вернуть кнопкам функцию скрытия окна аддона? Раньше было удобно скрывать аддон, нажимая на кнопку второй раз. Сейчас после одного нажатия она становится неактивной. И когда вы уже исправите, что если окно всплывающей подсказки к островам НА перекрывает название острова в главном окне, то при наведении на это название подсказка не высвечивается?
  11. hal.dll

    ArcHUD

    А как сделать, чтобы цвета были более привычные и не зависели от класса: хп у себя и у цели - зеленое, энергия - оранжевая, мана - синяя?
  12. hal.dll

    RealAgroM

    Версия r23

    16 564 раза скачали

    Для переработки и улучшения аддона нужна актуальная информация по текущим агро-умениям всех классов в патче 6.0 (умения, таланты, бафы, повышающие или понижающие агро). Пишите в тему поддержки. Агрометр - считает и показывает количество агро у цели.. По сути является аддоном RealAgroR от Reva с моим расчетом агра(надеюсь он не в обиде).. В память об его аддоне оставляю похожее название Юзанье переагивающих умений танка отображается значком щита на столбике танка - означает что танк "сдуется" через некоторое время.. Кнопки "+" и "-" позволяют изменять максимальное количество отображаемых столбцов Исходный аддон был создан mehael. Доработан DiesIrae.
    Бесплатный
  13. LibDnD Просмотр файла Официальная версия LibDnD для аддонов. Рекомендуется разработчикам аддонов использовать данную версию LibDnD в своих аддонах. В ближайшем будущем планируется добавления новых плюшек, в т.ч. перенос некоторых плюшек из других аддонов. Если требуется какой-то особенный дополнительный функционал, или кто-то готов поделиться своим, то можно об этом попросить на странице разработки LibDnD. HOW-TO: LibDnD.lua - Библиотека Drag&Drop Простейший пример использования LibDnD Файл LibDnD.lua нужно включить в AddonDesc.(UIAddon).xdb, в секции <ScriptFileRefs>: <ScriptFileRefs> <Item href="LibDnD.lua" /> ... </ScriptFileRefs> DnD.Init() - Инициализирует виджет для Drag&Drop. Это нужно только один раз, во время инициализации аддона, или позже, когда угодно. Повторные вызовы для того же самого виджета на данный момент нежелательны. Пример: DnD.Init( wtMainPanel ) Всё, Drag&Drop УЖЕ работает Функция DnD.Init() Синтаксис: DnD.Init( wtMovable, wtReacting, fUseCfg, fLockedToScreenArea, Padding, KbFlag, Cursor ) Обязательные параметры: wtMovable - ссылка на Widget. Виджет, КОТОРЫЙ нужно перемещать. Необязательные параметры (могут быть nil, или их можно вообще не писать): wtReacting - ссылка на Widget (nil = wtMovable). Виджет, на который привязывается реакция, т.е. виджет, ЗА КОТОРЫЙ будет перетаскиваться wtMovable. Это может быть сам wtMovable, то есть сама перетаскиваемая панель, но НЕ обязательно (!), это может быть что угодно, например, ЗАГОЛОВОК ОКНА, "дочерний" по отношению к ОКНУ wtMovable. Если не указан - виджет wtMovable перемещается сам за себя. fUseCfg - true/false (nil = false). Сохранять ли позицию виджета в конфиг-файл User.cfg. Если да, то сохранит в таблице с именем "DnD:<путь к виджету wtMovable в иерархии>", в секции, названной по имени аддона. Рекомендуется, чтобы все родительские виджеты wtMovable имели осмысленные, не динамические, уникальные имена. fLockedToParentArea - true/false (nil = true). Если true, то передвигаемый виджет нельзя даже частично утащить за края родительского окна (чаще всего ими являются края экрана). Таким образом он всегда будет находиться целиком на экране (если не переопределено в параметре Padding, см. ниже). А если false, то его можно утащить полностью, точно так же, как можно утаскивать окна в ОС Microsuxx Windows. Padding - число или таблица из 4 чисел {Верхний,Правый,Нижний,Левый} (nil = {0,0,0,0}). Если fLockedToParentArea=true, то действует Padding. Если хотите, чтобы за край окна всё-таки можно было частично утащить wtMovable на какую-то глубину, то можете заполнить таблицу. Например, это сделано в аддонах "PhanTime" и "HonorInfo", где по краям панели имеется "тень" толщиной 8 пикселей. Там эта таблица заполнена отрицательными числами, вот так: {-8,-8,-8,-8}. В случае передачи числа в качестве параметра, оно будет использовано в качестве глубины по всем направлениям. KbFlag - флаги управляющих клавиш KBF_*. Если надо, чтобы wtMovable двигался только при нажатии клавиш Shift, Ctrl или Alt, передаем здесь соответствующие флаги KBF_*: nil - нажатие любой из перечисленных клавиш не имеет никакого эффекта. KBF_NONE - Перетаскивание только при не нажатых клавишах KBF_SHIFT - Перетаскивание только при нажатой "Shift" KBF_ALT - Перетаскивание только при нажатой "Alt" KBF_CTRL - Перетаскивание только при нажатой "Ctrl" KBF_ANY - Перетаскивание только при любой нажатой клавиши из перечисленных Cursor - строка/false (nil = "drag"). Стиль курсора, который будет устанавливаться при перетаскивании. nil/true - используется курсор по умолчанию: "drag". false - курсор не меняется при перетаскивании. Примеры использования DnD.Init() Виджет Окно (wtWindow), которое можно таскать за виджет Заголовок-окна (wtTitle), являющийся дочерним виджетом Окна: DnD.Init( wtWindow, wtTitle ) Виджет таскается сам по себе, И его позиция сохраняется между игровыми сессиями (создаёт секцию по названию аддона в файле User.cfg): DnD.Init( wtPanel, wtPanel, true ) или: DnD.Init( wtPanel, nil, true ) Виджет не сохраняет позицию между игровыми сессиями, и его можно утащить почти полностью за край экрана: DnD.Init( wtPanel, nil, false, true ) Позицию в конфиг не сохраняет, но за то, "тень" по краям текстуры фона окна аддона, имеющая толщину 8 пикселей со всех сторон, будет красиво задвигаться за край экрана (так сделано в аддонах "PhanTime" и "HonorInfo"): DnD.Init( wtMainPanel, nil, nil, nil, {-8,-8,-8,-8} ) или: DnD.Init( wtMainPanel, nil, nil, nil, -8 ) Делаем сразу три разных виджета передвигаемыми в одном аддоне: DnD.Init( wtTrayButton ) DnD.Init( wtMainWindow ) DnD.Init( wtConfigWindow ) Делаем передвигаемую wtMainPanel и все её дочерние виджеты в пределах родителя с учетом рамки в 4 пикселя при нажатой клавише Ctrl, с сохранением всех позиций в User.cfg: DnD.Init( wtMainPanel, nil, true ) for _,wtChild in pairs( wtMainPanel:GetNamedChildren() ) do DnD.Init( wtChild, nil, true, nil, 4, KBF_CTRL ) end Функция DnD.Enable() Синтаксис: DnD.Enable( wtWidget, fEnable ) wtWidget - ссылка на Widget. Это может быть wtReacting или wtMovable, не важно, т.к. оба варианта работают. fEnable - true/false. Если true, то виджет будет реагировать на Drag&Drop, а если false, то Drag&Drop виджета будет запрещён (то есть, виджет будет "пристёгнут", и будет игнорировать все попытки перетаскивания). Этой функцией пользоваться НЕ обязательно, т.к. все виджеты, зарегистрированные в системе функцией DnD.Init(), по умолчанию, АКТИВНЫ. Но если возникнет необходимость "пристегнуть" такой виджет, то функция DnD.Enable() существует именно для этого. Она меняет статус виждета, перманентно разрешающий или запрещающий его Drag&Drop. "Пристегнуть" виджет можно командой DnD.Enable( ВашВиждет, false ), и он будет игнорировать все попытки перетаскивания. Если позже вам потребуется снова разблокировать его (снова сделать перетаскиваемым), то сделайте это командой DnD.Enable( ВашВиждет, true ). Функция DnD.Enable() может потребоваться вам, например, если вы захотите сделать в своём аддоне полноценную поддержку событий аддона AddonManager. Подробнее об этом написано здесь: Поддержка событий AddonManager в других аддонах Функция DnD.IsDragging() Синтаксис: DnD.IsDragging() Если в вашем аддоне есть перетаскиваемые кнопки (такие есть, например, в аддонах "DarkDPSMeter" и "GuildGui1b"), то вам пригодится функция DnD.IsDragging(). Чтобы при перетаскивании такой кнопки, ИЗБЕЖАТЬ нажатие на неё, вставьте такую строку в начало кода реакции на нажатие кнопки: if DnD.IsDragging() then return end Функция DnD.Remove() Синтаксис: DnD.Remove( wtWidget ) wtWidget - ссылка на Widget. Виджет, который нужно разрегистрировать в системе DnD, чтобы его можно было безопасно уничтожить с помощью DestroyWidget. Передавать надо именно тот виджет, который собираетесь уничтожать. На данный момент не проверяет, зарегистрированы ли в системе дочерние по отношению к wtWidget виджеты, поэтому, если вы их регистрировали, то необходимо вызывать DnD.Remove и для них. Пример: for _,wtChild in pairs( wtMainPanel:GetNamedChildren() ) do DnD.Remove( wtChild ) end DnD.Remove( wtMainPanel ) wtMainPanel:DestroyWidget() Бонус: функции GetConfig() и SetConfig() Примеры: Получить весь конфиг аддона в виде ТАБЛИЦЫ (если он есть в User.cfg), или nil (если его там нет): Config = GetConfig() Получить из конфига значение переменной Name (если она есть) или nil (если её там нет). Имя переменной может быть строкой или числом, а значение - чем угодно, хоть таблицей. MyOption = GetConfig( Name ) Сохранить в конфиг-файл переменную Name со значением Value. Те же условия для имени и значения, что описаны в предыдущем примере. SetConfig( Name, Value ) Если передать только ОДИН параметр, но ТАБЛИЦУ, то все её переменные будут аккуратно добавлены (merged) в конфиг аддона. Именно добавлены. То есть, тупой перезаписи одной таблицы поверх другой эта функция НЕ делает. SetConfig( { ["A"] =5, [100] ={1,10,100}, ["Yes"] =true } ) Этим двум функциям НЕ нужно указывать название секции, т.к. они всегда пользуются секцией, названной именем аддона. Добавил hal.dll Добавлено 22.08.2014 Категория Аддоны  
×
×
  • Создать...

Важная информация

Пользуясь сайтом, вы принимаете Условия использования