3. Coding.
Маленький словарик.
1. True – истина, правда.
2. False – ложь.
3. If – если.
4. Else – еще.
5. Elseif – еще если (так же переводится если имеется, но это когда вычисляется True, пишется именно вместе, в PHP языке насколько помню можно двумя словами, так, небольшое отсутпление).
6. Not – не.
7. Then – значит, то.
8. End – конец.
9. Nil – неизвестно.
10. String – строка.
Постараюсь разобрать, какие знания нам нужны в LUA и WoWAPI для успешного кодинга.
Это представление о функции (переменная внутри аддона) она доступна только на этом сегменте (тобишь только для этого аддона). Начинается с local, где arg имя функции, как правило, говорит само за себя.
По local хочу еще добавить, что если Вы пишите например так:
И
Это абсолютно 2 разные вещи, это я к тому, что LUA чувствителен к регисту.
Есть такой вариант
PHP код:
local func = function(arg)
***
end
Тоже функция, тоже начинается с local, но заканчивается на end, func – это название самой функции, этим вариантом мы будем пользоваться когда будем создавать backdrop, fontstring и т.д.
PHP код:
if(arg) then
***
end
Это условие. Начинается с if, кончается на end. Каков смысл этого? Идёт проверка условия, где условие это (arg), мы проверяем его на ложь (false), истина (true). Можно делать в условии, можно в функции.
Пример использования.
PHP код:
if (arg) == true then
elseif (arg2) then
end
Среда применения? Незаменимая штука когда, к примеру, для одного фрейма хочется задать один параметр, а для другого, второй.
Ниже рассмотрим прикладные WidgetAPI и т.д.
PHP код:
***:SetStatusBarTexture(texture)
Как раз таким способом задается текстура для нашей полосы хп, мп и т.д.
PHP код:
***:SetText(text)
Пишем какой-либо текст. Альтернативы? Существует :SetFormattedText, он намного эффективней по ресурсам и более продвинут.
PHP код:
***:SetFont(font, size, style)
Устанавливаем шрифт, где font – путь к шрифту, size – размер, style – вид шрифта, может быть "OUTLINE", "MONOCHROME", "THIOUTLINE", насчет стиля это по вкусу. Я для пиксельного шрифта советую "MONOCHROME", для обычного можно и не делать вовсе. Опять же чисто косметическое решение.
PHP код:
***:SetStatusBarColor(r, g, b)
Ставим цвет для Вашего фрейма, можно задать абсолютно любой цвет. По цветам могу добавить, что прописываются они таким образом:
Прописывается от 0 до 1 это в "%", тоесть х/255
пример:
Выглядит так
PHP код:
***:SetStatusBarColor(0.22, 0.22, 0.22)
PHP код:
***:SetVertexColor(r, g, b)
Применяется обычно для фонов фреймов, для затемнения можно сделать 0.3, 0.3, 0.3.
PHP код:
***:SetBackdrop(backdrop)
Делаем подложку Вашему фрейму, детальней будет чуть позже.
PHP код:
***:SetFontString(frame, font, size, style)
Аналогично с ***: SetFont, только тут идет привязка к определенному фрейму, где фрейм это frame, опять же, об этом позже.
PHP код:
***:SetFrameLevel(level)
Устанавливаем уровень вашего фрейма, таким образом можно сделать, допустим, полоску хп над полоской мп. От 0-100.
PHP код:
***:SetFrameStrata(strata)
Как бы уровень важности данного фрейма, множество вариантов, например, "HIGH", "MEDIUM","LOW", "BACKGROUND" - названия, думаю, говорят сами за себя.
PHP код:
***:SetSize(size)
Размер чего-либо. Им можно заменять :SetWidth и :SetHeight. Прописывается так:
PHP код:
***:SetSize(124, 124) где 124 это ширина и высота.
PHP код:
***:SetAlpha(alpha)
Задаем прозрачность фрейму от 0 до 1. Тут замечу, что не всем элементам можно задавать прозрачность именно таким способом, для экшнбаров (например, когда делается маусовер для них) надо делать функцию, точно так же и для портретов в юнитфреймах.
PHP код:
***:SetWidth(width)
Ширина.
PHP код:
***:SetHeight(height)
Высота.
PHP код:
***:SetScale(scale)
Задаем значение скейла для фрейма.
PHP код:
***:SetParent(frame)
Прописываем принадлежность к фрейму.
PHP код:
***:SetPoint(point)
Прописываем положение объекту. Это самый простой вариант, он содержит только 1 аргумент (point). Область применения? Это основа всего, практически, ни один фрейм не появится на экране без этого аргумента, к примеру, можно представить варианты расположения точек на экране таким образом:

Обязательно (!) пишется в кавычках. Есть более "продвинутый" вариант.
PHP код:
***:SetPoint(point, frame, relativepoint, x, y)
Пояснение:
Point – Точка объекта которую мы привязываем к чему-нибудь.
Frame – Сам фрейм, к которому идёт привязка всего, в данном случае если говорить о экране то пишем UIParent (обязательно так).
Relativepoint – Точка на frame к которой идёт привязка.
X, Y – отступы по горизонтали и вертикале, вспомните школу, представьте координатную плоскость, тут всё так же, x с плюсом значит фрейм двигается вправо, x с минусом значит фрейм двигается влево, y с плюсом значит фрейм двигается наверх, y с минусом значит фрейм двигается вниз. Всё просто.
PHP код:
***:SetJustifyH(point)
Выравнивание, допустим, шрифта, где point обычно это "CENTER". Косметическое решение.
Есть вот такое еще решение:
PHP код:
***:SetJustifyV(point)
На самом деле можно продолжать бесконечно, ибо WoWAPI на это дело очень расщедрилось, в общем, если когда-то, что-то в коде не понятно, не понятно, что значит та или иная функция просто заходим сюда и ищем то, что нужно. Всё довольно-таки просто.