--[[ TradesBar for WoW (World of Warcraft) Desc: A row of buttons for your Trades Skills LIST OF AUTHORS and FIXERS Author 1: Ian 'CRiSPy' Floyd "Iling on Skywall(Nightelf)" German Tanslator1: Farook of wowinterface.com forum French Tanslator2: Trucifix of ui.worldofwar.net ]]-- --[[ English Tranlation Author1: Ian "CRiSPyToWN" Floyd "Iling on Skywall(Nightelf)" ]]-- --START --trades/skills/professions TradesBarData = { }; TRADES_ALCHEMY = "Alchemy"; TRADES_BLACKSMITHING = "Blacksmithing"; TRADES_COOKING = "Cooking"; TRADES_BASIC_CAMPFIRE = "Basic Campfire"; TRADES_ENCHANTING = "Enchanting"; TRADES_DISENCHANT = "Disenchant"; TRADES_ENGINEERING = "Engineering"; TRADES_GNOME_ENGINEERING = "Gnome Engineering"; TRADES_GOBLIN_ENGINEERING = "Goblin Engineering"; TRADES_FIRST_AID = "First Aid"; TRADES_FISHING = "Fishing"; TRADES_HERBALISM = "Herbalism"; TRADES_FIND_HERBS = "Find Herbs"; TRADES_FIND_TREASURE = "Find Treasure"; TRADES_LEATHERWORKING = "Leatherworking"; TRADES_DRAGONSCALE_LEATHERWORKING = "Dragonscale Leatherworking"; TRADES_ELEMENTAL_LEATHERWORKING = "Elemental Leatherworking"; TRADES_TRIBAL_LEATHERWORKING = "Tribal Leatherworking"; TRADES_PICK_LOCK = "Pick Lock"; TRADES_PICK_POCKET = "Pick Pocket"; TRADES_FIND_MINERALS = "Find Minerals"; TRADES_SMELTING = "Smelting"; TRADES_SKINNING = "Skinning"; TRADES_TAILORING = "Tailoring"; TRADES_SHADOWEAVE_TAILORING = "Shadoweave Tailoring"; TRADES_POISONS = "Poisons"; --END --[[ German Tranlation Tanslator1: Farook of wowinterface.com forum ]]-- if (GetLocale() == "deDE") then --START --trades/skills/professions TradesBarData = { }; TRADES_ALCHEMY = "Alchimie"; TRADES_BLACKSMITHING = "Schmiedekunst"; TRADES_COOKING = "Kochkunst"; TRADES_BASIC_CAMPFIRE = "Einfaches Lagerfeuer"; TRADES_ENCHANTING = "Verzauberkunst"; TRADES_DISENCHANT = "Entzaubern"; TRADES_ENGINEERING = "Ingenieurskunst"; TRADES_GNOME_ENGINEERING = "Gnomen-Ingenieurskunst"; TRADES_GOBLIN_ENGINEERING = "Goblin-Ingenieurskunst"; TRADES_FIRST_AID = "Erste Hilfe"; TRADES_FISHING = "Angeln"; TRADES_HERBALISM = "Kr\195\164uterkunde"; TRADES_FIND_HERBS = "Kr\195\164utersuche"; TRADES_FIND_TREASURE = "Schatzsucher"; TRADES_LEATHERWORKING = "Lederverarbeitung"; TRADES_DRAGONSCALE_LEATHERWORKING = "Drachenschuppen-Lederverarbeitung"; TRADES_ELEMENTAL_LEATHERWORKING = "Elementargeist-Lederverarbeitung"; TRADES_TRIBAL_LEATHERWORKING = "Stammes-Lederverarbeitung"; TRADES_PICK_LOCK = "Schloss knacken"; TRADES_PICK_POCKET = "Taschendiebstahl"; TRADES_FIND_MINERALS = "Mineraliensuche"; TRADES_SMELTING = "Verh\195\188ttung"; TRADES_SKINNING = "K\195\188rschnerei"; TRADES_TAILORING = "Schneiderei"; TRADES_SHADOWEAVE_TAILORING = "Schattenweberei"; TRADES_POISONS = "Gifte"; --END end --[[ French Tranlation Tanslator2: Trucifix of ui.worldofwar.net ]]-- if (GetLocale() == "frFR") then --START --trades/skills/professions TradesBarData = { }; TRADES_ALCHEMY = "Alchimie"; TRADES_BLACKSMITHING = "Forge"; TRADES_COOKING = "Cuisine"; TRADES_BASIC_CAMPFIRE = "Feu de camp basique"; TRADES_ENCHANTING = "Enchantement"; TRADES_DISENCHANT = "D\195\169senchanter"; TRADES_ENGINEERING = "Ing\195\169nieur"; TRADES_GNOME_ENGINEERING = "Ing\195\169nieur gnome"; TRADES_GOBLIN_ENGINEERING = "Ing\195\169nieur gobelin"; TRADES_FIRST_AID = "Premiers soins"; TRADES_FISHING = "P\195\170che"; TRADES_HERBALISM = "Herboriste"; TRADES_FIND_HERBS = "D\195\169couverte d'herbes"; TRADES_FIND_TREASURE = "D\195\169couverte de tr\195\169sors"; TRADES_LEATHERWORKING = "Travail du cuir"; TRADES_DRAGONSCALE_LEATHERWORKING = "Travail du cuir de dragon"; TRADES_ELEMENTAL_LEATHERWORKING = "Travail du cuir \195\169l\195\169mentaire"; TRADES_TRIBAL_LEATHERWORKING = "Travail du cuir tribal"; TRADES_PICK_LOCK = "Crochetage"; TRADES_PICK_POCKET = "Vol \195\160 la Tire"; TRADES_FIND_MINERALS = "D\195\169couverte de gisements"; TRADES_SMELTING = "Fondre"; TRADES_SKINNING = "D\195\169peçage"; TRADES_TAILORING = "Couture"; TRADES_SHADOWEAVE_TAILORING = "Tailleur tissu-t\195\169n\195\168bres"; TRADES_POISONS = "Poisons"; --END end local Trades = { TRADES_ALCHEMY, TRADES_BLACKSMITHING, TRADES_COOKING, TRADES_BASIC_CAMPFIRE, TRADES_ENCHANTING, TRADES_DISENCHANT, TRADES_ENGINEERING, TRADES_GNOME_ENGINEERING, TRADES_GOBLIN_ENGINEERING, TRADES_FIRST_AID, TRADES_FISHING, TRADES_HERBALISM, TRADES_FIND_HERBS, TRADES_FIND_TREASURE, TRADES_LEATHERWORKING, TRADES_DRAGONSCALE_LEATHERWORKING, TRADES_ELEMENTAL_LEATHERWORKING, TRADES_TRIBAL_LEATHERWORKING, TRADES_PICK_LOCK, TRADES_PICK_POCKET, TRADES_FIND_MINERALS, TRADES_SMELTING, TRADES_SKINNING, TRADES_TAILORING, TRADES_SHADOWEAVE_TAILORING, TRADES_POISONS, }; local ver = 195; TRADESBAR_ENABLED = true; local TradesBar_is_fishingbuddy = IsAddOnLoaded("FishingBuddy"); local inCombat, playerName, vMounted, button; function TradesBar_OnLoad() this:RegisterEvent("PLAYER_ENTERING_WORLD"); this:RegisterEvent("SPELLS_CHANGED"); this:RegisterEvent("PLAYER_AURAS_CHANGED"); this:RegisterEvent("SPELL_UPDATE_COOLDOWN"); this:RegisterEvent("PLAYER_REGEN_ENABLED"); this:RegisterEvent("PLAYER_REGEN_DISABLED"); SLASH_TRADESBAR1 = "/tradesbar"; SlashCmdList["TRADESBAR"] = function(msg) TradesBar_SlashHandler(string.lower(msg)); end end function TradesBar_SlashHandler(msg) if (string.find(msg, "config")) then if( TradesBarConfig:IsVisible() ) then TradesBarConfig:Hide(); else TradesBarConfig:Show(); end elseif (string.find(msg, "help")) then DEFAULT_CHAT_FRAME:AddMessage("To configure bar type '/tradesbar config'"); DEFAULT_CHAT_FRAME:AddMessage("To move the bar: Hold down the control key and right click the TradesBar"); else DEFAULT_CHAT_FRAME:AddMessage("Type '/tradesbar help' for help and '/tradesbar config' for the config"); end --tinsert(UISpecialFrames,"TradesBarConfig"); end function StartTradesBar() if (not TradesBarData) then TradesBarData[playerName] = {}; TradesBarData[playerName] = { ["hidebar"] = "false", ["horizontal"] = "true", ["order"] = "az", ["scale"] = 1, ["version"] = ver, ["Alchemy"] = "true", ["Blacksmithing"] = "true", ["Cooking"] = "true", ["BasicCampfire"] = "true", ["Enchanting"] = "true", ["Disenchant"] = "true", ["Engineering"] = "true", ["FirstAid"] = "true", ["Fishing"] = "true", ["Herbalism"] = "true", ["FindHerbs"] = "true", ["FindTreasure"] = "true", ["leatherworking"] = "true", ["PickLock"] = "true", ["PickPocket"] = "true", ["FindMinerals"] = "true", ["Smelting"] = "true", ["Skinning"] = "true", ["Tailoring"] = "true", ["Poisons"] = "true", ["AlphaInCombat"] = 0, ["AlphaOutCombat"] = 1, }; end if (not TradesBarData[playerName]) then TradesBarData[playerName] = {}; TradesBarData[playerName] = { ["hidebar"] = "false", ["horizontal"] = "true", ["order"] = "az", ["scale"] = 1, ["version"] = ver, ["Alchemy"] = "true", ["Blacksmithing"] = "true", ["Cooking"] = "true", ["BasicCampfire"] = "true", ["Enchanting"] = "true", ["Disenchant"] = "true", ["Engineering"] = "true", ["FirstAid"] = "true", ["Fishing"] = "true", ["Herbalism"] = "true", ["FindHerbs"] = "true", ["FindTreasure"] = "true", ["leatherworking"] = "true", ["PickLock"] = "true", ["PickPocket"] = "true", ["FindMinerals"] = "true", ["Smelting"] = "true", ["Skinning"] = "true", ["Tailoring"] = "true", ["Poisons"] = "true", ["AlphaInCombat"] = 0, ["AlphaOutCombat"] = 1, }; end if (TradesBarData[playerName]["version"] ~= ver) then TradesBarData[playerName]["version"] = ver; end TradesBar_Update(); TradesBar_Scale(); end function FindPattern(text,pattern) return string.sub(text, string.find(text, pattern)) end function TradesBar_OnEvent() if (event == "PLAYER_ENTERING_WORLD") then if (UnitName("player") ~= UNKNOWNBEING and UnitName("player") ~= UNKNOWNOBJECT and UnitName("player") and not playerName) then playerName = UnitName("player").." of "..GetCVar("realmName"); end StartTradesBar(); end if (event == "SPELLS_CHANGED" or event == "PLAYER_AURAS_CHANGED") then TradesBar_Update(); elseif (event == "SPELL_UPDATE_COOLDOWN") then TradesBar_UpdateCooldowns(); elseif (event == "PLAYER_REGEN_ENABLED") then inCombat = nil; TradesBar_setAlpha(); elseif (event == "PLAYER_REGEN_DISABLED") then inCombat = 1; TradesBar_setAlpha(); end end function TradesBar_Scale() for i = 1, 15 do button = getglobal("TradesBarButton"..i); button:SetScale(TradesBarData[playerName]["scale"]); end end function TradesBar_O() if (TradesBarData[playerName]) then if (not TradesBarData[playerName]["horizontal"]) then TradesBarData[playerName]["horizontal"] = "true" TradesBarData[playerName]["order"] = "az" end if (TradesBarData[playerName]["horizontal"] == "true" and TradesBarData[playerName]["order"] == "az") then for i = 2, 15 do local button = getglobal("TradesBarButton"..i); button:ClearAllPoints(); button:SetPoint("LEFT", "TradesBarButton"..i - 1, "RIGHT", 1, 0); end elseif (TradesBarData[playerName]["horizontal"] == "true" and TradesBarData[playerName]["order"] == "za") then for i = 2, 15 do local button = getglobal("TradesBarButton"..i); button:ClearAllPoints(); button:SetPoint("RIGHT", "TradesBarButton"..i - 1, "LEFT", 1, 0); end elseif (TradesBarData[playerName]["horizontal"] == "false" and TradesBarData[playerName]["order"] == "az") then for i = 2, 15 do local button = getglobal("TradesBarButton"..i); button:ClearAllPoints(); button:SetPoint("TOP", "TradesBarButton"..i - 1, "BOTTOM", 0, 1); end elseif (TradesBarData[playerName]["horizontal"] == "false" and TradesBarData[playerName]["order"] == "za") then for i = 2, 15 do local button = getglobal("TradesBarButton"..i); button:ClearAllPoints(); button:SetPoint("BOTTOM", "TradesBarButton"..i - 1, "TOP", 0, 1); end else for i = 2, 15 do local button = getglobal("TradesBarButton"..i); button:ClearAllPoints(); button:SetPoint("LEFT", "TradesBarButton"..i - 1, "RIGHT", 1, 0); end end end end function TradesBar_Hide() local frame = getglobal("TradesBar"); if (frame) then if( frame:IsVisible() ) then frame:Hide(); else frame:Show(); end end end function TradesBar_FishingBuddy_Over() local frame = getglobal("FishingBuddyFrame"); if (frame) then if( frame:IsVisible() ) then frame:Hide(); else frame:Show(); end end end function TradesBar_visableCheck(value) local hide_button = "yes"; if (TradesBarData[playerName]["Alchemy"] == "true" and value == TRADES_ALCHEMY) then local hide_button = "no"; return hide_button; end if (TradesBarData[playerName]["Blacksmithing"] == "true" and value == TRADES_BLACKSMITHING) then local hide_button = "no"; return hide_button; end if (TradesBarData[playerName]["Cooking"] == "true" and value == TRADES_COOKING) then local hide_button = "no"; return hide_button; end if (TradesBarData[playerName]["BasicCampfire"] == "true" and value == TRADES_BASIC_CAMPFIRE) then local hide_button = "no"; return hide_button; end if (TradesBarData[playerName]["Enchanting"] == "true" and value == TRADES_ENCHANTING) then local hide_button = "no"; return hide_button; end if (TradesBarData[playerName]["Disenchant"] == "true" and value == TRADES_DISENCHANT) then local hide_button = "no"; return hide_button; end if (TradesBarData[playerName]["Engineering"] == "true" and (value == TRADES_ENGINEERING or value == TRADES_GNOME_ENGINEERING or value == TRADES_GOBLIN_ENGINEERING)) then local hide_button = "no"; return hide_button; end if (TradesBarData[playerName]["FirstAid"] == "true" and value == TRADES_FIRST_AID) then local hide_button = "no"; return hide_button; end if (TradesBarData[playerName]["Fishing"] == "true" and value == TRADES_FISHING) then local hide_button = "no"; return hide_button; end if (TradesBarData[playerName]["Herbalism"] == "true" and value == TRADES_HERBALISM) then local hide_button = "no"; return hide_button; end if (TradesBarData[playerName]["FindHerbs"] == "true" and value == TRADES_FIND_HERBS) then local hide_button = "no"; return hide_button; end if (TradesBarData[playerName]["FindTreasure"] == "true" and value == TRADES_FIND_TREASURE) then local hide_button = "no"; return hide_button; end if (TradesBarData[playerName]["leatherworking"] == "true" and (value == TRADES_LEATHERWORKING or value == TRADES_DRAGONSCALE_LEATHERWORKING or value == TRADES_ELEMENTAL_LEATHERWORKING or value == TRADES_TRIBAL_LEATHERWORKING)) then local hide_button = "no"; return hide_button; end if (TradesBarData[playerName]["PickLock"] == "true" and value == TRADES_PICK_LOCK) then local hide_button = "no"; return hide_button; end if (TradesBarData[playerName]["PickPocket"] == "true" and value == TRADES_PICK_POCKET) then local hide_button = "no"; return hide_button; end if (TradesBarData[playerName]["FindMinerals"] == "true" and value == TRADES_FIND_MINERALS) then local hide_button = "no"; return hide_button; end if (TradesBarData[playerName]["Smelting"] == "true" and value == TRADES_SMELTING) then local hide_button = "no"; return hide_button; end if (TradesBarData[playerName]["Skinning"] == "true" and value == TRADES_SKINNING) then local hide_button = "no"; return hide_button; end if (TradesBarData[playerName]["Tailoring"] == "true" and (value == TRADES_TAILORING or value == TRADES_SHADOWEAVE_TAILORING)) then local hide_button = "no"; return hide_button; end if (TradesBarData[playerName]["Poisons"] == "true" and value == TRADES_POISONS) then local hide_button = "no"; return hide_button; end return hide_button; end function TradesBar_SpecialCheck(value) local i_am_special = "no"; if (value == "Leatherworking") then local if_Dragonscale = TradesBar_GetSpellID(TRADES_DRAGONSCALE_LEATHERWORKING); local if_Elemental = TradesBar_GetSpellID(TRADES_ELEMENTAL_LEATHERWORKING); local if_Tribal = TradesBar_GetSpellID(TRADES_TRIBAL_LEATHERWORKING); if (if_Dragonscale or if_Elemental or if_Tribal) then local i_am_special = "yes"; return i_am_special; end return i_am_special; elseif (value == "Engineering") then local if_Gnome = TradesBar_GetSpellID(TRADES_GNOME_ENGINEERING); local if_Goblin = TradesBar_GetSpellID(TRADES_GOBLIN_ENGINEERING); if (if_Gnome or if_Goblin) then local i_am_special = "yes"; return i_am_special; end return i_am_special; elseif (value == "Tailoring") then local if_Shadoweave = TradesBar_GetSpellID(TRADES_SHADOWEAVE_TAILORING); if (if_Shadoweave) then local i_am_special = "yes"; return i_am_special; end return i_am_special; end return i_am_special; end function TradesBar_Update() if (TradesBarData[playerName]) then if (TradesBarData[playerName]["hidebar"] == "false") then TradesBar_O(); i = 0; for key in Trades do getglobal("TradesBarButton"..key):Hide(); end TradesBar:Show(); for key, value in Trades do local id = TradesBar_GetSpellID(value); local i_am_special2 = TradesBar_SpecialCheck(value); local i_am_hidden = TradesBar_visableCheck(value); if (i_am_special2 == "no" and i_am_hidden == "no") then if (id) then i = i + 1; button = getglobal("TradesBarButton"..i); local texture = GetSpellTexture(id, BOOKTYPE_SPELL); getglobal("TradesBarButton"..i.."Icon"):SetTexture(texture); button.id = id; button.texture = texture; button:Show(); end end end if (i == 0) then TradesBar:Hide(); end end end end function TradesBar_UpdateCooldowns() for i = 1, 15 do button = getglobal("TradesBarButton"..i); if (button.id) then local cooldown = getglobal(button:GetName().."Cooldown"); local start, duration, enable = GetSpellCooldown(button.id, SpellBookFrame.bookType); if (start > 0 and duration > 0) then CooldownFrame_SetTimer(cooldown, start, duration, enable); end end end end function TradesBar_GetSpellID(spell, rank, debug) local i = 1; local spellID; local highestRank; while true do local spellName, spellRank = GetSpellName(i, SpellBookFrame.bookType); if (not spellName) then break; end if (spellName == spell) then if (rank) then if (spellRank == rank) then if (debug) then DEFAULT_CHAT_FRAME:AddMessage("Found |cffffffff'"..spell.." ("..rank..")'|r at slot |cffffffff'"..i.."'", 0.1, 1.0, 0.0); end return i; end else spellID = i; highestRank = spellRank; end end i = i + 1; if (i > 200) then break; end end if (debug) then DEFAULT_CHAT_FRAME:AddMessage("Could not find |cffffffff'"..spell.." ("..rank..")'", 1.0, 0.1, 0.0); end return spellID, highestRank; end function TradesBar_SetTooltip() if (this.id) then GameTooltip_SetDefaultAnchor(GameTooltip, this); GameTooltip:SetSpell(this.id, SpellBookFrame.bookType); GameTooltip:Show(); end end function TradesBar_OnClick() if (this.id and arg1 == "LeftButton") then local Fishing_spellID = TradesBar_GetSpellID(TRADES_FISHING); if (TradesBar_is_fishingbuddy and this.id == Fishing_spellID) then --DEFAULT_CHAT_FRAME:AddMessage("TradesBar DEBUG: Fishingbuddy found ~ "..this.id); TradesBar_FishingBuddy_Over(); else --DEFAULT_CHAT_FRAME:AddMessage("TradesBar DEBUG: Fishingbuddy NOT FOUND ~ "..this.id); CastSpell(this.id, BOOKTYPE_SPELL); end end end function TradesBar_OnBind(that_spell) local spellID = TradesBar_GetSpellID(that_spell); if (TradesBar_is_fishingbuddy and that_spell == TRADES_FISHING) then --DEFAULT_CHAT_FRAME:AddMessage("[TradesBar DEBUG:] FishingBuddy found ~ "..that_spell.." - "..TRADES_FISHING); TradesBar_FishingBuddy_Over(); else --DEFAULT_CHAT_FRAME:AddMessage("[TradesBar DEBUG:] FishingBuddy NOT FOUND ~ "..that_spell.." - "..TRADES_FISHING); CastSpell(spellID, BOOKTYPE_SPELL); end end function TradesBarGetPoint() local vLeft = TradesBar:GetLeft(); local vTop = TradesBar:GetTop(); TradesBarData[playerName]["left"] = vLeft; TradesBarData[playerName]["top"] = vTop; -- DEFAULT_CHAT_FRAME:AddMessage(vLeft.." "..vTop); end function TradesBar_setAlpha() local frame = getglobal("TradesBar"); if (event == "PLAYER_REGEN_DISABLED") then frame:SetAlpha(TradesBarData[playerName]["AlphaInCombat"]); else frame:SetAlpha(TradesBarData[playerName]["AlphaOutCombat"]); end end -- CONFIG -- OnShow function TradesBarConfig_OnShow() if (not TradesBarData) then this:Hide(); return; end if (not TradesBarData[playerName]) then this:Hide(); return; end TradesBarConfigPanel1CheckButton2:SetChecked( TradesBarData[playerName]["horizontal"] ); TradesBarConfigPanel1CheckButton1:SetChecked( TradesBarData[playerName]["hidebar"] ); TradesBarConfigPanel4CheckButton14:SetChecked( TradesBarData[playerName]["leatherworking"] ); TradesBarConfigPanel4CheckButton4:SetChecked( TradesBarData[playerName]["Alchemy"] ); TradesBarConfigPanel4CheckButton5:SetChecked( TradesBarData[playerName]["Blacksmithing"] ); TradesBarConfigPanel4CheckButton6:SetChecked( TradesBarData[playerName]["Cooking"] ); TradesBarConfigPanel5CheckButton10:SetChecked( TradesBarData[playerName]["BasicCampfire"] ); TradesBarConfigPanel4CheckButton7:SetChecked( TradesBarData[playerName]["Enchanting"] ); TradesBarConfigPanel5CheckButton20:SetChecked( TradesBarData[playerName]["Disenchant"] ); TradesBarConfigPanel4CheckButton8:SetChecked( TradesBarData[playerName]["Engineering"] ); TradesBarConfigPanel4CheckButton11:SetChecked( TradesBarData[playerName]["FirstAid"] ); TradesBarConfigPanel4CheckButton12:SetChecked( TradesBarData[playerName]["Fishing"] ); TradesBarConfigPanel4CheckButton9:SetChecked( TradesBarData[playerName]["Herbalism"] ); TradesBarConfigPanel5CheckButton19:SetChecked( TradesBarData[playerName]["FindHerbs"] ); TradesBarConfigPanel5CheckButton23:SetChecked( TradesBarData[playerName]["FindTreasure"] ); TradesBarConfigPanel5CheckButton21:SetChecked( TradesBarData[playerName]["PickLock"] ); TradesBarConfigPanel5CheckButton22:SetChecked( TradesBarData[playerName]["PickPocket"] ); TradesBarConfigPanel5CheckButton18:SetChecked( TradesBarData[playerName]["FindMinerals"] ); TradesBarConfigPanel4CheckButton16:SetChecked( TradesBarData[playerName]["Smelting"] ); TradesBarConfigPanel4CheckButton15:SetChecked( TradesBarData[playerName]["Skinning"] ); TradesBarConfigPanel4CheckButton13:SetChecked( TradesBarData[playerName]["Tailoring"] ); TradesBarConfigPanel5CheckButton17:SetChecked( TradesBarData[playerName]["Poisons"] ); TradesBarConfigPanel1SliderScale:SetValue( TradesBarData[playerName]["scale"] ); end function TradesBarConfigScale_OnClick() TradesBarData[playerName]["scale"] = this:GetValue(); TradesBar_Scale(); end function TradesBarConfigCheckBoxHide_OnClick() if (TradesBarData[playerName]["hidebar"] == "true") then TradesBarData[playerName]["hidebar"] = "false"; else TradesBarData[playerName]["hidebar"] = "true"; end TradesBar_Hide(); TradesBar_Update(); end function TradesBarConfigCheckBox_OnClick() if (TradesBarData[playerName]["horizontal"] == "true") then TradesBarData[playerName]["horizontal"] = "false"; else TradesBarData[playerName]["horizontal"] = "true" end TradesBar_O(); end function TradesBarConfigCheckBoxOrder_OnClick() if (TradesBarData[playerName]["order"] == "az") then TradesBarData[playerName]["order"] = "za"; else TradesBarData[playerName]["order"] = "az" end TradesBar_O(); end function TradesBarConfigCheckBox_Alchemy_OnClick() if (TradesBarData[playerName]["Alchemy"] == "true") then TradesBarData[playerName]["Alchemy"] = "false"; else TradesBarData[playerName]["Alchemy"] = "true" end TradesBar_Update(); end function TradesBarConfigCheckBox_Blacksmithing_OnClick() if (TradesBarData[playerName]["Blacksmithing"] == "true") then TradesBarData[playerName]["Blacksmithing"] = "false"; else TradesBarData[playerName]["Blacksmithing"] = "true" end TradesBar_Update(); end function TradesBarConfigCheckBox_Cooking_OnClick() if (TradesBarData[playerName]["Cooking"] == "true") then TradesBarData[playerName]["Cooking"] = "false"; else TradesBarData[playerName]["Cooking"] = "true" end TradesBar_Update(); end function TradesBarConfigCheckBox_BasicCampfire_OnClick() if (TradesBarData[playerName]["BasicCampfire"] == "true") then TradesBarData[playerName]["BasicCampfire"] = "false"; else TradesBarData[playerName]["BasicCampfire"] = "true" end TradesBar_Update(); end function TradesBarConfigCheckBox_Enchanting_OnClick() if (TradesBarData[playerName]["Enchanting"] == "true") then TradesBarData[playerName]["Enchanting"] = "false"; else TradesBarData[playerName]["Enchanting"] = "true" end TradesBar_Update(); end function TradesBarConfigCheckBox_Disenchant_OnClick() if (TradesBarData[playerName]["Disenchant"] == "true") then TradesBarData[playerName]["Disenchant"] = "false"; else TradesBarData[playerName]["Disenchant"] = "true" end TradesBar_Update(); end function TradesBarConfigCheckBox_Engineering_OnClick() if (TradesBarData[playerName]["Engineering"] == "true") then TradesBarData[playerName]["Engineering"] = "false"; else TradesBarData[playerName]["Engineering"] = "true" end TradesBar_Update(); end function TradesBarConfigCheckBox_FirstAid_OnClick() if (TradesBarData[playerName]["FirstAid"] == "true") then TradesBarData[playerName]["FirstAid"] = "false"; else TradesBarData[playerName]["FirstAid"] = "true" end TradesBar_Update(); end function TradesBarConfigCheckBox_Fishing_OnClick() if (TradesBarData[playerName]["Fishing"] == "true") then TradesBarData[playerName]["Fishing"] = "false"; else TradesBarData[playerName]["Fishing"] = "true" end TradesBar_Update(); end function TradesBarConfigCheckBox_Herbalism_OnClick() if (TradesBarData[playerName]["Herbalism"] == "true") then TradesBarData[playerName]["Herbalism"] = "false"; else TradesBarData[playerName]["Herbalism"] = "true" end TradesBar_Update(); end function TradesBarConfigCheckBox_FindHerbs_OnClick() if (TradesBarData[playerName]["FindHerbs"] == "true") then TradesBarData[playerName]["FindHerbs"] = "false"; else TradesBarData[playerName]["FindHerbs"] = "true" end TradesBar_Update(); end function TradesBarConfigCheckBox_FindTreasure_OnClick() if (TradesBarData[playerName]["FindTreasure"] == "true") then TradesBarData[playerName]["FindTreasure"] = "false"; else TradesBarData[playerName]["FindTreasure"] = "true" end TradesBar_Update(); end function TradesBarConfigCheckBox_leatherworking_OnClick() if (TradesBarData[playerName]["leatherworking"] == "true") then TradesBarData[playerName]["leatherworking"] = "false"; else TradesBarData[playerName]["leatherworking"] = "true" end TradesBar_Update(); end function TradesBarConfigCheckBox_PickLock_OnClick() if (TradesBarData[playerName]["PickLock"] == "true") then TradesBarData[playerName]["PickLock"] = "false"; else TradesBarData[playerName]["PickLock"] = "true" end TradesBar_Update(); end function TradesBarConfigCheckBox_PickPocket_OnClick() if (TradesBarData[playerName]["PickPocket"] == "true") then TradesBarData[playerName]["PickPocket"] = "false"; else TradesBarData[playerName]["PickPocket"] = "true" end TradesBar_Update(); end function TradesBarConfigCheckBox_FindMinerals_OnClick() if (TradesBarData[playerName]["FindMinerals"] == "true") then TradesBarData[playerName]["FindMinerals"] = "false"; else TradesBarData[playerName]["FindMinerals"] = "true" end TradesBar_Update(); end function TradesBarConfigCheckBox_Smelting_OnClick() if (TradesBarData[playerName]["Smelting"] == "true") then TradesBarData[playerName]["Smelting"] = "false"; else TradesBarData[playerName]["Smelting"] = "true" end TradesBar_Update(); end function TradesBarConfigCheckBox_Skinning_OnClick() if (TradesBarData[playerName]["Skinning"] == "true") then TradesBarData[playerName]["Skinning"] = "false"; else TradesBarData[playerName]["Skinning"] = "true" end TradesBar_Update(); end function TradesBarConfigCheckBox_Tailoring_OnClick() if (TradesBarData[playerName]["Tailoring"] == "true") then TradesBarData[playerName]["Tailoring"] = "false"; else TradesBarData[playerName]["Tailoring"] = "true" end TradesBar_Update(); end function TradesBarConfigCheckBox_Poisons_OnClick() if (TradesBarData[playerName]["Poisons"] == "true") then TradesBarData[playerName]["Poisons"] = "false"; else TradesBarData[playerName]["Poisons"] = "true" end TradesBar_Update(); end