• Страница 1 из 1
  • 1
Форум » Обсуждение аддонов » Разработка аддонов WoW » Замена грифонов
Замена грифонов
Nyll
Здравствуйте. Сегодня мы будем делать аддон который будет заменять надоедливых нам "Грифонов" по бокам панели со скилами на нужную нам картинку. Картинка обязательно должна быть в TGA формате.



Инструкция по созданию toc файла - тык
Ссылка на предыдущие статью - тык
Скачать notepad++ - тык
API функции - тык

SetTexture


Code
Texture:SetTexture("texture")

или
Code
Texture:SetTexture(red, green, blue [, alpha])


texture -- Путь до картинки(текстуры). Не забывайте что клиент не читает такие форматы как jpg, gif и т.д

red - Красный цвет. (0.0 - 1.0)
green - Зеленый цвет. (0.0 - 1.0)
blue - Синий цвет. (0.0 - 1.0)
alpha - Прозрачность.

Работа с кодом


Для начала создадим картинку которую будем использовать в аддоне. Так как у меня уже есть картинка (я приложу их к аддону в конце статьи) то я буду использовать свою, а вы свою.
ВАЖНО: картинку называем так как хотим называть подкоманды аддона.

Создаем документ lua, меняем кодировку на UTF-8 и пишем:

Code
function artic(msg)

artic - Название функции
msg - Аргумент

Дальше создаем условие:

Code
if (msg == "frost") then
print("Вы поставили картинку "..msg)
elseif (msg == "blood") then
print("Вы поставили картинку "..msg)
elseif (msg == "shadow") then
print("Вы поставили картинку "..msg)
elseif (msg == "unholy") then
print("Вы поставили картинку "..msg)
end


if - Задаем условие
msg == "frost" - Если msg (то что пишем после слеш команды) равно frost то срабатывает.
elseif - Приравниваем к if

Ну и так далее. Хочу напомнить что параметр if обязательно закрывается.

Идем дальше... Добавляем SetTexture к фрейме "Грифонов"
Так как сама фрейма грифонов уже присутствует в игровом клиенте нам нужно всего лишь заменить текстуру.

Code
MainMenuBarLeftEndCap:SetTexture("Interface\\AddOns\\art\\art\\"..msg..".tga")
MainMenuBarRightEndCap:SetTexture("Interface\\AddOns\\art\\art\\"..msg..".tga")
MainMenuBarLeftEndCap:Show()
MainMenuBarRightEndCap:Show()


"..msg.." - Мы берем информацию из условий (Не не зря я сказал чтобы называли картинку так как назовете условие)

Далее закрываем функцию

Code
end


И переходим к добавлению слеш команды.

Code
SlashCmdList["ARTIC_COMMAND"] = artic;
SLASH_ARTIC_COMMAND1 = "/art";


Вот весь то, что у нас получилось (код).

Code
function artic(msg)
      if (msg == "frost") then
print("Вы поставили картинку "..msg)
      elseif (msg == "blood") then
print("Вы поставили картинку "..msg)
      elseif (msg == "shadow") then
print("Вы поставили картинку "..msg)
      elseif (msg == "unholy") then
print("Вы поставили картинку "..msg)
end
MainMenuBarLeftEndCap:SetTexture("Interface\\AddOns\\art\\art\\"..msg..".tga")
MainMenuBarRightEndCap:SetTexture("Interface\\AddOns\\art\\art\\"..msg..".tga")
MainMenuBarLeftEndCap:Show()
MainMenuBarRightEndCap:Show()
end
SlashCmdList["ARTIC_COMMAND"] = artic;
SLASH_ARTIC_COMMAND1 = "/art";


Ну вот и все. То что у меня получилось я прикреплю ниже. Удачи вам в создании аддона!

[download]Art - для WoW 3.3[/download]
Прикрепления: 7320595.png (285.6 Kb)
Маме беркута привет!
Сообщение # 1 отредактировано Nyll - Суббота, 24.03.2012, 00:38
Kante
Born To be Free
У меня так их вообще нет:)
Сообщение # 2 написано 24.03.2012 в 01:51
Juline
!1
Пример скачай. Там текстуры.
Сообщение # 3 написано 24.03.2012 в 02:24
Cortix
Скаут
Juline, скорее всего имелось ввиду, что они у него вообще убраны.
Сообщение # 4 написано 24.03.2012 в 02:32
ViRTuS_PvL
Скаут
Автору конечно спс за работу) Но ведь есть какой то аддон, который меняет картинки) кстати у него в базе очень неплолхие модели (=
Сообщение # 5 написано 24.03.2012 в 06:34
Nyll
Quote (ViRTuS_PvL)
Автору конечно спс за работу) Но ведь есть какой то аддон, который меняет картинки) кстати у него в базе очень неплолхие модели (=

Зачем брать у кого-то если можешь сделать это сам?
Маме беркута привет!
Сообщение # 6 написано 24.03.2012 в 06:41
kolbasa77
Eternal Pride
очередная безполезная и неинтересная модификация.
Сообщение # 7 написано 24.03.2012 в 08:20
Morgaz
Скаут
Очень хотелось бы аддон заменяющий вид стандартного курсора в wow. например на один из курсоров в wc3
Сообщение # 8 отредактировано Morgaz - Суббота, 24.03.2012, 08:49
N1NT3ND0_o
Скаут
Огромное спасибо автору за статью.
Сообщение # 9 написано 24.03.2012 в 09:39
Poбот
Король железяк.
Quote (Nyll)
Вот весь то, что у нас получилось (код).

Скорее всего,вот ВСЕ то,что у нас получилось =)
А вообще аддон прикольный,и очень даже пригодится =)
Тем более приятнее пользоваться,если сделал сам.
Сообщение # 10 написано 24.03.2012 в 09:57
mak123
Центурион
Сообщение # 11 написано 25.03.2012 в 01:51
Unstopable1001
Чемпион
Мм интересная статья, но можно проделать сие изменение путем создания патча, да функции не все что в аддоне но проще и быстрее)) Кстати, Morgaz замену курсора тоже можно сделать патчем, если надо пиши в личку)
Сообщение # 12 написано 18.04.2012 в 13:31
FRAGMASHINE
PWNED!
Не каждый сможет её сделать и тем более подобрать правильные картинки
Сообщение # 13 написано 19.04.2012 в 16:39
hfnsgtjnsrjnsrj
Скаут
Извиняюсь, а можно узнать, как можно сделать чтоб этих грифонов не было вообще, или хотяб их не было видно (были прозрачными). У меня эти птички закрывают аддон и мне невидно статистические данные, помогите а...
5.jpg

Добавлено (19.04.2012, 23:14)
---------------------------------------------
вот это помогло:
/run MainMenuBarLeftEndCap:Hide();MainMenuBarRightEndCap:Hide()

Сообщение # 14 написано 19.04.2012 в 23:14
Mouten
Скаут
а как изменить только цвет гривы?
Сообщение # 15 написано 19.04.2012 в 23:21
PashokRomanow
Скаут
Спс помогло
Сообщение # 16 написано 28.05.2012 в 21:37
Self_Killing
Скаут
Нормально. Думаю кому-то да пригодиться. smile
Смерть - это стрела, пущенная в тебя, а жизнь - то мгновение, за которое она до тебя долетает.
Сообщение # 17 написано 08.08.2012 в 19:07
Аwesome
Скаут
Норм статья.
Прежде чем задать мне вопрос, сначала задайте его в http://www.google.ru/, и убедитесь что google не знает ответа на ваш вопрос, после того как убедились, задайте его мне.
Сообщение # 18 написано 17.08.2012 в 19:55
gradinas
Командир
Используя Действие, при нажатии на кнопку

Кнопка при нажатии изменяет грифонов.

Code

mybutton = CreateFrame("Button","mybutton",UIParent,"UIPanelButtonTemplate") --создание фрейма кнопки         
         mybutton:SetPoint("CENTER",300,-20) -- позиция кнопки         
         mybutton:SetWidth(80) -- установка ширины кнопки         
         mybutton:SetHeight(23) -- установка высоты кнопки         
         mybutton:SetText("Blood");  -- текст кнопки         
         mybutton:SetScript("OnMouseDown", function(self,button,...)            
               if (button=="LeftButton") then        
       MainMenuBarLeftEndCap:SetTexture("Interface\\AddOns\\art\\art\\Blood.tga");MainMenuBarRightEndCap:SetTexture("Interface\\AddOns\\art\\art\\Blood.tga")
                      end         
         end);


Прикрепления: 1458539.png (202.1 Kb)
Сообщение # 19 отредактировано gradinas - Вторник, 04.09.2012, 01:53
yukami
Скаут
Долго мучался, но всё же получилось. Спасибо автору и gradinas за полезную инфу.
Сообщение # 20 написано 11.03.2013 в 12:41
Форум » Обсуждение аддонов » Разработка аддонов WoW » Замена грифонов
  • Страница 1 из 1
  • 1
Поиск: