View Single Post
11/19/14, 03:28 PM   #3
laiqalasse
Join Date: Nov 2014
Posts: 3
oh sorry,but it is shame to share this bad algorithm and codes as i told this is my first addon and i did it for myself
Code:
local junker = {
	
	name = "junker"
}


local junk_types =
{
	"ITEMTYPE_ADDITIVE",
	"ITEMTYPE_ALCHEMY_BASE",
	"ITEMTYPE_AVA_REPAIR",
	"ITEMTYPE_CLOTHIER_BOOSTER",
	"ITEMTYPE_CLOTHIER_MATERIAL",
	"ITEMTYPE_CLOTHIER_RAW_MATERIAL",
	"ITEMTYPE_COLLECTIBLE",
	"ITEMTYPE_CONTAINER",
	"ITEMTYPE_DISGUISE",
	"ITEMTYPE_ENCHANTING_RUNE",
	"ITEMTYPE_ENCHANTMENT_BOOSTER",
	"ITEMTYPE_FLAVORING",
	"ITEMTYPE_FOOD",
	"ITEMTYPE_GLYPH_ARMOR",
	"ITEMTYPE_GLYPH_JEWELRY",
	"ITEMTYPE_GLYPH_WEAPON",
	"ITEMTYPE_INGREDIENT",
	"ITEMTYPE_LURE",
	"ITEMTYPE_NONE",
	"ITEMTYPE_PLUG",
	"ITEMTYPE_RAW_MATERIAL",
	"ITEMTYPE_STYLE_MATERIAL",
	"ITEMTYPE_TRASH"

}


local junkarmor_types ={

"ARMORTYPE_LIGHT",
"ARMORTYPE_MEDIUM",
"ARMORTYPE_NONE"

}




local name = "junker"

local function Initialize()


EVENT_MANAGER:RegisterForEvent(name,EVENT_INVENTORY_SINGLE_SLOT_UPDATE,junkJunk)
end


local function  OnAddOnLoaded(event,addonName)
if addonName == "junker" then

	Initialize()

	end
end

local function junkJunk(eventCode,bagId,slotId,isNewItem,itemSoundCategory, updateReason)

local armor_type = nil
item_type = GetItemType(bagId,slotId)
local item_link = GetItemLink(bagId,slotId)

	if item_type == "ITEMTYPE_ARMOR" then
	
		local armor_type= GetItemLinkArmorType(item_link)
	
	end
	if contains(junk_types,item_type) or contains(junkarmor_types,armor_type) then
		
		SetItemIsJunk(bagId,slotId)
		
		d("junked")
	end
	
end


local function contains(junk_types, element)

  for _, value in pairs(junk_types) do

    if value == element then

      return true
    end

  end

  return false
end


EVENT_MANAGER:RegisterForEvent("junker",EVENT_ADD_ON_LOADED,OnAddOnLoaded)
  Reply With Quote