|
Форум Обсуждение аддонов Разработка аддонов WoW Пишем аддон "MangAdmin" №2 |
Пишем аддон "MangAdmin" №2 |
Здравствуйте дорогие друзья, сегодня мы продолжим писать MangAdmin. Я решил оставить остальные xml файлы на следующею неделю, а щас мы изучим lua файл mangadmin*a. В lua файле много интересного, чего вы можете использовать в последующих аддонах.
Полезные ссылки: Инструкция по созданию toc файла - тык Ссылка на предыдущие статью - тык Скачать notepad++ - тык API функции - тык Вот lua документ мангадмина. Тык Разъясню вам не большие фрагменты текста, дабы вы знали с чем работаете. Code function out(text) DEFAULT_CHAT_FRAME:AddMessage(text); end function outHUD(text) UIErrorsFrame:AddMessage(text, 1.0, 1.0, 0, 1,10); end function outERROR(text) DEFAULT_CHAT_FRAME:AddMessage(text, 1.0, 0.0, 0.0, 1.0); UIErrorsFrame:AddMessage(text, 1.0, 1.0, 0, 1,10); end function outPM(text,recipient) SendChatMessage(text, "WHISPER", nil,recipient); end function outPMSET(text,lang, recipient) SendChatMessage(text, "WHISPER", lang ,recipient); end function outSAY(text) SendChatMessage(text, "SAY", nil,nil); end function outSYS(text) DEFAULT_CHAT_FRAME:AddMessage(text, 1.0, 1.0, 0, 0); end function outNotes(text) SendChatMessage(text, "CHANNEL", nil, chanNum); end function outMESS(text,name) MessengerMainFrame:AddMessage(text); end Создания а точнее замена функций типа sendchatmessage и т.д Code function MangAdmin_SlashCommandHandler(msg) if (msg == "reload") then ReloadUI(); elseif (msg == "mark" or msg=="back") then MangAdmin_Mark(msg); out("Returning to your bookmarked location."); elseif (msg == "pm") then MangAdminForm4:Show(); elseif (msg == "tele" or msg=="teleport") then MangAdminForm6:Show(); elseif (msg == "item") then MangAdminForm7:Show(); elseif (msg == "help") then MangHelp(); elseif (msg == "info") then MangAdminForm2:Show(); elseif (msg == "options") then MangAdminForm1:Show(); elseif (msg == "menu") then MangAdminForm:Show(); elseif (msg == "reset") then MangReset(); elseif (msg == "gm") then MangAdminForm11:Show(); elseif (msg == "easter") then Secret(); out("What have you found???!"); else MangAdminFrames_Toggle(msg); end end Открытие окошек, при помощи слеш команды. function GMBuddy(fxn) if (fxn=="lang")then outSAY(".learn all_lang"); elseif (fxn=="armor")then for i=1, table.getn(GMArray["Armor"]) do outSAY(".learn "..GMArray["Armor"][i]); end elseif (fxn=="black1")then for i=1, table.getn(GMArray["Black1"]) do outSAY(".learn "..GMArray["Black1"][i]); end elseif (fxn=="black2")then for i=1, table.getn(GMArray["Black2"]) do outSAY(".learn "..GMArray["Black2"][i]); end elseif (fxn=="black3")then for i=1, table.getn(GMArray["Black3"]) do outSAY(".learn "..GMArray["Black3"][i]); end elseif (fxn=="black4")then for i=1, table.getn(GMArray["Black4"]) do outSAY(".learn "..GMArray["Black4"][i]); end elseif (fxn=="black5")then for i=1, table.getn(GMArray["Black5"]) do outSAY(".learn "..GMArray["Black5"][i]); end elseif (fxn=="ming1")then for i=1, table.getn(GMArray["Ming1"]) do outSAY(".learn "..GMArray["Ming1"][i]); end elseif (fxn=="ming2")then for i=1, table.getn(GMArray["Ming2"]) do outSAY(".learn "..GMArray["Ming2"][i]); end elseif (fxn=="ming3")then for i=1, table.getn(GMArray["Ming3"]) do outSAY(".learn "..GMArray["Ming3"][i]); end elseif (fxn=="ming4")then for i=1, table.getn(GMArray["Ming4"]) do outSAY(".learn "..GMArray["Ming4"][i]); end elseif (fxn=="ming5")then for i=1, table.getn(GMArray["Ming5"]) do outSAY(".learn "..GMArray["Ming5"][i]); end elseif (fxn=="jew1")then for i=1, table.getn(GMArray["Jew1"]) do outSAY(".learn "..GMArray["Jew1"][i]); end elseif (fxn=="jew2")then for i=1, table.getn(GMArray["Jew2"]) do outSAY(".learn "..GMArray["Jew2"][i]); end elseif (fxn=="jew3")then for i=1, table.getn(GMArray["Jew3"]) do outSAY(".learn "..GMArray["Jew3"][i]); end elseif (fxn=="jew4")then for i=1, table.getn(GMArray["Jew4"]) do outSAY(".learn "..GMArray["Jew4"][i]); end elseif (fxn=="jew5")then for i=1, table.getn(GMArray["Jew5"]) do outSAY(".learn "..GMArray["Jew5"][i]); end elseif (fxn=="leath1")then for i=1, table.getn(GMArray["Leath1"]) do outSAY(".learn "..GMArray["Leath1"][i]); end elseif (fxn=="leath2")then for i=1, table.getn(GMArray["Leath2"]) do outSAY(".learn "..GMArray["Leath2"][i]); end elseif (fxn=="leath3")then for i=1, table.getn(GMArray["Leath3"]) do outSAY(".learn "..GMArray["Leath3"][i]); end elseif (fxn=="leath4")then for i=1, table.getn(GMArray["Leath4"]) do outSAY(".learn "..GMArray["Leath4"][i]); end elseif (fxn=="leath5")then for i=1, table.getn(GMArray["Leath5"]) do outSAY(".learn "..GMArray["Leath5"][i]); end elseif (fxn=="fira1")then for i=1, table.getn(GMArray["Fira1"]) do outSAY(".learn "..GMArray["Fira1"][i]); end elseif (fxn=="fira2")then for i=1, table.getn(GMArray["Fira2"]) do outSAY(".learn "..GMArray["Fira2"][i]); end elseif (fxn=="fira3")then for i=1, table.getn(GMArray["Fira3"]) do outSAY(".learn "..GMArray["Fira3"][i]); end elseif (fxn=="fira4")then for i=1, table.getn(GMArray["Fira4"]) do outSAY(".learn "..GMArray["Fira4"][i]); end elseif (fxn=="fira5")then for i=1, table.getn(GMArray["Fira5"]) do outSAY(".learn "..GMArray["Fira5"][i]); end elseif (fxn=="alch1")then for i=1, table.getn(GMArray["Alch1"]) do outSAY(".learn "..GMArray["Alch1"][i]); end elseif (fxn=="alch2")then for i=1, table.getn(GMArray["Alch2"]) do outSAY(".learn "..GMArray["Alch2"][i]); end elseif (fxn=="alch3")then for i=1, table.getn(GMArray["Alch3"]) do outSAY(".learn "..GMArray["Alch3"][i]); end elseif (fxn=="alch4")then for i=1, table.getn(GMArray["Alch4"]) do outSAY(".learn "..GMArray["Alch4"][i]); end elseif (fxn=="alch5")then for i=1, table.getn(GMArray["Alch5"]) do outSAY(".learn "..GMArray["Alch5"][i]); end elseif (fxn=="ench1")then for i=1, table.getn(GMArray["Ench1"]) do outSAY(".learn "..GMArray["Ench1"][i]); end elseif (fxn=="ench2")then for i=1, table.getn(GMArray["Ench2"]) do outSAY(".learn "..GMArray["Ench2"][i]); end elseif (fxn=="ench3")then for i=1, table.getn(GMArray["Ench3"]) do outSAY(".learn "..GMArray["Ench3"][i]); end elseif (fxn=="ench4")then for i=1, table.getn(GMArray["Ench4"]) do outSAY(".learn "..GMArray["Ench4"][i]); end elseif (fxn=="ench5")then for i=1, table.getn(GMArray["Ench5"]) do outSAY(".learn "..GMArray["Ench5"][i]); end elseif (fxn=="cok1")then for i=1, table.getn(GMArray["Cok1"]) do outSAY(".learn "..GMArray["Cok1"][i]); end elseif (fxn=="cok2")then for i=1, table.getn(GMArray["Cok2"]) do outSAY(".learn "..GMArray["Cok2"][i]); end elseif (fxn=="cok3")then for i=1, table.getn(GMArray["Cok3"]) do outSAY(".learn "..GMArray["Cok3"][i]); end elseif (fxn=="cok4")then for i=1, table.getn(GMArray["Cok4"]) do outSAY(".learn "..GMArray["Cok4"][i]); end elseif (fxn=="cok5")then for i=1, table.getn(GMArray["Cok5"]) do outSAY(".learn "..GMArray["Cok5"][i]); end elseif (fxn=="engi1")then for i=1, table.getn(GMArray["Engi1"]) do outSAY(".learn "..GMArray["Engi1"][i]); end elseif (fxn=="engi2")then for i=1, table.getn(GMArray["Engi2"]) do outSAY(".learn "..GMArray["Engi2"][i]); end elseif (fxn=="engi3")then for i=1, table.getn(GMArray["Engi3"]) do outSAY(".learn "..GMArray["Engi3"][i]); end elseif (fxn=="engi4")then for i=1, table.getn(GMArray["Engi4"]) do outSAY(".learn "..GMArray["Engi4"][i]); end elseif (fxn=="engi5")then for i=1, table.getn(GMArray["Engi5"]) do outSAY(".learn "..GMArray["Engi5"][i]); end elseif (fxn=="tail1")then for i=1, table.getn(GMArray["Tail1"]) do outSAY(".learn "..GMArray["Tail1"][i]); end elseif (fxn=="tail2")then for i=1, table.getn(GMArray["Tail2"]) do outSAY(".learn "..GMArray["Tail2"][i]); end elseif (fxn=="tail3")then for i=1, table.getn(GMArray["Tail3"]) do outSAY(".learn "..GMArray["Tail3"][i]); end elseif (fxn=="tail4")then for i=1, table.getn(GMArray["Tail4"]) do outSAY(".learn "..GMArray["Tail4"][i]); end elseif (fxn=="tail5")then for i=1, table.getn(GMArray["Tail5"]) do outSAY(".learn "..GMArray["Tail5"][i]); end elseif (fxn=="weap")then out(table.getn(GMArray["Weapons"])); for i=1, table.getn(GMArray["Weapons"]) do outSAY(".learn "..GMArray["Weapons"][i]); outSAY(".learn 674"); end for i=1, 5 do outSAY(".learn "..GMArray["Spells"][i]); end elseif (fxn=="pimp")then for i=1, table.getn(GMArray["Pimp"]) do outSAY(".learn "..GMArray["Pimp"][i]); end elseif (fxn=="skill")then outSAY(".learn all_myclass"); elseif (fxn=="talents")then outSAY(".learn all_mytalents"); elseif (fxn=="max")then outSAY(".maxskill"); elseif (fxn=="allench")then outSAY(".learn all_recipes enchanting"); elseif (fxn=="allalch")then outSAY(".learn all_recipes alchemy"); elseif (fxn=="allblac")then outSAY(".learn all_recipes blacksmithing"); elseif (fxn=="allleat")then outSAY(".learn all_recipes leatherworking"); elseif (fxn=="allengi")then outSAY(".learn all_recipes engineering"); elseif (fxn=="alltail")then outSAY(".learn all_recipes tailoring"); elseif (fxn=="allmini")then outSAY(".learn all_recipes mining"); elseif (fxn=="allfirs")then outSAY(".learn all_recipes first aid"); elseif (fxn=="allcook")then outSAY(".learn all_recipes cooking"); elseif (fxn=="alljew")then outSAY(".learn all_recipes jewelcrafting"); end end Действия (не все) которые происходят при нажатии на кнопку например: когда жмешь на кнопку гм(включить гм мод) выполняется действие Code elseif (fxn=="gmon")then outSAY(".gm on"); DEFAULT_CHAT_FRAME:AddMessage("|cffffff00Firestorm|r: Режим ГМ включен"); Вот и все. Остальную часть луа файлов, и xml файлов мы будем рассматривать в следующею пятницу.
Маме беркута привет!
|
гуд
Реальный заработок 900 руб. в месяц на кликах.
Правил не нарушаю, т.к. не прошу ничего взамен.
Сообщение # 2 написано 17.12.2011 в 20:38
|
Может стоило начать с хоть какого-то объяснения синтаксиса? Я например не могу понять за что отвечают некоторые скобки, запятые и двойные равенства. Я имею только смутные догадки из-за того что имеется небольшой опыт в простых языках как Delphi, Pascal etc. Просто если я правильно понял задумку, то цель этого несколько ознакомить людей с языком lua в частности для написания аддонов для вова и мне кажется что без синтаксиса и разъяснения некоторых операторов далеко не уедешь ; )
Я не прошу что бы вы обязательно разъяснили каждый, но хотя бы дали ссылку где можно о них прочитать, желательно на русском.
Сообщение # 5 написано 23.12.2011 в 19:53
|
Nirn24, Основы_Lua
lua.ru Wiki
Маме беркута привет!
Сообщение # 6 написано 23.12.2011 в 20:40
|
Quote (Nirn24) не могу понять за что отвечают некоторые скобки Quote (Nirn24) но хотя бы дали ссылку где можно о них прочитать
Сообщение # 8 написано 04.01.2012 в 09:44
|
Nyll,можешь объяснить как сделать чтобы как в MangAdmine при нажатие на кнопку гм
Он то включал гм режим,то выключал? Добавлено (18.03.2012, 10:02)
Сообщение # 9 написано 18.03.2012 в 10:02
|
| |||
| |||