Автор | Сообщение |
---|---|
<Oùt of Control> Сервер: Outland Рейтинг поля боя: 2156 2х2: 2467 3х3: 2833 |
Можно ли скриптом "вылечить" шд стенс? Т.е. что бы в шд была не стелс панель а обычная или новая |
06 сен 2012, 16:07 |
|
|
0
удавка писал(а): BlackStorm писал(а): Код: --Buffs BuffFrame:ClearAllPoints();BuffFrame:SetPoint("CENTER", PlayerFrame, "CENTER", 0, 0);BuffFrame.SetPoint = function() end --Debuffs На таргет/фокус к сожалению не помню, видел на каком-то буржуйском форуме, если опять обнаружу - закину. (Если никто не напишет офк)
не работает :( дебаффы так и остались на своем стандартном положении(
Держи архивчик, координаты тут мои, так что сам поменяешь.
|
06 сен 2012, 16:37 |
|
|
0
Akrololz писал(а): Можно ли скриптом "вылечить" шд стенс? Т.е. что бы в шд была не стелс панель а обычная или новая
Код: local shadowdancebar=7 MainMenuBarArtFrame:Execute([[ buttons = table.new() for i = 1, 12 do table.insert(buttons, self:GetFrameRef('ActionButton'..i)) end ]]) MainMenuBarArtFrame:SetAttribute('_onstate-page', [[ for i, button in ipairs(buttons) do button:SetAttribute('actionpage', tonumber(newstate)) end ]]) RegisterStateDriver(MainMenuBarArtFrame, 'page', function() local class, spec = select(2, UnitClass('player')), GetSpecialization() local pages = { ['DRUID'] = '[bonusbar:1,nostealth] 7; [bonusbar:1,stealth] 8; [bonusbar:2] 8; [bonusbar:3] 9; [bonusbar:4] 10;', ['WARRIOR'] = '[bonusbar:1] 7; [bonusbar:2] 8; [bonusbar:3] 9;', ['PRIEST'] = '[bonusbar:1] 7;', ['ROGUE'] = '[bonusbar:1] 7; [form:3] '..shadowdancebar..';', ['WARLOCK'] = '[form:2] 10;', ['MONK'] = '[form:1] '..(spec == 1 and 8 or spec == 2 and 9 or spec == 3 and 7 or 9)..'; [form:2] 7;', ['DEFAULT'] = '[vehicleui] 12; [bar:2] 2; [bar:3] 3; [bar:4] 4; [bar:5] 5; [bar:6] 6;', } local condition, page = pages['DEFAULT'], pages[class] if page then condition = condition..' '..page end condition = condition..' 1' return condition end) |
06 сен 2012, 16:50 |
|
<Oùt of Control> Сервер: Outland Рейтинг поля боя: 2156 2х2: 2467 3х3: 2833 |
Fernir писал(а): Akrololz писал(а): Можно ли скриптом "вылечить" шд стенс? Т.е. что бы в шд была не стелс панель а обычная или новая
Код: local shadowdancebar=7 MainMenuBarArtFrame:Execute([[ buttons = table.new() for i = 1, 12 do table.insert(buttons, self:GetFrameRef('ActionButton'..i)) end ]]) MainMenuBarArtFrame:SetAttribute('_onstate-page', [[ for i, button in ipairs(buttons) do button:SetAttribute('actionpage', tonumber(newstate)) end ]]) RegisterStateDriver(MainMenuBarArtFrame, 'page', function() local class, spec = select(2, UnitClass('player')), GetSpecialization() local pages = { ['DRUID'] = '[bonusbar:1,nostealth] 7; [bonusbar:1,stealth] 8; [bonusbar:2] 8; [bonusbar:3] 9; [bonusbar:4] 10;', ['WARRIOR'] = '[bonusbar:1] 7; [bonusbar:2] 8; [bonusbar:3] 9;', ['PRIEST'] = '[bonusbar:1] 7;', ['ROGUE'] = '[bonusbar:1] 7; [form:3] '..shadowdancebar..';', ['WARLOCK'] = '[form:2] 10;', ['MONK'] = '[form:1] '..(spec == 1 and 8 or spec == 2 and 9 or spec == 3 and 7 or 9)..'; [form:2] 7;', ['DEFAULT'] = '[vehicleui] 12; [bar:2] 2; [bar:3] 3; [bar:4] 4; [bar:5] 5; [bar:6] 6;', } local condition, page = pages['DEFAULT'], pages[class] if page then condition = condition..' '..page end condition = condition..' 1' return condition end)
Не работает к сожалению = / |
06 сен 2012, 18:31 |
|
|
0
пришел домой и понял, что какой-то бред написал. попозже напишу нормально upd: нормально Код: local shadowdancebar=7 local f = CreateFrame('frame', 'myownstatedriver', UIParent, 'SecureHandlerStateTemplate') for i=1,12 do f:SetFrameRef('ActionButton'..i, _G['ActionButton'..i]) end f:Execute([[ buttons = table.new() for i = 1, 12 do table.insert(buttons, self:GetFrameRef('ActionButton'..i)) end ]]) f:SetAttribute('_onstate-page', [[ for i, button in ipairs(buttons) do button:SetAttribute('actionpage', tonumber(newstate)) end ]]) local getBar = function() local class, spec = select(2, UnitClass('player')), GetSpecialization() local pages = { ['DRUID'] = '[bonusbar:1,nostealth] 7; [bonusbar:1,stealth] 8; [bonusbar:2] 8; [bonusbar:3] 9; [bonusbar:4] 10;', ['WARRIOR'] = '[bonusbar:1] 7; [bonusbar:2] 8; [bonusbar:3] 9;', ['PRIEST'] = '[bonusbar:1] 7;', ['ROGUE'] = '[bonusbar:1] 7; [form:3] '..shadowdancebar..';', ['WARLOCK'] = '[form:2] 10;', ['MONK'] = '[form:1] '..(spec == 1 and 8 or spec == 2 and 9 or spec == 3 and 7 or 9)..'; [form:2] 7;', ['DEFAULT'] = '[vehicleui] 12; [bar:2] 2; [bar:3] 3; [bar:4] 4; [bar:5] 5; [bar:6] 6;', } local condition, page = pages['DEFAULT'], pages[class] if page then condition = condition..' '..page end condition = condition..' 1' return condition end RegisterStateDriver(f, 'page', getBar()) херасе я навернул |
06 сен 2012, 19:09 |
|
|
0
Сори если уже было!
1. Делаю аддончик по гайду чтобы на стандартных фреймах таргета фокуса и собственном показывало ХП / %
использую код: Код: FrameList = {"Player", "Target", "Focus"} сыплет ошибками :(
2. не могу найти отдельный рабочий код чтобы делал темные бордеры аля Lorti на стандартных фреймах таргета фокуса и собственном + минимапа. если у кого нить есть поделитесь плз |
06 сен 2012, 20:18 |
|
|
1
nesmeshno писал(а): Сори если уже было!
1. Делаю аддончик по гайду чтобы на стандартных фреймах таргета фокуса и собственном показывало ХП / %
использую код: Код: FrameList = {"Player", "Target", "Focus"} сыплет ошибками :(
2. не могу найти отдельный рабочий код чтобы делал темные бордеры аля Lorti на стандартных фреймах таргета фокуса и собственном + минимапа. если у кого нить есть поделитесь плз
Код: local fixvalue = function(val) if(val >= 1e6) then return ('%.2f'..SECOND_NUMBER_CAP):format(val / 1e6):gsub('%.?0+(['..FIRST_NUMBER_CAP..SECOND_NUMBER_CAP..'])$', '%1') elseif(val >= 1e4) then return ('%.1f'..FIRST_NUMBER_CAP):format(val / 1e3):gsub('%.?0+(['..FIRST_NUMBER_CAP..SECOND_NUMBER_CAP..'])$', '%1') else return val end end hooksecurefunc("TextStatusBar_UpdateTextStringWithValues", function(self) for _,v in pairs({"Player", "Target", "Focus"}) do _G[v.."FrameHealthBar"].TextString:SetText(format("%s/%s (%.0f)",fixvalue(UnitHealth(v)), fixvalue(UnitHealthMax(v)), (UnitHealth(v)/UnitHealthMax(v))*100)) end end) |
06 сен 2012, 21:41 |
|
|
0
Спасибо :) немного переделал под формат ХП / %
Код: local fixvalue = function(val)
|
06 сен 2012, 22:02 |
|
|
1
вот код на кастрандом (старый, т.е. если спелл не готов - кастуется следущий а не застревает на этом) для дк (не забываем сохранять файл с кодом в utf-8) спеллы в коде видно. Код: local handler = CreateFrame("Button", "MyCastRandHandler", UIParent, "SecureHandlerClickTemplate") local button = CreateFrame("Button", "mrb", handler, "SecureActionButtonTemplate") button:SetAttribute("type", "spell") handler:Execute( [[ castList = newtable("Ледяное прикосновение","Удар чумы","Воющий ветер", "Некротический Удар", "Ледяной удар", "Уничтожение") listSize = #castList secureButton = self:GetChildren() ]]) SecureHandlerWrapScript(button, "OnClick", handler, [[ secureButton:SetAttribute("spell", castList[random(listSize)]) ]]) исправленная версия отдельной шедоуденс панели Код: local shadowdancebar=2 local f = CreateFrame('frame', 'myownstatedriver', UIParent, 'SecureHandlerStateTemplate') for i=1,12 do f:SetFrameRef('ActionButton'..i, _G['ActionButton'..i]) end f:Execute([[ buttons = table.new() for i = 1, 12 do table.insert(buttons, self:GetFrameRef('ActionButton'..i)) end ]]) f:SetAttribute('_onstate-page', [[ for i, button in ipairs(buttons) do button:SetAttribute('actionpage', tonumber(newstate)) end ]]) local getBar = function() local class, spec = select(2, UnitClass('player')), GetSpecialization() local pages = { ['DRUID'] = '[bonusbar:1,nostealth] 7; [bonusbar:1,stealth] 8; [bonusbar:2] 8; [bonusbar:3] 9; [bonusbar:4] 10;', ['WARRIOR'] = '[bonusbar:1] 7; [bonusbar:2] 8; [bonusbar:3] 9;', ['PRIEST'] = '[bonusbar:1] 7;', ['ROGUE'] = '[stance:1] 7; [stance:3] '..shadowdancebar..';', ['WARLOCK'] = '[form:2] 10;', ['MONK'] = '[form:1] '..(spec == 1 and 8 or spec == 2 and 9 or spec == 3 and 7 or 9)..'; [form:2] 7;', ['DEFAULT'] = '[vehicleui] 12; [bar:2] 2; [bar:3] 3; [bar:4] 4; [bar:5] 5; [bar:6] 6;', } local condition, page = pages['DEFAULT'], pages[class] if page then condition = condition..' '..page end condition = condition..' 1' return condition end RegisterStateDriver(f, 'page', getBar()) почитал первый топик - биг дебаффы я подсказал, да много чего еще. писец, все эти скрипты надо чинить |
06 сен 2012, 22:19 |
|
|
0
Если еще кого-то раздражает баг со стандартными арена фреймами, когда при изменении с помощью скрипта/move anything они периодически меняют свою позицию и размер, вот скрипт-лекарство:
/run ArenaEnemyFrame1.SetPoint = function() end |
06 сен 2012, 23:53 |
|
<Oùt of Control> Сервер: Outland Рейтинг поля боя: 2156 2х2: 2467 3х3: 2833 |
Спасиб Фернир) по теме ещё нужен скрипт на биг дебафы(тот что выше паладин какой-то оставил не работает к сожалению) и ренж покраснение, ах да и ещё очень хотелось бы чуть подредактировать ХП/% таргета/свои фокуса, если не лень плз уберите сотые значения и поставьте % в скобках, т.е. было 155.4т/155.4т(100) а чтоб было 155т/155т(100%)
|
07 сен 2012, 00:27 |
|
|
1
Akrololz писал(а): Спасиб Фернир) по теме ещё нужен скрипт на биг дебафы(тот что выше паладин какой-то оставил не работает к сожалению) и ренж покраснение, ах да и ещё очень хотелось бы чуть подредактировать ХП/% таргета/свои фокуса, если не лень плз уберите сотые значения и поставьте % в скобках, т.е. было 155.4т/155.4т(100) а чтоб было 155т/155т(100%)
Код: hooksecurefunc("TextStatusBar_UpdateTextStringWithValues", function(self) for _,v in pairs({"Player", "Target", "Focus"}) do _G[v.."FrameHealthBar"].TextString:SetText(format("%s/%s (%.0f)",AbbreviateLargeNumbers(UnitHealth(v)), AbbreviateLargeNumbers(UnitHealthMax(v)), (UnitHealth(v)/UnitHealthMax(v))*100)) end end) Код: TargetFrame_UpdateAuraPositions = function(self, name, na, noA, lList, uf, maxrW, oX) local size local large, small = 29, 16 local oY, rW, fbor = 3, 0, 1 for i=1, na do if lList[i] then size = large oY = 6 else size = small end if i==1 then rW = size self.auraRows = self.auraRows + 1 else rW = rW + size + oX end if rW > maxrW then uf(self, name, i, noA, fbor, size, oX, oY) rW = size self.auraRows = self.auraRows + 1 fbor = i oY = 3 else uf(self, name, i, noA, i-1, size, oX, oY) end end end Код: hooksecurefunc(getmetatable(_G['ActionButton1HotKey']).__index, 'SetVertexColor', function(self, ...) local b = self:GetParent() local action = ActionButton_CalculateAction(b) local isUsable, notEnoughMana = IsUsableAction(action) local icon = _G[b:GetName()..'Icon'] if icon then if (ActionHasRange(action) and IsActionInRange(action) == 0) then icon:SetVertexColor(1, 0, 0) return elseif (notEnoughMana) then icon:SetVertexColor(.2, .2, .2) return elseif (isUsable) then icon:SetVertexColor(1, 1, 1, 1) return else icon:SetVertexColor(0.4, 0.4, 0.4, 1) return end end end) |
07 сен 2012, 10:14 |
|
|
0
Так и не получается перенести фреймы игрока, таргета, фокуса посредством скриптов. Так намного удобнее тем, у кого несколько персонажей. Способом, написанным в этом топике Витчером, не выходит. Подскажите, пожалуйста.
Заодно нужно перенести кастбары таргета и фокуса.
Заранее спасибо. |
07 сен 2012, 14:15 |
|
|
0
BlackStorm писал(а): удавка писал(а): BlackStorm писал(а): Код: --Buffs BuffFrame:ClearAllPoints();BuffFrame:SetPoint("CENTER", PlayerFrame, "CENTER", 0, 0);BuffFrame.SetPoint = function() end --Debuffs На таргет/фокус к сожалению не помню, видел на каком-то буржуйском форуме, если опять обнаружу - закину. (Если никто не напишет офк)
не работает :( дебаффы так и остались на своем стандартном положении( Держи архивчик, координаты тут мои, так что сам поменяешь. спасибо) только у меня почему то баффы и дебаффы мои двигаются вместе(( а мне только дебаффы мои надо было передвинуть, пришлось moveanything передвинуть(( а так не хотелось аддоны ставить( |
07 сен 2012, 17:17 |
|
<Oùt of Control> Сервер: Outland Рейтинг поля боя: 2156 2х2: 2467 3х3: 2833 |
Fernir писал(а): на значения Код: hooksecurefunc("TextStatusBar_UpdateTextStringWithValues", function(self) for _,v in pairs({"Player", "Target", "Focus"}) do _G[v.."FrameHealthBar"].TextString:SetText(format("%s/%s (%.0f)",AbbreviateLargeNumbers(UnitHealth(v)), AbbreviateLargeNumbers(UnitHealthMax(v)), (UnitHealth(v)/UnitHealthMax(v))*100)) end end)
а 100% нельзя поставить вместо простых 100?
Fernir писал(а): red range Код: hooksecurefunc(getmetatable(_G['ActionButton1HotKey']).__index, 'SetVertexColor', function(self, ...) local b = self:GetParent() local action = ActionButton_CalculateAction(b) local isUsable, notEnoughMana = IsUsableAction(action) local icon = _G[b:GetName()..'Icon'] if icon then if (ActionHasRange(action) and IsActionInRange(action) == 0) then icon:SetVertexColor(1, 0, 0) return elseif (notEnoughMana) then icon:SetVertexColor(.2, .2, .2) return elseif (isUsable) then icon:SetVertexColor(1, 1, 1, 1) return else icon:SetVertexColor(0.4, 0.4, 0.4, 1) return end end end)
Тут ещё кстати какая-то беда, но несовсем важная, некоторые бафы на себя покрываются этой красной зоной иногда почему-то, или чёрной(из-за скрипта на затемнение фреймов) но это не столь важно) |
07 сен 2012, 17:59 |
|
|
0
есть ли возможность затемнить StanceBar? пытался и ингейм и через lua StanceBarFrameTexture:SetVertexColor(0, 0, 0) не работает как и другие вариации: StanceBarFrame, StanceButton1-3, етс хотя другие модификации (SetAlpha, SetScale) на него работают есть идеи?
|
07 сен 2012, 19:22 |
|
|
0
каким должен быть код для аддона, чтобы миникарта была всегда прозрачная, а по маусоверу становилась видимой? |
08 сен 2012, 16:13 |
|
|
0
Всем привет! У меня такая проблема. Имеется аддон, но в нём несколько неприятных моментов. Может кто сможет помочь их исправить. Проблемы следующие (см скриншот).
1) На фреймах цели и фокуса за полосой жизни появляется синяя полоска. Как от неё избавиться?
2) Почему-то текст жизни, маны игрока и цели остаются в углу при перетаскивании фреймов в другое место. как сделать так, чтобы текст двигался вместе с фреймми а не стоял на месте?
3) Фрейм фокуса всегда находится на одном месте. Если я перетаскиваю фрейм в другое место, то при следующем входе в игру этот фрейм опять встает на своё место. Как сделать так что бы фрейм фокуса сохранялся в том месте где я пожелаю?
Прилагаю Вам файлы аддона. Кому не турдно и может посомтрите и скажите где и что исправить. Заранее высказываю благодарность! |
08 сен 2012, 23:54 |
|
|
0
Подскажите, пожалуйста, как передвинуть каст бары таргета и фокуса?
Вариант: TargetFrameSpellBar:ClearAllPoints() не пашет. |
09 сен 2012, 15:48 |
|
<Имя Говорит Само за Себя> Сервер: Гордунни |
0
Код:
|
09 сен 2012, 15:57 |
|