• Страница 1 из 1
  • 1
Линк итема по ID
Nyll
Здравствуйте! В этой статье я вам покажу два примера, как сделать аддон линкующий шмотку по айди.

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

Начнем с первого примера, он будет брать ID итемов из списка и прогонять их через переменную GetItemInfo.

В первую очередь создаем массив, в котором будет хранится все иды вещей.

Code
dbID = {45606,59597,21168}


В массиве уже есть 3 айдишника вещей, которые мы будем линковать.

Дальше, создаем функцию.

Code
function LinkID()


Теперь делаем цикл с помощью которого мы будем извлекать содержимое массива.

Code
for k,v in pairs(dbID) do


Хотя, можно было извлечь через table.getn, но там проще.

Дальше, создаем переменную, которая нам будет выдавать линк шмотки.

Code
local itemName, itemLink = GetItemInfo(v)


Данная переменная имеет много значений, но нам понадобится только itemLink

Теперь выводим содержимое itemLink в чат.

Code
print(itemLink)


Все, закрываем функцию.

Code
end end


Теперь делаем слеш команду для функции и все.

Вот готовый код.

Code
dbID = {
45606,    
59597,
21168
}

function LinkID()
     for k,v in pairs(dbID) do
       local itemName, itemLink = GetItemInfo(v)
     print(itemLink)
end end


Сейчас я вам покажу второй способ линка вещей. Он нечем практически не отличается от 1 способа, но он более трудный smile

Создаем массив с айдишниками.

Code
dbID = {
45606,    
59597,
21168
}


Создаем функцию.

Code
function LinkID()


Делаем цикл.

Code
for k,v in pairs(dbID) do


Теперь указываем переменную.GetItemInfo

Code
local itemName, itemLink = GetItemInfo(v)


Нам из переменной не нужен итем линк а нам нужно только название итема.

Выводим наш итем в чат.

Code
print("\124cffa335ee\124Hitem:"..v..":0:0:0:0:0:0:0:0\124h["..itemName.."]\124h

\124r")


И что мы видим. Я разобрал итем на гиперссылку.
"..v.." -- Обозначает ID Шмотки.
"..itemName.." -- Пишет название итема.

Все. Теперь закрываем функцию и второй способ линка готов!

Code
end end


Весь код, который у нас должен выйти.

Code
dbID = {
45606,    
59597,
21168
}

function LinkID()
     for k,v in pairs(dbID) do
       local itemName, itemLink = GetItemInfo(v)
     print("\124cffa335ee\124Hitem:"..v..":0:0:0:0:0:0:0:0\124h["..itemName.."]\124h\124r")
end end


На этом все! Удачи вам.
Маме беркута привет!
Сообщение # 1 отредактировано Nyll - Суббота, 09.06.2012, 14:19
yurra
Скаут
GetItemInfo выводит информацию о вещах, которые есть в памяти, т.е. которые я непосредственно недавно видел?
И если я предмет в глаза не видел, а мне его надо вывести, то он не будет выведен?
Поправьте, что не так.
Помогаю в силу своих возможностей, если что-то не понимаю, то извините.
Сообщение # 2 написано 27.04.2014 в 10:37
DiSq
Рыцарь
Цитата yurra ()
GetItemInfo выводит информацию о вещах, которые есть в памяти, т.е. которые я непосредственно недавно видел?
И если я предмет в глаза не видел, а мне его надо вывести, то он не будет выведен?
Поправьте, что не так.


Более подробно тут http://wowprogramming.com/docs/api/GetItemInfo
Сообщение # 3 отредактировано DiSq - Вторник, 10.06.2014, 10:46
  • Страница 1 из 1
  • 1
Поиск: