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

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

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

    Краткий гайд по настройке и допиливанию TukUI для 3.3.5а

    Доброго времени суток, друзья!

    Если вы — как и я — всерьёз увлечены World of Warcraft, то пребывание в мире игры отнимает у вас огромное количество времени. Различные игровые аспекты, будь то битва с боссами в Цитадели Ледяной Короны или же схватка на БГ, должны быть максимально удобными и понятными, дабы не отнимать наше время в попытках понять, что же и где находится. Безусловно, многие люди давно привыкли к интерфейсу игры по-умолчанию, или же заменяют стандартные панели действия на Bartender 4, позволяющий легко биндить умения на нужные нам клавиши. Но если вам, как и мне, хочется полного преображения интерфейса — без использования специализированных сборок не обойтись. Об одной такой сегодня и пойдёт речь.

    TukUI, заботливо размещённый на wowroad, хорош абсолютно во всех аспектах, однако, требует изрядного допиливания, дабы все элементы стандартного интерфейса Blizzard, равно как и наши аддоны, выглядели одинаково, не выбиваясь из общего стиля. Поиск в Интернете по данной теме не выдаёт ничего вразумительного и цельного, поэтому я и решился на написание данного гайда, выйдя из многолетнего режима read only.

    Изучаем основы непривычного интерфейса.

    Итак. Что же нам нужно знать? TukUI написан на LUA — скриптовом языке программирования, с понятным — даже новичку! — синтаксисом, и, грубо говоря, представляет собой огромное количество конфигурационных файлов, объединённых в одном мастер-конфиге. Подобная модульная схема позволяет без проблем редактировать тот или иной элемент, не роясь в сотнях тысяч строках кода, в поисках заветной переменной.
    Код HTML:
    Если вам хочется быстро разобраться, что это за зверь такой, то примеры, сниппеты и т.д. по ссылке: http://tylerneylon.com/a/learn-lua/

    Скрытый текст

    Конечный результат наших трудов будет выглядеть приблизительно так:

    Вложение 504014
    [свернуть]


    Едва установив TukUI, пользователь попадает в не совсем привычную ему среду — волноваться не нужно, через короткий промежуток времени, вы не будете представлять себе, как можно было играть в World of Warcraft c другим интерфейсом пользователя. Дабы детально разобраться с всем свалившимся нам на голову разнообразием, начнём с описания основных интерфейсных команд, помогающих в управлении оболочкой.

    Скрытый текст

    1. /uihelp — краткая справка по командам TukUI
    2. /tukui — вывод конфигурационного меню (при установленном TukUI_ConfigUI)
    3. /uf (для версии с wowroad (12.хх)) или /moveui (начиная с 13 major версии) — Включает режим перемещения панелей.

      Скрытый текст

      Данной командой активизируется режим перемещения панелей. Выглядит это так:

      Вложение 504028
      Фреймы свободно перемещаются по экрану мышью.
      [свернуть]
    4. /resetui — Сброс всех настроек и переменных на значения по-умолчанию.
    5. /rl — Перезагрузка пользовательского интерфейса
    6. /heal — Вариант интерфейса для лекарей.
    7. /dps — Вариант интерфейса для МДД/РДД и танков.
    8. /hb — Биндим наши умения на требуемые клавиши.
    9. /resetgold — Сброс счетчика золота.
    10. /bags — Сортирует вещи в сумках/банке. Те же операции можно сделать и в GUI, но об этом чуть ниже.
    11. /gm — Вот уж не знаю, читают ли тикеты местные игровые мастера, но, при большом желании, вы можете его отправить при помощи данной команды.
    12. /frame — Показать имя окна на котором установлен редактор мышки
    13. /tukui — Показать меню настройки интерфейса. Команда работает при наличии аддона TukUI_ConfigUI&
    14. /ainv — Автопринятие приглашений в группу/рейд от друзей и гильдии по ключевому слову. Пример: /ainv (Привет!!!).
    15. /purchase — Позволит приобрести в банке дополнительные ячейки.
    [свернуть]


    Поговорим про оставшиеся тонкости в настройке. Первое, что бросается в глаза при использовании дополнения — отвратительный шрифт, которым выводится информация о критическом уроне, получении опыта, et cetera. Исправить данную оплошность можно простым способом: достаточно заменить .ttf шрифт из папки ./AddOns/Tukui/media/combat_font.ttf на нужный нам. Это может быть как Times New Roman или Helvetica, так и Comic Sans или любой другой, поддерживающий кириллические символы (Кодировка шрифта обязательно windows 1251!). В моём случае — стандартный Arial. Переименовываем наш .ttf в combat_font.ttf, и копируем с заменой по вышеозначенному пути. Готово!

    Редактируем конфигурационные файлы

    Теперь плавно переместимся "под капот", и займёмся редактированием непосредственно .lua файлов. Именно благодаря лёгкости синтаксиса языка, мы без проблем можем изменять параметры окон интерфейса. Для начала, добавим фон для чата — это увеличит читаемость текста, снизив нагрузку на глаза во время игры.

    Скрытый текст

    Чат будет выглядеть вот так:

    S9jLc41.png

    Для этого нам нужно отредактировать файл ./Scripts/Panels.lua, добавив следующий код после 70 строки (параметр INFO RIGHT(FOR STATS), выделено на скриншоте в спойлере):

    Скрытый текст

    5lsfzLX.png
    Код HTML:
    -- CHAT BG LEFT 
    
    local chatleftbg = CreateFrame("Frame", "TukuiChatBackgroundLeft", TukuiInfoLeft) 
    TukuiDB.CreateTransparentPanel(chatleftbg, TukuiCF["panels"].tinfowidth, TukuiDB.Scale(125), "BOTTOM", TukuiInfoLeft, "TOP", 0, TukuiDB.Scale(3))
    [свернуть]

    и файл ./Modules/Functions.lua, добавив после блока function TukuiDB.CreatePanel(f, w, h, a1, p, a2, x, y) (45 строка), следующий код:

    Скрытый текст

    Bu0G3Qh.png
    Код HTML:
    function TukuiDB.CreateTransparentPanel(f, w, h, a1, p, a2, x, y) 
    sh = scale(h) 
    sw = scale(w) 
    f:SetFrameLevel(1) 
    f:SetHeight(sh) 
    f:SetWidth(sw) 
    f:SetFrameStrata("BACKGROUND") 
    f:SetPoint(a1, p, a2, x, y) 
    f:SetBackdrop({ 
    bgFile = TukuiCF["media"].blank, 
    edgeFile = TukuiCF["media"].blank, 
    tile = false, tileSize = 0, edgeSize = mult, 
    insets = { left = TukuiDB.Scale(2), right = TukuiDB.Scale(2), top = TukuiDB.Scale(2), bottom = TukuiDB.Scale(2)} 
    }) 
    f:SetBackdropColor(.075,.075,.075,.7) 
    f:SetBackdropBorderColor(unpack(TukuiCF["media"].bordercolor)) 
    
    local border = CreateFrame("Frame", nil, f) 
    border:SetFrameLevel(0) 
    border:SetPoint("TOPLEFT", f, "TOPLEFT", TukuiDB.Scale(-1), TukuiDB.Scale(1)) 
    border:SetFrameStrata("BACKGROUND") 
    border:SetBackdrop { 
    edgeFile = TukuiCF["media"].blank, edgeSize = TukuiDB.Scale(3), 
    insets = {left = 0, right = 0, top = 0, bottom = 0} 
    } 
    border:SetBackdropColor(unpack(TukuiCF["media"].backdropcolor)) 
    border:SetBackdropBorderColor(unpack(TukuiCF["media"].backdropcolor)) 
    border:SetPoint("BOTTOMRIGHT", f, "BOTTOMRIGHT", TukuiDB.Scale(1), TukuiDB.Scale(-1)) 
    end
    [свернуть]
    [свернуть]


    С чатом разобрались. Но как быть, если разрешение нашего монитора маленькое (к примеру, у вас 13' ноутбук, скажем, трёхлетней давности — вряд-ли там установлен дисплей с высоким разрешением), и рейдбаффы закрывают какую-либо нужную информацию? Не беда — достаточно отредактировать .lua файл, отвечающий за показ данной информации, исправив значения по-умолчанию на нужные нам. Обращаю внимание, что данная настройка сугубо индивидуальна, и — в большинстве случаев — зависит от разрешения монитора.

    Скрытый текст

    ./Tukui/modules/buffs/buffs.lua
    Код HTML:
    local function CreateAuraHeader(filter, ...)
        local name    
        if filter == "HELPFUL" then name = "TukuiPlayerBuffs" else name = "TukuiPlayerDebuffs" end
    
        local header = CreateFrame("Frame", name, UIParent, "SecureAuraHeaderTemplate")
        header:RegisterEvent("UNIT_ENTERED_VEHICLE")
        header:RegisterEvent("UNIT_EXITED_VEHICLE")
        header:SetPoint(...)
        header:SetClampedToScreen(true)
        header:SetMovable(true)
        header:HookScript("OnEvent", ScanAuras)    
        header:SetAttribute("unit", "player")
        header:SetAttribute("sortMethod", "TIME")
        header:SetAttribute("template", "TukuiAuraTemplate")
        header:SetAttribute("filter", filter)
        header:SetAttribute("point", "TOPRIGHT")
        header:SetAttribute("minWidth", 300)
        header:SetAttribute("minHeight", 94)
        header:SetAttribute("xOffset", -36)
        header:SetAttribute("wrapYOffset", -68)
        header:SetAttribute("wrapAfter", 16)
        header:SetAttribute("maxWraps", 2)
    Меняем параметр 16 в строке header:SetAttribute("wrapAfter", 16) на необходимый нам, т.е. надо 10 бафов в ряд — значение параметра равно десяти.
    В строке header:SetAttribute("maxWraps", 2) число 2 — количество строк бафов можно сделать и 3 и 4.
    В строке header:SetAttribute("wrapYOffset", -68) число -68 — межстрочный интервал.
    Сохраняем файл, и в игре вводим /rl для перезагрузки интерфейса.
    [свернуть]


    Часто встречается проблема, что дружественный таргет отображет свои баффы в один ряд, что вызывает некоторые трудности при игре в низком разрешении. Лечится это так:

    Скрытый текст

    ./Tukui/modules/unitframes/layouts/tukui.lua
    Код HTML:
     if (unit == "target" and C["unitframes"].targetauras) or (unit == "player" and C["unitframes"].playerauras) then
                local buffs = CreateFrame("Frame", nil, self)
                local debuffs = CreateFrame("Frame", nil, self)
                
                if (T.myclass == "SHAMAN" or T.myclass == "DEATHKNIGHT" or T.myclass == "PALADIN" or T.myclass == "WARLOCK") and (C["unitframes"].playerauras) and (unit == "player") then
                    if T.lowversion then
                        buffs:SetPoint("TOPLEFT", self, "TOPLEFT", 0, 34)
                    else
                        buffs:SetPoint("TOPLEFT", self, "TOPLEFT", 0, 38)
                    end
                else
                    if T.lowversion then
                        buffs:SetPoint("TOPLEFT", self, "TOPLEFT", 0, 26)
                    else
                        buffs:SetPoint("TOPLEFT", self, "TOPLEFT", 0, 30)
                    end
                end
                
                if T.lowversion then
                    buffs:SetHeight(21.5)
                    buffs:SetWidth(186)
                    buffs.size = 21.5
                    buffs.num = 8
                    
                    debuffs:SetHeight(21.5)
                    debuffs:SetWidth(186)
                    debuffs:SetPoint("BOTTOMLEFT", buffs, "TOPLEFT", 0, 2)
                    debuffs.size = 21.5    
                    debuffs.num = 24
                else                
                    buffs:SetHeight(26)
                    buffs:SetWidth(252)
                    buffs.size = 26
                    buffs.num = 9
                    
                    debuffs:SetHeight(26)
                    debuffs:SetWidth(252)
                    debuffs:SetPoint("BOTTOMLEFT", buffs, "TOPLEFT", -2, 2)
                    debuffs.size = 26
                    debuffs.num = 27
                end
    Меняем buffs.num = * на цифру кратную желаемому числу строк, т.е. если нужны два ряда, то 8*2=16 и соответственно 18 (зависит от того в каком разрешении запущена игра)
    Меняем buffs:SetHeight(*) на цифру кратную желаемому числу строк, т.е. если нужны два ряда, то 21.5*2=43 и соответственно 52 (зависит от того в каком разрешении запущена игра)
    Сохраняем, перезагружаем интерфейс.
    [свернуть]

    Если вы желаете отображать здоровье/ману в процентах, минуя стандартное числовое значение, то делается это так:

    Скрытый текст

    ./Tukui/Core/Functions.lua

    Для изменения здоровья (строка 404-410):

    Скрытый текст

    Код HTML:
    health.value:SetFormattedText("|cff559655%s|r |cffD7BEA5|||r |cff559655%s|r |cffD7BEA5-|r |cff%02x%02x%02x%d%%|r", ShortValue(min), ShortValue(max), r * 255, g * 255, b * 255, floor(min / max * 100))
    [свернуть]

    Для изменения маны/энергии etc.(строка 507-521):

    Скрытый текст

    Код HTML:
    power.value:SetFormattedText("%d%% |cffD7BEA5-|r %s |cffD7BEA5|||r %s", floor(min / max * 100), ShortValue(min), ShortValue(max))
    [свернуть]
    [свернуть]

    Изменяем размер миникарты:

    Скрытый текст

    ./Tukui/modules/maps/minimap.lua
    Ищем строку TukuiMinimap:Size(144), и меняем значение параметра на подходящий нам размер миникарты.
    Финальный штрих: требуется изменить значения параметров
    Код HTML:
     Minimap:SetParent(TukuiMinimap)
    Minimap:ClearAllPoints()
    Minimap:SetSize(TukuiMinimap:GetWidth() -4, TukuiMinimap:GetHeight() -4)
    Minimap:SetPoint("TOPLEFT", 2, -2)
    на
    Код HTML:
    Minimap:SetSize(TukuiMinimap:GetWidth() -4, TukuiMinimap:GetHeight() -4)
    Minimap:SetPoint("TOPLEFT", 2, -2)
    [свернуть]


    Конечно, при должной усидчивости и кропотливому отношению, через конфигурационные файлы меняется абсолютно любой аспект интерфейса. И если я что-то обошёл вниманием в данном посте, то на официальном сайте выложены мануалы с комментариями. Правда, на английском. But, who cares?

    Приводим Blizzard фреймы, WIM, Aucionator и другие аддоны к единому стилю.

    Для лаконичности интерфейса (и дабы исключить "синдром франкенштейна", когда каждый элемент выглядит как ему хочется), нам потребуется установить следующие аддоны:
    1. TelUI_AddonSkins для преображения Recount
    2. Skinner для большинства оставшихся элементов интерфейса.

    Именно благодаря этим дополнениям, наш стандартный интерфейс преобразился:

    Скрытый текст


    Для вашего удобства, я запаковал уже готовые дополнения в .zip архив, разместив их на Яндекс Диске — именно поэтому названия аддонов кликабельны. Скачивайте, пользуйтесь. Установка стандартна.

    На этом на сегодня всё. Встретимся на просторах Азерота!

  2. 1 пользователь сказал cпасибо mikanight за это полезное сообщение:

    остановка (18.08.2017)

  3. #2
    Новичок
    Регистрация
    26.12.2017
    Сообщений
    1
    Поблагодарил(а)
    0
    Получено благодарностей: 0 (сообщений: 0).
    Репутация: 0
    А как собственно включить отображение маны числами? Перекопал все настройки, ничего про ману не нашел. Сейчас на деле у меня лишь полоса, из-за чего не сразу понятно холипал перед тобой или ппал.

  4. #3
    Новичок
    Регистрация
    14.10.2018
    Сообщений
    2
    Поблагодарил(а)
    0
    Получено благодарностей: 0 (сообщений: 0).
    Репутация: 0
    Skinner ne rabotaet, kucha oshibok lua...

Похожие темы

  1. tukui 5.4
    от Инфекция в разделе Корзина
    Ответов: 8
    Последнее сообщение: 08.01.2015, 00:40
  2. TukUI
    от Dontcrybaby в разделе Аддоны
    Ответов: 9
    Последнее сообщение: 28.06.2014, 20:46
  3. [Help] Агро в TukUI
    от Foximys в разделе Аддоны
    Ответов: 2
    Последнее сообщение: 21.11.2013, 12:59

Ваши права

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