-
Content count
503 -
Joined
-
Last visited
Everything posted by shuraken007
-
В качестве примера - для каких-то нужд меняешь текущее оружие , что-то делаешь, затем меняешь назад. Надо знать на что менять назад, и желательно проверить - а действительно ли поменялось.
-
Ну по крайней мере я теперь могу расчленить линк, и переделать как душе моей угодно, за минимум действий. А вобще эти captures весьма полезные штуки - с помощью них как два пальца об асфальт можно манипулировать со строками - что-то менять по опр алгоритму, вытаскивать. Команды аддонам с чата только так и работают - всмысле разбираются внутри на составляющие для анализа.
-
Вроде более менее разобрался, ну и гемор же с этими захватами, присобачил этот Name - проблема оказалась в том, что в линке после этого суффикса не следует сразу |h (хрен его знает что там следует) - поэтому конструкция с |?h? сразу после суффикса не находилась - выкрутился, поставив [^h]* _, _, Color, Ltype, Id, Enchant, Suffix, Name = string.find(itemLink, "|?c?f?f?(%x*)|?H?([^:]*):?(%d*):?(%d*):?(%d*)[^h]*h?%[(.+)%]") Xudojnik, а по поводу string.find - возвращает 2 значения начало, и конец - где в строке найдена подстрока (это две _, _) А после возвращает все захваченные значения, если эти захваты присутствовали, так называемые captures - это то, что в скобках () типо (%d*) update:забыл про третий ноль - глупо получилось, в этом вся загвоздка и была. _, _, Color, Ltype, Id, Enchant, Suffix, Unique, Name = string.find(itemLink, "|?c?f?f?(%x*)|?H?([^:]*):?(%d*):?(%d*):?(%d*):?(%d*)|?h?%[(.+)%]")
-
Макрос на проверку временного энчанта на оружии
shuraken007 replied to Av_vA's topic in Модификации, макросы и аддоны
В lua if a не проходит, если a = false или nil во всех остальных случаях a=true Иными словами если в переменной лежит хоть какой значение и не false - то это всегда true даже если оно ноль(с логической точки зрения) /script local hasMainHandEnchant = GetWeaponEnchantInfo() if hasMainHandEnchant then DEFAULT_CHAT_FRAME:AddMessage("Yes") else DEFAULT_CHAT_FRAME:AddMessage("No") end http://www.wowwiki.com/API_GetWeaponEnchantInfo?oldid=88055 hasMainHandEnchant, mainHandExpiration, mainHandCharges, hasOffHandEnchant, offHandExpiration, offHandCharges = GetWeaponEnchantInfo() чтобы добраться до нужного, отсекая лишнее (к примеру hasOffHandEnchant) можно писать _, _, _, hasOffHandEnchant = GetWeaponEnchantInfo() А в супер макро можно и так, заглянув в functions.txt в папке с этим аддоном: buffed("rockbiter",nil,1) -- player's weapon buff; returns "main" or "off", time left, charges Но это для поиска конкретного энчанта на пухе. Так, на всякий случай. -
Попробовал аркан мага на 19 с бафом ярмарки.
-
Макрос на использование гранаты
shuraken007 replied to Av_vA's topic in Модификации, макросы и аддоны
Покопался я в итем раке, и таки нашёл - как выудить имя из линка, причём так просто. /run for i=0,4 do for j=1,GetContainerNumSlots(i) do _,_,name = string.find(GetContainerItemLink(i,j) or "","%[(.+)%]") if(name=="Ториевая Граната") then UseContainerItem(i,j) end end end У тебя аж 83 символа под название. -
Kick - это который сбивает каст? Так он цель требует для использования, это механика такая. Тут уж ничего не поделать. Или я чего-то не вдуплил?
-
Color, Ltype, Id, Enchant, Suffix возвращаются их значения, я хз как работает этот шаблонный поиск. Присобачить Name не могу.
-
Макрос на использование гранаты
shuraken007 replied to Av_vA's topic in Модификации, макросы и аддоны
Вот под использование ториевой гранаты например. /script local fg, i, j fg = 0 for i = 0, 4 do for j = 1, GetContainerNumSlots(i) do texture=GetContainerItemInfo(i, j) if(texture) then if(string.find(texture, "Bomb_08")) then UseContainerItem(i, j) fg =1 break end end end if(fg == 1) then break end end как раз уложился - 254 символа. дабы узнать кого использовать в string.find(texture, "Bomb_08") юзай /script texture = GetContainerItemInfo(bagID, slot) DEFAULT_CHAT_FRAME:AddMessage(texture) bagID от 0 до 4 slot тут http://www.wowwiki.com/API_UseContainerItem?oldid=265827 или выведи вобще все вещи в сумках, дабы не париться - достаточно вставить в string.find уникальный кусочек текста из названия любой получится: /script local fg, i, j for i = 0, 4 do for j = 1, GetContainerNumSlots(i) do texture=GetContainerItemInfo(i, j) if(texture) then DEFAULT_CHAT_FRAME:AddMessage(texture) end end end дабы запустить из другого макроса используй RunMacro("Grenade") например, если ты так назвал, то с петом выглядит: /script local i, fg, name fg=0 for i = 1, NUM_PET_ACTION_SLOTS, 1 do name = GetPetActionInfo(i) if( name == "Furious Howl" ) then CastPetAction(i) fg = 1 break end end if(fg==0) then RunMacro("Grenade") end Единственное, чего я не понял - что это такое: for i = 1, NUM_PET_ACTION_SLOTS, 1 почему не for i = 1, NUM_PET_ACTION_SLOTS В супермакро же все донельзя просто и уныло UseItemByName("Ториевая граната"), аж скука - хотя оно внутри работает почти так же, мне места не хватило чтобы по имени использовать в стандартном, а разбивать на 2 макроса лень. Хотя если очень надо по имени использовать - могу двумя макросами написать - делов на пару мин. Но в супермакро есть довольно приятная штука: DoOrder("крутая граната", "менее крутая", "совсем хреновая") что первое найдет - то и заюзает, ну или DoOrder("healing potion", "lesser healing potion", "healing touch") p.s. Надеюсь, что исчерпывающее ответил на вопросы) -
да, 50 это максимум
-
То есть ты заметил увеличение работы взятия в таргет с 41->50 ярдов? И какой вариант сработал?
-
Подправил макросы на снятие последнего бафа. P.s. не надо мне эссенций уже
-
Покопался я с этими дистанциями - если ничего не напутал - должно работать, но ты все таки проверь - стало лучше или нет должно браться в таргет не в радиусе 41 ярд, а 50 /script if(not(UnitName("target")) or UnitIsFriend("player", "target")) then SetCVar("targetNearestDistance", 50) SetCVar("targetNearestDistanceRadius", 1) TargetNearestEnemy() SetCVar("targetNearestDistance", GetCVarDefault("targetNearestDistance")) SetCVar("targetNearestDistanceRadius", GetCVarDefault("targetNearestDistanceRadius")) end CastSpellByName("Sap") Тут я на время взятия в таргет меняю эти переменный а потом восстанавливаю, но я могу и ошибаться. Если эффекта не будет - сделай следующее. отдельно запусти /script SetCVar("targetNearestDistance", 50) SetCVar("targetNearestDistanceRadius", 1) и перезапусти клиент, а лучше еще удостоверься что всё ок заглянув в файлик WoW->WTF->Config.wtf там столбик перменных ищи "targetNearestDistance"=50 и "targetNearestDistanceRadius"=1 - можешь только в файле кстати поменять. А назад чтобы вернуть - либо вручную ставь "targetNearestDistance"=41 "targetNearestDistanceRadius"=10 либо запускай макрос /script SetCVar("targetNearestDistance", GetCVarDefault("targetNearestDistance")) SetCVar("targetNearestDistanceRadius", GetCVarDefault("targetNearestDistanceRadius")) Как понимаешь если отдельно поменял в файле(макросом или вручную) - то используй макрос на самом верху этой страницы. А если все ок - то и этот в начале сообщения сойдет - назад все восстанавливает. А субстанций уже не надо, помог смеющийся рога.
-
У функции взять ближайшего врага в таргет есть свои настройки - она берет в таргет в эдаком бублике - между двумя концетрическими окружностями. Типо в 50 ярдах от тебя, но не ближе 5-ти. Можно это дело менять до 0-60 если не путаю, тебе в макрос эту смену запилить? P.s.Им шанс дропа поставили 2%, для 6 штук 300 мобов убить надо, так что на аук фармить - мазохизм)
-
А вот и поправка к сапу /script if(not(UnitName("target")) or UnitIsFriend("player", "target")) then TargetNearestEnemy() end CastSpellByName("Sap") p.s. Скиньте кто-нить пяток субстанций земли, задолбался фармить.
-
Cmex - вот - должно работать в большинстве случаев, а может вобще всегда пашет. в самом простом варианте /script local i = 1 while(UnitBuff("player", i))do i = i+1 end if(UnitBuff("player", i-1)) then CancelPlayerBuff(i-2) end А здесь я поставил защиту от спама - бафы буду слетать каждые 2 секунды при постоянном спаме /script if(not(prev)) then prev = GetTime() end cur=GetTime() if((cur-prev)>2) then local i = 1 while(UnitBuff("player", i))do i = i+1 end if(UnitBuff("player", i-1)) then CancelPlayerBuff(i-2) prev=cur end end if((cur-prev)>2) вместо двойки можешь любое число ставить - может и секунда норм
-
По человечески можешь написать? Ты хочешь скинуть с себя последний полученный баф? Могу предложить два решения - 1) смотрится строка бафов - и затем последний скидывается. Но в этой строке токо 30 бафов, и еще вполне может оказаться, что там нарушен порядок, и скинется неверная штука - надо тестить 2)до действия юзается макрос, и после действия еще раз - тогда он сравнивает чё было, и чё стало - что новое появилось - то снимет.
-
с сапом, что-нить аля /script if(not(UnitName("target"))) then TargetNearestEnemy() end CastSpellByName("Sap")
-
Почему не получается вытянуть имя? _, _, Color, Ltype, Id, Enchant, Suffix, Name = string.find(itemLink, "|?c?f?f?(%x*)|?H?([^:]*):?(%d*):?(%d*):?(%d*)|?h?%[?([^%[%]]*)%]?|?h?|?r?") %s %q подставлял - никак, да и так никак, можно кинуть ссылку какую, где написано как шаблон для разбора этот пишется? И еще небольшой вопрос - пытался эксперементировать с 3-им параметром Suffix - я так понял там доп инфа что-то вроде кем скрафчено, и тому подобное, но ничего путного не вышло.
-
Пашет токо на нежити, кидали где-то пруфы, что должна давать фиксированный прирост демаги, а не +spelldamage. Какая-то там особая аура у нее, так или иначе этот вопрос уже поднимался.
-
Протопал - это экстремальный билд, танчить боссов в принципе можно, но нужен вагон химии, охрененный шмот, который просто так не достанешь, время на аггро, и танчить токо тех, кто аггр не сбрасывает. Одним словом экстрим, и возможен в рейдах, где рейд не на волоске висит. То бишь это надо с рл договариваться, и то - если этот инст без проблем проносится, и тебя танк подстраxyет в случае чего. А 5-10 пипл можно танчить в любом билде, лишь бы лужа была, и шмот пожирнее. Для шоло, стратов - посоветовал бы палом хоть пару раз в зг сходить, и взять тринку с сердца хаккара на спд дамаг, и под ней нежить агрить лужей и Holy Wrath. И еще для нежити https://db.valkyrie-wow.org/?item=19812 . А билд на тебя я бы посоветовал примерно такой, ежели ты только танчить хочешь, совместимость с хилом - оч мешает. http://valkyrie-wow.com/armory/tool/talentCalculator?class=2&build=05050100000000050051335001521052200000000000 Здесь больше маны, и тратится ее меньше, на защиту норм взято, и прилично увеличен урон для соло целей, ибо в хреновом шмоте проблема с аггром полюбому будет. Еще советую изучить инжу, и пулить гранатой пак, потом под баблом/бопом кастить под триней в пак все что можно и не можно(holy wrath имею ввиду). И запасайся https://db.valkyrie-wow.org/?item=13443. Советую пофармить тут: https://db.valkyrie-wow.org/?npc=7107 Тут падают демонические руны, эти баночки на ману(можно вместе заюзать и 2к маны восстановить) баночки на хп, и еще куча всего. По шмоту обращайся - что-нить подберем пререйдовое. p.s. полгода назад, когда я танчил шоло/страты в протопале, у меня дамаг был на уровне магов, щас правда прилично пофиксили все это дело, но прилично наберется. И да, палы созданы для паков. А мишки в фелвуде как фармились... штук по 10-15 за раз.
-
Да вроде нормальный билд, до лужи в холике сначала дотянись - и на паках нет проблем, а дальше сам смотри. Уверен, иллюминейшен тя не раз спасет, когда маны не особо много. Единственное что - быть может стоит побольше кинуть талов в Seal of Rightenous - если что 1 холи дамаг дает 3 единицы аггра. http://valkyrie-wow.com/armory/tool/talentCalculator?class=2&build=15503100500000052051335001501000000000000000 Ну это сам поэксперементируй, в принципе прибавка не такая уж и сильная. А про хила - сам долго хилил без очков в холике, всегда входил в первую тройку по хилу. Но нужно что-нибудь жрать на восстановление маны.Хотя в холике конечно приятнее.
-
Ну вот у меня в аддоне при клике по фрейму идет хил, но таргет при этом не выбирается. Т.е. в фрейме я танка могу держать, а хилить кого-то еще. Я не знаю, как макросом узнать в кого ща каст летит.
-
Как узнать цель, в которую я что-то кастю в данный момент? Имеется ввиду начал кастить, а потом цель поменялась пару раз во время каста, еще как-то можно кастить даже без выбора цели(аддон такое позволяет, хз как).
-
Server Security | World of Warcraft Уважаемые подписчики! Сегодня непосильными усилиями была сформирована небольшая команда, которая будет работать с сервером непосредственно. То есть на внутриигровые должности были назначены определенные люди, в честности и порядочности которых мы не сомневались ни на мгновение и, как выяснилось, зря. Администратором стал Kratos, игровым мастером Rescor, а модератором Haer. Все бы, да ничего, но не прошло и получаса, как новоиспеченный Rescor уже успел отличиться, продав небезызвестной на нашем сервере гильдии азербайджанцев несколько комплектов рейдовых доспехов, причем за весьма смешные деньги, на которые даже не снять дешевую шлюху из придорожного кафе. Проведя небольшую внутриигровую проверку, было принято решение выгнать Rescor'а с проекта и на какое-то время заморозить учетные записи представителей гильдии азербайджанцев, что, в свою очередь, вызвало ряд недовольств в сторону Администрации, после чего начались очень не простые переговоры. Выпив не одну бутылку паленой водки, мы решили пойти на встречу гильдии азербайджанцев и разморозить их учетные записи, взамен чего они найдут Rescor'а, объяснят ему все по понятиям, ну а дальше сами понимаете. На фоне этой более менее радостной новости, мы объявляем розыск Rescor'а за весьма достойную награду, пока до него не добрались азербайджанцы. Абсолютно любая информация будет полезна и, возможно, позволит сохранить ему жизнь. С уважением, Администрация.
