Модератор форума: staford11 |
Форум Хитрости Пиратских серверов Читы для WoW Использование Lua скриптов. |
Использование Lua скриптов. |
помоги, пожалуйста я что то не понимаю как их запустить.. делаю все по инструкции и не алё, даже название скилов менял, на те которые актуальны для пандарии, так как там и тестил.. player на свой ник менял не помогло.. как вообще это работает? я как понял должен срабатывать мощный удар щитом при баффе щит и меч но чет нифига не работает...
function Destroy(self, elapsed) local enabled = GetSpellCooldown("Мощный удар") local rage = UnitPower("player") local inRange = IsSpellInRange("Мощный удар", "target") if UnitBuff("player","Сокрушить!") then if enabled == 0 and inRange == 1 and rage >= 15 then RunMacroText("/cast Мощный удар") end end end CreateFrame("Frame", "DestroyFrame") DestroyFrame:SetScript("OnUpdate", Destroy)
Сообщение # 1983 написано 29.11.2016 в 17:48
|
есть ли скрипт на проверку количества враждебных целейцелей около таргета? допустим около меня нету, только чтением памяти напрямую и перебором структуры wowobj,ну или как вариант запускать скрипт на 1 сек выбором ближайшей цели(tab) и занесением всех целей и расстоянии в таблицу а потом смотреть сколько целей попали в таблицу
Сообщение # 1985 написано 30.11.2016 в 16:33
|
Из готовых скриптов есть на
3.3.5а Бдк фул пве ротация + автокики 4.3.4 ферал пве ротация + решифты(под каст ханта испугать зверя и замедления)+сбитие кастов+циклоны+ корни+ хилки вообщем все спелы на автопилоте под 2с 3с арену 4.3.4 энх перестановка томемов автодиспел злых бафов ,тотемы антифир и граундинг под конец кастов все спелы на авто 5.x.x ретрик и вар ,у вара все спелы вписаны авторефлект автозамедление +макс дпс в цель +сбитие кастов 6.2.3 вот тут самое интересное баланс дру все спелы на авто + фишки(циклоны с учетом диминишинга на цели те не кидает 2 раза подряд циклон в 1 цель авторешифт чтобы уходить от меликов когда они вблизи)+ учет всех арена таргетов если они за колоннами те скрипт незацикливается если цель вне зоны доступа или за колонной + самая последняя разработка сова для бг (авто перепрыг на разные таргеты и мультидот по всем с максимальным дпс + учет количества целей и автопереключение на ротацию в одиночную цель если все апдотаны) ферал- циклоны диминишиг ну и все спелы прописаны адк- все спелы + сбитие каста от пета от самого дк ну и так из простого автокики, рефлекты, граундинг под касты,также реакция на мгновенные касты типа автошвд у приста или каста антифира в кинутый инстанный фир или каста антисала в маговскую антимагию , открытие роги новой при попытке сапа,отмены каста своего если цель или цели на арене прожали что-то типа рефлекта,также первое открытие рог на арене если два в стелсе(отлично работало на дреноре ферал без проблем открывал любых рог с 98% на других не тестил) скину расскажу как установить и запускать ну и перепишу если что-то не понравится или надо будет поменять за работу с вас услуга по прокачке чара придется потратить 7 часов пока я сплю и сам не смогу играть хочу получить первого на сервере обращайтесь время до 18.00 мск субботы
Сообщение # 1987 написано 01.12.2016 в 15:10
|
/run f=0; if UnitExists("focus") then for i=1,40 do d={UnitBuff("focus",i)}; if d~=nil and d[1]=="Щит земли" and d[8]=="player" and d[4]>1 and d[7]-GetTime()>=60 then f=1; break end end if f==0 then RunMacroText("/cast [@focus] Щит земли") end end;
Пишу макросы и профили PQR
Моя подборка пве скриптов-ротаций 3.3.5
Сообщение # 1989 написано 02.12.2016 в 07:04
|
люди, тема такая. есть bindpad. sdm выдает множество ошибок, вообщем его не трогать. работаем с bindpad. как разбить скрипт на части. что то вроде
if UnitBuff(какойто баф) then заставить скрипт нажать кнопку, на которую забинден другой скрипт, на примере bindpad CLICK BindPadMacro:1 ибо места не хватает. описал крайне упрощенно, но нужно именно так. спасибо |
function Inter(self, elapsed)
for a=1,3 do local spell, , , , , endTime, , , interrupt = UnitCastingInfo("party"..a) local enabled = GetSpellCooldown("Очищение") local inRange = IsSpellInRange("Очищение","party1") if UnitDebuff("party1", "Глубокая заморозка","Страх","Кулак правосудия","Молот правосудия","Изгнание зла","Превращение","Замораживающая ловушка","Ментальный крик") then if enabled==0 then if inRange==1 then RunMacro("Диспел") end end end end end CreateFrame("Frame", "InterFrame") InterFrame:SetScript("OnUpdate", Inter) Нук знатоки скриптов скажите. Будет ли работать тако скрипт на диспел, переделаный из скрипта (Интервейт)
Сообщение # 1994 написано 18.12.2016 в 18:54
|
local losframe = CreateFrame("Frame")local lostable = {} local function LineOfSight(target) losframe:RegisterEvent("COMBAT_LOG_EVENT_UNFILTERED") function LOSFRAMEOnEvent(self,event,...) if event=="COMBAT_LOG_EVENT_UNFILTERED" then local _, subEvent, _, sourceGUID, _, _, _, _, _, _, _, _, _, _, spellFailed = ... if subEvent == "SPELL_CAST_FAILED" and sourceGUID == UnitGUID("player") then if spellFailed == SPELL_FAILED_LINE_OF_SIGHT then lostable [target]= {t = GetTime() + 1.5} end end end end losframe:SetScript("OnEvent",LOSFRAMEOnEvent) if lostable [target]then if lostable[target].t <= GetTime() then lostable [target]= nil return true end return false else return true end end Функция проверки лоса, уже не первый раз кидаю, но почему-то все просят каждый раз Цитата /run if LineOfSight(цель) then каст end Message: [string "return LineOfSight(target)"]:1: attempt to call global 'LineOfSight' (a nil value) функции LineOfSight нет скрипт нерабочий лучше такое не кидать, не проверив сначала |
ребят, где ошибка подскажите? вроде всё верно, но не юзает команду взять, 3.3.5 контэнт
Код /run CastSpellByName("!Автоматическая стрельба");s="Глушащий выстрел";if(GetSpellCooldown(s)==0)then CastSpellByName(s)end;s="Убийственный выстрел";if(GetSpellCooldown(s)==0 and IsUsableSpell(s))then CastSpellByName(s)end;RunMacro("Hunt2") Код /run cd=GetSpellCooldown;s="Выстрел химеры";if(cd(s)==0)then CastSpellByName(s)end;s="Прицельный выстрел"; if(cd(s)==0)then CastSpellByName(s)end;s="Команда \"Взять!"; if(cd(s)==0)then CastSpellByName(s)end;CastSpellByName("Верный выстрел") мозги кипят уже, единственный вариант пока только так: Код /cast Команда "Взять!" /run CastSpellByName("!Автоматическая стрельба");s="Глушащий выстрел";if(GetSpellCooldown(s)==0)then CastSpellByName(s)end;s="Убийственный выстрел";if(GetSpellCooldown(s)==0 and IsUsableSpell(s))then CastSpellByName(s)end;RunMacro("Hunt2") Код /run cd=GetSpellCooldown;s="Выстрел химеры";if(cd(s)==0)then CastSpellByName(s)end;s="Прицельный выстрел";if(cd(s)==0)then CastSpellByName(s)end;CastSpellByName("Верный выстрел") |
sanfishman22,
Код /run if GetSpellCooldown("Убийственный выстрел")==0 and IsUsableSpell("Убийственный выстрел") and IsSpellInRange("Убийственный выстрел","target") and UnitHealth("target")/UnitHealthMax("target")<0.2 then CastSpellByName("Убийственный выстрел") end /run if UnitAffectingCombat("player") and UnitExists("focus") and GetSpellCooldown("Перенаправление")==0 and IsSpellInRange("Перенаправление","focus") then RunMacroText("/cast [@focus] Перенаправление") end /run if (not UnitDebuff("target", "Укус змеи", nil, "PLAYER")) then RunMacroText("/cast Укус змеи") end /run local _,d,_ = GetSpellCooldown("Глушащий выстрел") if (d == 0) then CastSpellByName("Глушащий выстрел") end /run local _,d,_ = GetSpellCooldown("Выстрел химеры") if (d == 0) then CastSpellByName("Выстрел химеры") end /run local _,d,_ = GetSpellCooldown("Прицельный выстрел") if (d == 0) then CastSpellByName("Прицельный выстрел") end /run local _,d,_ = GetSpellCooldown("Верный выстрел") if (d == 0) then CastSpellByName("Верный выстрел") end /startattack
Пишу макросы и профили PQR
Моя подборка пве скриптов-ротаций 3.3.5 |
Есть у каво скрипт на ротацию совы 3.3.5 ато мой скрипт маленько кривовато работает
Цитата /run if (not UnitDebuff("target", "Волшебный огонь"))then CastSpellByName("Волшебный огонь") end /run if (not UnitDebuff("target", "Лунный огонь", nil, "PLAYER"))then CastSpellByName("Лунный огонь") end /run if (not UnitDebuff("target", "Рой насекомых", nil, "PLAYER"))then CastSpellByName("Рой насекомых") end /run if UnitBuff("player","Лунное затмение") then CastSpellByName("Звездный огонь") else CastSpellByName("Гнев") end Или доработайте этот чтобы после конца прока( Лунное затмение ) он бил (Звездный огонь) до прока ( Солнечное затмение ) |
Цитата Есть у каво скрипт на ротацию совы 3.3.5 ато мой скрипт маленько кривовато работает Код /run RegisterCVar("Затмение","Гнев") /run if not UnitDebuff('target','Волшебный огонь') and UnitHealth('target')>150000 and not UnitDebuff('target','Волшебный огонь (Зверь)') then CastSpellByName('Волшебный огонь') end /run d={UnitDebuff('target','Лунный огонь')}if(d[8]~='player') then CastSpellByName('Лунный огонь') end /run b={UnitDebuff('target','Рой насекомых')}if(b[8]~='player') then CastSpellByName('Рой насекомых') end /run if UnitBuff("player","Лунное затмение") then SetCVar("Затмение","Звездный огонь") else if UnitBuff("player","Солнечное затмение") then SetCVar("Затмение","Гнев") end end /run CastSpellByName(GetCVar("Затмение"))
Пишу макросы и профили PQR
Моя подборка пве скриптов-ротаций 3.3.5
Сообщение # 2004 написано 27.12.2016 в 11:59
|
вроде всё так, но у совы чуть по другому. Не нужно поддерживать 2 доты, почитай талант "Озлобенный рой насекомых" который пишет о том, что когда цель под "Роем насекомых" то гнев нанесёт на 3% больше урона, и его нужно юзать под прок Солнечного затмения, так же и с лунным затмением, держим только 1 доту во время нужного нам прока. Разве что написать написать что бы, при проке солнечного затмения не юзал "лунный огонь" пока не закончится прок луны и так же с лунным затмением и роем насекомых, ну это для идеала. А так то можно и этот юзать)
На счёт /run if GetSpellCooldown("Убийственный выстрел")==0 and IsUsableSpell("Убийственный выстрел") and IsSpellInRange("Убийственный выстрел","target") and UnitHealth("target")/UnitHealthMax("target")<0.2 then CastSpellByName("Убийственный выстрел") end /run if UnitAffectingCombat("player") and UnitExists("focus") and GetSpellCooldown("Перенаправление")==0 and IsSpellInRange("Перенаправление","focus") then RunMacroText("/cast [@focus] Перенаправление") end /run if (not UnitDebuff("target", "Укус змеи", nil, "PLAYER")) then RunMacroText("/cast Укус змеи") end /run local _,d,_ = GetSpellCooldown("Глушащий выстрел") if (d == 0) then CastSpellByName("Глушащий выстрел") end /run local _,d,_ = GetSpellCooldown("Выстрел химеры") if (d == 0) then CastSpellByName("Выстрел химеры") end /run local _,d,_ = GetSpellCooldown("Прицельный выстрел") if (d == 0) then CastSpellByName("Прицельный выстрел") end /run local _,d,_ = GetSpellCooldown("Верный выстрел") if (d == 0) then CastSpellByName("Верный выстрел") end /startattack меня интересовала ошибка в моём макросе) а так то всё ясно) Код /run local n,_,_,_,_,_,x = UnitDebuff("target","Прикосновение вампира") if not UnitDebuff("target", "Прикосновение вампира", nil, "PLAYER") then RunMacroText("/castsequence reset=2 Прикосновение вампира") end if UnitDebuff("target","Прикосновение вампира") and -1*(GetTime()-x) <= 1.02 then RunMacroText("/castsequence reset=2 Прикосновение вампира") end уже и castsequence reset леплю туда, но бывает часто что по второму разу кастует, из-за пинга я так понимаю?неуспевает понимать что дота уже висит, но castsequence reset не работает почему то, как можно по другому решить проблему? |
вроди не кастует 2 раза
Цитата /run if (not UnitDebuff("target", "Всепожирающая чума", nil, "PLAYER"))then RunMacroText("/cast Всепожирающая чума") end /run if (not UnitDebuff("target", "Прикосновение вампира", nil, "PLAYER"))then RunMacroText("/castsequence reset=8/target Прикосновение вампира, Прик") end /run local _,a,_ = GetSpellCooldown("Пытка разума") if (a == 0) then RunMacroText("/cast [nochanneling:Пытка разума] Пытка разума ") end /run if (not UnitDebuff("target", "Слово Тьмы: Боль", nil, "PLAYER"))then RunMacroText("/cast Слово Тьмы: Боль") end
Сообщение # 2006 написано 30.12.2016 в 02:23
|
всё, спасибо. Ясно стало, надо было спелл дописать левый какойто на кастэквенс) спасибо
Добавлено (31.12.2016, 10:27) if(cd(s)==0)then CastSpellByName(s)end;s="Команда \"Взять!"; if(cd(s)==0)then CastSpellByName(s)end; Где ошибка с "Команда "Взять!"" ?
Сообщение # 2007 написано 31.12.2016 в 10:27
|
А нафига для этой способности мудрить, просто добавил в конец макроса
/cast Команда "Взять!" Там как я понимаю из-за двойных ковычек не хочет реагировать,хз
Пишу макросы и профили PQR
Моя подборка пве скриптов-ротаций 3.3.5
Сообщение # 2008 написано 01.01.2017 в 17:16
|
| |||