[Dota SB] Dota Scripts Builder | AHK

Регистрация
4 Янв 2019
Сообщения
606
Репутация
73
Спасибо
193
Монет
0
attachment.php

Библиотека Dota Scripts Builder - функции, которые облегчат и ускорят написание скриптов для Доты 2.
Особенность заключается в работе со слотами, а именно их координатами.

Здесь не буду рассматривать примеры возможной реализации, подробней ниже.

  1. SetSettings()
    Настройки для корректной работы функций библиотеки.

  2. PixelTrigger(savecrds, slotnumb, R, R2)
    savecrds - режим "1" - сохранить координаты, "0" - определять по сохранённым координатам.
    slot - номер слота, от координат которого будет определятся пиксели.
    R - отклонение от координат слота. Отклонение при сохранении.
    R2 -отклонение от координат слота. Отклонение при определении.
  3. bhsetslotcoords(letter, numeral, slot, coordinate, type)
    Сохранение координаты слота в нужный элемент по:
    1) Letter - Символу координаты
    2) Numeral - № координаты
    3) Slot - № слота
    4) Coordinate - Указываемой координаты
    Type - Сохранение координат (inventory, skill, backpack).
  4. byhandsetslotcoords(x11 - y26, type)
    То же самое что сверху, только сохранение координат идёт для всех слотов сразу. Добавлено для исключительных случаев.
  5. setslotcoords(Q1, Q2, Q3, Q4, Q5, Q6, type)
    Сохранение координат слотов указанного типа. Сохранение сопровождается звуковыми сигналами. Возможность самому пользователю указать координаты своих слотов.
    Qn - номер слота, координаты которого мы сохраняем.
    Type - Координаты чего мы сохраняем (inventory, skill, backpack).
  6. vksend(key, status)
    Отправка нажатия клавиши по VK коду.
    Key - код клавиши, Status: d - зажать, u - отпустить, 0 - простое нажатие.
  7. scsend(key, status)
    Отправка нажатия клавиши по SC коду.
    Key - код клавиши, Status: d - зажать, u - отпустить, 0 - простое нажатие.
  8. modsend(key, modkey)
    Отправка нажатия через модификатор.
    Key - имя клавиши, Modkey - модификатор (alt, ctrl).
  9. send(key, status)
    Отправка нажатия клавиши.
    Key - имя клавиши, Status: d - зажать, u - отпустить, 0 - простое нажатие.
  10. itemsearch(slot, image)
    Поиск image в указанном слоте/всех по ранее сохранённым координатам.
    slot - номер слота, image - название/путь к изображению.
  11. eventlist(type)
    Возвращает содержание переменных по указанным параметрам.
    Параметры:
    (Координаты конкретного слота, все координаты, клавиши)

    inventory.coords.n.n.n
    [n- № слота(1/6), n- № координаты(1/2), n- координата(x/y).]

    inventory.key.n
    [n - № слота]

    inventory.coords.all
    inventory.key.all
    skill.coords.n.n.n
    skill.coords.all
    skill.key.n
    skill.key.all
    backpack.coords.n.n.n
    backpack.coords.all
  12. abuseitems(side, speed, itemslot, backslot, R, R2)
    Абуз предметов в инвентаре через рюкзак.
    side - сторона абуза, speed - скорость курсора, itemslot - номер слота инвентаря, backslot - номер слота рюкзака, R - отклонение от координат слота инвентаря, R2 - рюкзака.
  13. ExitProcess()
    Завершения процесса

Пример поиска изображения в указанных вручную координатах слота:


Код:
#Include DotaScriptsBuilder.ahk
; Подключаем библиотеку
SetSettings()
; Функцией SetSettings() создаем папку \Documents\DotaScriptsBuilder и ставим coordmode.
bhsetslotcoords("x", "1", "6", "1488", "inventory")
bhsetslotcoords("x", "2", "6", "1528", "inventory")
bhsetslotcoords("y", "1", "6", "1019", "inventory")
bhsetslotcoords("y", "2", "6", "1047", "inventory")
; Сохраняем координаты 6-го слота инвентаря
numpad0::
msgbox % itemsearch("6", "tranquilboots.png")
; Ищем изображение tranquilboots.png (находится по пути \Documents\DotaScriptsBuilder) в координатах 6-го слота.

Хотел бы озвучить, что в сей библиотеке нет работы с памятью, все функции построены на работе с изображениями и координатами.
Основное желание у меня при написании - это было облегчить процесс написания скриптов для доты и сделать это менее муторным, хотя бы на этапе работы со слотами. Получилось у меня или нет - решать вам.

attachment.php



attachment.php


Установка: перенести файл в удобное для вас место и в начале любого скрипта указывать #include.

Скачать: DotaScriptBuilder

Скачать полные файлы: DotaSB-Master.zip

Скачать: AutoHotkey

Поставьте спасибо посту, и так-же не забывайте о Репутации, от этого зависит как много будет новых скриптов для Дота2


Поддержите меня.
Qiwi: +380958918102 (Rub)
 
Назад
Сверху