TradeSkillMaster/LibTSM/Data/Transform.lua

332 lines
8.4 KiB
Lua
Raw Normal View History

2020-11-13 14:13:12 -05:00
-- ------------------------------------------------------------------------------ --
-- TradeSkillMaster --
-- https://tradeskillmaster.com --
-- All Rights Reserved - Detailed license information included with addon. --
-- ------------------------------------------------------------------------------ --
local _, TSM = ...
local Transform = TSM.Init("Data.Transform")
local private = {}
-- ============================================================================
-- Transform Data
-- ============================================================================
local DATA = {
-- ================================== Essences / Illusion Dust =================================
["i:52719"] = {
["i:52718"] = 1/3, -- Greater Celestial Essence
},
["i:52718"] = {
["i:52719"] = 3, -- Lesser Celestial Essence
},
["i:34055"] = {
["i:34056"] = 1/3, -- Greater Cosmic Essence
},
["i:34056"] = {
["i:34055"] = 3, -- Lesser Cosmic Essence
},
["i:22446"] = {
["i:22447"] = 1/3, -- Greater Planar Essence
},
["i:22447"] = {
["i:22446"] = 3, -- Lesser Planar Essence
},
["i:16203"] = {
["i:16202"] = 1/3, -- Greater Eternal Essence
},
["i:16202"] = {
["i:16203"] = 3, -- Lesser Eternal Essence
},
["i:11175"] = TSM.IsWowClassic() and {
["i:11174"] = 1/3, -- Greater Nether Essence
} or nil,
["i:11174"] = TSM.IsWowClassic() and {
["i:11175"] = 3, -- Lesser Nether Essence
} or nil,
["i:11135"] = TSM.IsWowClassic() and {
["i:11134"] = 1/3, -- Greater Mystic Essence
} or nil,
["i:11134"] = TSM.IsWowClassic() and {
["i:11135"] = 3, -- Lesser Mystic Essence
} or nil,
["i:11082"] = TSM.IsWowClassic() and {
["i:10998"] = 1/3, -- Greater Astral Essence
} or nil,
["i:10998"] = TSM.IsWowClassic() and {
["i:11082"] = 3, -- Lesser Astral Essence
} or nil,
["i:10939"] = {
["i:10938"] = 1/3, -- Greater Magic Essence
},
["i:10938"] = {
["i:10939"] = 3, -- Lesser Magic Essence
},
["i:16204"] = {
["i:156930"] = 1/3, -- Rich Illusion Dust
},
["i:156930"] = {
["i:16204"] = 3, -- Light Illusion Dust
},
-- ============================================ Shards =========================================
["i:52721"] = {
["i:52720"] = 1/3, -- Heavenly Shard
},
["i:34052"] = {
["i:34053"] = 1/3, -- Dream Shard
},
["i:74247"] = {
["i:74252"] = 1/3, -- Ethereal Shard
},
["i:111245"] = {
["i:115502"] = 0.1, -- Luminous Shard
},
-- =========================================== Crystals ========================================
["i:113588"] = {
["i:115504"] = 0.1, -- Temporal Crystal
},
-- ======================================== Primals / Motes ====================================
["i:21885"] = {
["i:22578"] = 0.1, -- Water
},
["i:22456"] = {
["i:22577"] = 0.1, -- Shadow
},
["i:22457"] = {
["i:22576"] = 0.1, -- Mana
},
["i:21886"] = {
["i:22575"] = 0.1, -- Life
},
["i:21884"] = {
["i:22574"] = 0.1, -- Fire
},
["i:22452"] = {
["i:22573"] = 0.1, -- Earth
},
["i:22451"] = {
["i:22572"] = 0.1, -- Air
},
-- ===================================== Crystalized / Eternal =================================
["i:37700"] = {
["i:35623"] = 10, -- Air
},
["i:35623"] = {
["i:37700"] = 0.1, -- Air
},
["i:37701"] = {
["i:35624"] = 10, -- Earth
},
["i:35624"] = {
["i:37701"] = 0.1, -- Earth
},
["i:37702"] = {
["i:36860"] = 10, -- Fire
},
["i:36860"] = {
["i:37702"] = 0.1, -- Fire
},
["i:37703"] = {
["i:35627"] = 10, -- Shadow
},
["i:35627"] = {
["i:37703"] = 0.1, -- Shadow
},
["i:37704"] = {
["i:35625"] = 10, -- Life
},
["i:35625"] = {
["i:37704"] = 0.1, -- Life
},
["i:37705"] = {
["i:35622"] = 10, -- Water
},
["i:35622"] = {
["i:37705"] = 0.1, -- Water
},
-- ========================================= Wod Fish ==========================================
["i:109137"] = {
["i:111601"] = 4, -- Enormous Crescent Saberfish
["i:111595"] = 2, -- Crescent Saberfish
["i:111589"] = 1, -- Small Crescent Saberfish
},
["i:109138"] = {
["i:111676"] = 4, -- Enormous Jawless Skulker
["i:111669"] = 2, -- Jawless Skulker
["i:111650"] = 1, -- Small Jawless Skulker
},
["i:109139"] = {
["i:111675"] = 4, -- Enormous Fat Sleeper
["i:111668"] = 2, -- Fat Sleeper
["i:111651"] = 1, -- Small Fat Sleeper
},
["i:109140"] = {
["i:111674"] = 4, -- Enormous Blind Lake Sturgeon
["i:111667"] = 2, -- Blind Lake Sturgeon
["i:111652"] = 1, -- Small Blind Lake Sturgeon
},
["i:109141"] = {
["i:111673"] = 4, -- Enormous Fire Ammonite
["i:111666"] = 2, -- Fire Ammonite
["i:111656"] = 1, -- Small Fire Ammonite
},
["i:109142"] = {
["i:111672"] = 4, -- Enormous Sea Scorpion
["i:111665"] = 2, -- Sea Scorpion
["i:111658"] = 1, -- Small Sea Scorpion
},
["i:109143"] = {
["i:111671"] = 4, -- Enormous Abyssal Gulper Eel
["i:111664"] = 2, -- Abyssal Gulper Eel
["i:111659"] = 1, -- Small Abyssal Gulper Eel
},
["i:109144"] = {
["i:111670"] = 4, -- Enormous Blackwater Whiptail
["i:111663"] = 2, -- Blackwater Whiptail
["i:111662"] = 1, -- Small Blackwater Whiptail
},
-- ========================================== Aromatic Fish Oil (BFA) ===========================
["i:160711"] = {
["i:152543"] = 1, -- Sand Shifter
["i:152544"] = 1, -- Slimy Mackerel
["i:152545"] = 1, -- Frenzied Fangtooth
["i:152546"] = 1, -- Lane Snapper
["i:152547"] = 1, -- Great Sea Catfish
["i:152548"] = 1, -- Tiragarde Perch
["i:152549"] = 1, -- Redtail Loach
["i:168302"] = 1, -- Viper Fish
["i:168646"] = 1, -- Mauve Stinger
["i:174327"] = 1, -- Malformed Gnasher
["i:174328"] = 1, -- Aberrant Voidfin
},
-- ========================================== Ore Nuggets =======================================
["i:2771"] = {
["i:108295"] = 0.1, -- Tin Ore
},
["i:2772"] = {
["i:108297"] = 0.1, -- Iron Ore
},
["i:2775"] = {
["i:108294"] = 0.1, -- Silver Ore
},
["i:2776"] = {
["i:108296"] = 0.1, -- Gold Ore
},
["i:3858"] = {
["i:108300"] = 0.1, -- Mithril Ore
},
["i:7911"] = {
["i:108299"] = 0.1, -- Truesilver Ore
},
["i:10620"] = {
["i:108298"] = 0.1, -- Thorium Ore
},
["i:23424"] = {
["i:108301"] = 0.1, -- Fel Iron Ore
},
["i:23425"] = {
["i:108302"] = 0.1, -- Adamantite Ore
},
["i:23426"] = {
["i:108304"] = 0.1, -- Khorium Ore
},
["i:23427"] = {
["i:108303"] = 0.1, -- Eternium Ore
},
["i:36909"] = {
["i:108305"] = 0.1, -- Cobalt Ore
},
["i:36910"] = {
["i:108391"] = 0.1, -- Titanium Ore
},
["i:36912"] = {
["i:108306"] = 0.1, -- Saronite Ore
},
["i:52183"] = {
["i:108309"] = 0.1, -- Pyrite Ore
},
["i:52185"] = {
["i:108308"] = 0.1, -- Elementium Ore
},
["i:53038"] = {
["i:108307"] = 0.1, -- Obsidium Ore
},
["i:72092"] = {
["i:97512"] = 0.1, -- Ghost Iron Ore
},
["i:109119"] = {
["i:109991"] = 0.1, -- True Iron Ore
},
-- =========================================== Herb Parts ======================================
["i:2449"] = {
["i:108319"] = 0.1, -- Earthroot Stem
},
["i:2453"] = {
["i:108322"] = 0.1, -- Bruiseweed Stem
},
["i:3357"] = {
["i:108325"] = 0.1, -- Liferoot Stem
},
["i:3358"] = {
["i:108326"] = 0.1, -- Khadgar's Whisker Stem
},
["i:3819"] = {
["i:108329"] = 0.1, -- Dragon's Teeth Stem
},
["i:8839"] = {
["i:108336"] = 0.1, -- Blindweed Stem
},
["i:22792"] = {
["i:108350"] = 0.1, -- Nightmare Vine Stem
},
["i:36903"] = {
["i:108353"] = 0.1, -- Adder's Tongue Stem
},
["i:52985"] = {
["i:108362"] = 0.1, -- Azshara's Veil Stem
},
["i:52988"] = {
["i:108365"] = 0.1, -- Whiptail Stem
},
["i:72235"] = {
["i:97621"] = 0.1, -- Silkweed Stem
},
["i:109124"] = {
["i:109624"] = 0.1, -- Broken Frostweed Stem
},
["i:109125"] = {
["i:109625"] = 0.1, -- Broken Fireweed Stem
},
}
-- ============================================================================
-- Module Functions
-- ============================================================================
function Transform.TargetItemIterator()
return private.TableKeyIterator, DATA, nil
end
function Transform.SourceItemIterator(targetItemString)
return private.TableKeyIterator, DATA[targetItemString], nil
end
function Transform.GetRate(targetItemString, sourceItemString)
return DATA[targetItemString][sourceItemString]
end
-- ============================================================================
-- Private Helper Functions
-- ============================================================================
function private.TableKeyIterator(tbl, index)
index = next(tbl, index)
return index
end