• Страница 1 из 1
  • 1
Воспроизведение музыки при нажатии на кнопку
Nyll
Всем привет. Сегодня мы будем делать аддон для меломанов, которые не могут слушать музыку по причине того, что с открытым браузером лагает wow. Мы сделаем аддон, который будет включать музыку одним нажатием кнопки. Этот аддон будет написан только на lua, мы не будем использовать xml для создания кнопки. Для создания аддона нам понадобится программа notepad++, она нам поможет сменить кодировку, потому что в ру клиенте используется кодировка UTF-8.



Полезные ссылка:
Скачать notepad++ - Тык
Предыдущия статья - Тык

Начнем. Создаем папку для аддона, так как нам придется указывать путь к музыки, я создам папку music. Кидаем в эту папку нашу песню (в формате mp3), после чего создаем toc, файл (как создавать toc, файл я рассказывать не буду т.к уже хватит wink ). Открываем созданный lua, файл и создаем кнопку:

Code
mybutton = CreateFrame("Button","mybutton",UIParent,"UIPanelButtonTemplate") --создание фрейма кнопки
mybutton:SetPoint("CENTER",300,-20) -- позиция кнопки
mybutton:SetWidth(80) -- установка ширины кнопки
mybutton:SetHeight(23) -- установка высоты кнопки
mybutton:SetText("МУЗЫКА!");  -- текст кнопки
mybutton:SetScript("OnMouseDown", function(self,button,...)     
        if (button=="LeftButton") then
           PlaySoundFile("Interface\\AddOns\\music\\music.mp3") -- путь к mp3 файлу
        UIErrorsFrame:AddMessage("|c00FE560FМ|r|c00FE611Fу|r|c00FE6C2Fз|r|c00FE783Fы|r|c00FE834Fк|r|c00FE8E5Fа|r|c00FE996F |r|c00FEA57Fв|r|c00FEB08Fк|r|c00FEBB9Fл|r|c00FEC6AFю|r|c00FED2BFч|r|c00FEDDCFе|r|c00FEE8DFн|r|c00FEF3EFа|r|c00FFFFFF!|r") -- Оповещяет о том что музыка включена
           end
end);


Как вы заметили, я прокомментировал код, комментарии в lua файле пишутся через "--" например "-- Комментарий", еще можно комментировать с помощью "--[[" это будет многострочный комментарий например:
--[[ 1 строка
2 строка
3 строка
]]

В строчки "PlaySoundFile("Interface\\AddOns\\music\\music.mp3")", указуем путь к вашей песни, у меня песня называется music.

В строчки " UIErrorsFrame:AddMessage("|c00FE560FМ|r|c00FE611Fу|r|c00FE6C2Fз|r|c00FE783Fы|r|c00FE834Fк|r|c00FE8E5Fа|r|c00FE996F |r|c00FEA57Fв|r|c00FEB08Fк|r|c00FEBB9Fл|r|c00FEC6AFю|r|c00FED2BFч|r|c00FEDDCFе|r|c00FEE8DFн|r|c00FEF3EFа|r|c00FFFFFF!|r")" пишется надпись
p.s даже не пытайтесь делать градиент руками потому что не выйдет -_-, это делается программой "Wc3Colorer", ну и подобными программами которые могут делать градиент.

В строчки "mybutton:SetText("МУЗЫКА!");" пишем название кнопки.

Ну вот и все, в следующей статье мы будем делать кнопку "Остановить музыку" и постараемся сделать плейлист (я не обещаю, но попробую -_-)
Спасибо TRUE, за помощь в написании статьи.

[download]Music - для WoW 3.5[/download]
Прикрепления: 3653670.png (6.8 Kb) · 5519562.png (5.7 Kb)
Маме беркута привет!
Сообщение # 1 отредактировано Nyll - Пятница, 24.02.2012, 12:10
Bu_FucK
Рыцарь
хехе, прикольно, но делать влом, скинте мне лучше уже готовое!
Сообщение # 2 написано 05.11.2011 в 08:33
LOrdas
ƉỜṪḀ ƇǒӎӎɥȠȊțy
PlaySoundFile ... biggrin
А альтернативу предложишь?
Сообщение # 3 написано 05.11.2011 в 11:09
Nyll
LOrdas, PlayMusic
Маме беркута привет!
Сообщение # 4 написано 05.11.2011 в 12:39
Goolden
Скаут
Сообщение # 5 написано 16.11.2011 в 11:47
Alexey22xx
Скаут
Nyll спасибо. И в правду забавный аддон.
Если не двинется король, окружение тоже останется на месте.

Lelouch Lamperouge ©
Сообщение # 6 написано 18.01.2012 в 14:24
Mercan
Скаут
Классный аддон
Можно и установить....

______________________________________________________________


Сообщение # 7 написано 20.01.2012 в 18:30
Tapac
Рыцарь
Классный аддон но играю слушаю через хром музыку из Вконтакте и ничего не лагает
Сообщение # 8 написано 15.11.2012 в 14:04
H_A_PK
Скаут
Цитата (Nyll)
В строчки "mybutton:SetText("МУЗЫКА!");" пишем название кнопки.

вот почему автор объясняет такие очевидные вещи, а такие как
Цитата (Nyll)
CreateFrame("Button","mybutton",UIParent,"UIPanelButtonTemplate")

остаются без внимания :С и ломай голову, что за аргументы
Цитата (Nyll)
mybutton:SetPoint("CENTER",300,-20) -- позиция кнопки

Nyll, с помощью какой утилиты координаты ты устанавливаешь, если не методом тыка конечно ?
Сообщение # 9 написано 10.01.2013 в 04:00
Nyll
Цитата (H_A_PK)
Nyll, с помощью какой утилиты координаты ты устанавливаешь, если не методом тыка конечно ?

Координаты можно указывать от 1 фреймы.
А так да методом тыка smile Больше не как.
Маме беркута привет!
Сообщение # 10 написано 10.01.2013 в 04:49
  • Страница 1 из 1
  • 1
Поиск: