Приветствуем вас на форуме проекта WoW Circle. Если вы читаете это, значит не зарегистрировались у нас. Для того, чтобы получить доступ к расширенным возможностям нашего форума нажмите сюда и пройди регистрацию, которая не займет у вас много времени. После регистрации будут доступны новые, более расширенные, возможности.
Вопрос к знатокам скриптов WoW!

Упомянутые в теме пользователи:

Показано с 1 по 3 из 3
  1. #1
    Новичок
    Регистрация
    09.01.2013
    Сообщений
    11
    Поблагодарил(а)
    0
    Получено благодарностей: 0 (сообщений: 0).
    Репутация: 0

    Вопрос к знатокам скриптов WoW!

    Здравствуйте уважаемые читатели форума!

    На просторах интернета нашёл небольшой скрипт, который меняет Вал'анир на другое оружие, при условии, что на игрока вешается баф "Благословение древних королей", бой при этом рекомендуется начинать с Вал'аниром в руках.

    /run vM=0 d={UnitBuff("player","Благословение древних королей")}; if d[7]~=nil then vM=d[7]-GetTime() end
    /run if vM>0 and vM<=1 then RunMacroText("/equip *любое другое оружие*") s=GetTime() ss=s+30 end
    /run if ss ~=nil then if GetTime()>=ss then RunMacroText("/equip Вал'анир, молот древних королей") end end
    Из данного скрипта мне понятно, что он частично использует запрещённые функции интерфейса Blizzard.
    Например запуск макроса RunMacroText...

    Однако меня заинтересовала не проверка на баф и смену оружия с запуском макроса, а вот эта часть:

    /run vM=0 d={***}; if d[7]~=nil then vM=d[7]-GetTime() end
    /run if vM>0 and vM<=1 then *** s=GetTime() ss=s+30 end
    /run if ss ~=nil then if GetTime()>=ss then *** end end
    Происходит старт скрипта, что делает параметр vM? Далее d={***}, почему сокращение скрипта заключено в эти скобки? {};
    если d[7]~=nil - не равно нулю "nil - ноль", какое значение имеет цифра [7] и почему 7, а не 6,5,4? тогда vM=d[7]-GetTime() end, параметр vM=d[7]-(минус Текущее Время() конец), то есть, я осознаю, что идёт проверка времени бафа Благословение древних королей в секундах - минус его текущее значение.
    Далее...
    /run if vM>0 and vM<=1 then *** s=GetTime() ss=s+30 end
    Старт если vM>0 и vM<=1 тогда *** s=GetTime() ss=s+30 end
    Почему мы s приравниваем к текущему значению бафа, а затем используем ss=s+30? Как сочетание двух "ss" должно срабатывать? Внутренний КД на Вал'анир 45 секунд. Очевидно спустя 30 секунд, мы снова берём Вал'анир в руки. Но можно ли вообще эту проверку времени использовать где-либо ещё? Сам параметр vM рабочий?
    Может найдётся кто-либо понимающий, что тут происходит?)
    Заранее спасибо всем, кто дочитал до конца, я только начинаю изучать скрипты и хочется использовать максимум из доступного (не запрещённого) в игре, для написание более простеньких скриптов.

  2. #2
    Старожил
    Регистрация
    15.02.2017
    Сообщений
    90
    Поблагодарил(а)
    6
    Получено благодарностей: 27 (сообщений: 21).
    Репутация: 27
    vM это просто вводимая переменная, которая будет использоваться в дальнейшем для проверки. {} это массив в который записалась куча данных от UnitBuff, d[7] - 7 элемент массива, 7й потому что там записано время, в которое был получен бафф.

    для остального надо просто понимать логику.


    если хочешь писать легальные скрипты, то вбей в гугле "Гайд и Справочник по Макросам для WoW 3.3.5" и там найдешь простые примеры и сложные.

  3. #3
    Ветеран форума Аватар для romanspector
    Регистрация
    20.08.2018
    Сообщений
    1,136
    Поблагодарил(а)
    551
    Получено благодарностей: 422 (сообщений: 285).
    Репутация: 1866
    Цитата Сообщение от Profeon Посмотреть сообщение
    Например запуск макроса RunMacroText...
    100% под протекшином, хз на счет остальной части, но именно РанМакроТекст можно заменить на
    PHP код:
    /run if ss ~=nil then if GetTime()>=ss then UseEquipmentSet("name"
    , предварительно сохранив сет с валаниром в руках. (если я все правильно понял)
    Последний раз редактировалось romanspector; 16.05.2020 в 10:25.
    Вов продуманая игра там не было затупов затупы придумал игрок ©litoorg5

Похожие темы

  1. Ответов: 4
    Последнее сообщение: 07.04.2020, 17:38
  2. Ответов: 2
    Последнее сообщение: 09.11.2016, 17:53
  3. Ответов: 6
    Последнее сообщение: 21.09.2016, 02:12
  4. Ответов: 1
    Последнее сообщение: 20.04.2014, 15:43

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •