From 34262b3730c4556c8deada3278368ce7d78827ba Mon Sep 17 00:00:00 2001 From: torhal Date: Wed, 23 Sep 2009 06:15:10 +0000 Subject: [PATCH] In AckisRecipeList.lua: Added addon:DumpMembers() to help identify things which shouldn't be members of the AddOn object. Changed/verified upvalues. In ARLFrame.lua: Changed addon.RecipeListButton and addon.PlusListButton to MainPanel.recipe_buttons and MainPanel.waterfall_buttons. --- ARLFrame.lua | 56 ++++----- AckisRecipeList.lua | 346 +++++++++++++++++++++++++++------------------------ 2 files changed, 214 insertions(+), 188 deletions(-) diff --git a/ARLFrame.lua b/ARLFrame.lua index 0fb9d0c..e8cdaa1 100644 --- a/ARLFrame.lua +++ b/ARLFrame.lua @@ -1358,8 +1358,8 @@ do end local function SetButtonScripts(bIndex) - local pButton = addon.PlusListButton[bIndex] - local rButton = addon.RecipeListButton[bIndex] + local pButton = MainPanel.waterfall_buttons[bIndex] + local rButton = MainPanel.recipe_buttons[bIndex] local dStringIndex = rButton.sI local rIndex = DisplayStrings[dStringIndex].sID local playerFaction = playerData.playerFaction @@ -1377,8 +1377,8 @@ do end local function ClearButtonScripts(bIndex) - local pButton = addon.PlusListButton[bIndex] - local rButton = addon.RecipeListButton[bIndex] + local pButton = MainPanel.waterfall_buttons[bIndex] + local rButton = MainPanel.recipe_buttons[bIndex] pButton:SetScript("OnEnter", nil) pButton:SetScript("OnLeave", nil) @@ -1389,9 +1389,9 @@ do function RecipeList_Update() -- Clear out the current buttons for i = 1, NUM_RECIPE_LINES do - addon.RecipeListButton[i]:SetText("") - addon.RecipeListButton[i].sI = 0 - addon.PlusListButton[i]:Hide() + MainPanel.recipe_buttons[i]:SetText("") + MainPanel.recipe_buttons[i].sI = 0 + MainPanel.waterfall_buttons[i]:Hide() ClearButtonScripts(i) end local entries = #DisplayStrings @@ -1411,24 +1411,24 @@ do while stayInLoop do if DisplayStrings[stringsIndex].IsRecipe then - addon.PlusListButton[buttonIndex]:Show() + MainPanel.waterfall_buttons[buttonIndex]:Show() if DisplayStrings[stringsIndex].IsExpanded then - addon.PlusListButton[buttonIndex]:SetNormalTexture("Interface\\Buttons\\UI-MinusButton-Up") - addon.PlusListButton[buttonIndex]:SetPushedTexture("Interface\\Buttons\\UI-MinusButton-Down") - addon.PlusListButton[buttonIndex]:SetHighlightTexture("Interface\\Buttons\\UI-PlusButton-Hilight") - addon.PlusListButton[buttonIndex]:SetDisabledTexture("Interface\\Buttons\\UI-MinusButton-Disabled") + MainPanel.waterfall_buttons[buttonIndex]:SetNormalTexture("Interface\\Buttons\\UI-MinusButton-Up") + MainPanel.waterfall_buttons[buttonIndex]:SetPushedTexture("Interface\\Buttons\\UI-MinusButton-Down") + MainPanel.waterfall_buttons[buttonIndex]:SetHighlightTexture("Interface\\Buttons\\UI-PlusButton-Hilight") + MainPanel.waterfall_buttons[buttonIndex]:SetDisabledTexture("Interface\\Buttons\\UI-MinusButton-Disabled") else - addon.PlusListButton[buttonIndex]:SetNormalTexture("Interface\\Buttons\\UI-PlusButton-Up") - addon.PlusListButton[buttonIndex]:SetPushedTexture("Interface\\Buttons\\UI-PlusButton-Down") - addon.PlusListButton[buttonIndex]:SetHighlightTexture("Interface\\Buttons\\UI-PlusButton-Hilight") - addon.PlusListButton[buttonIndex]:SetDisabledTexture("Interface\\Buttons\\UI-PlusButton-Disabled") + MainPanel.waterfall_buttons[buttonIndex]:SetNormalTexture("Interface\\Buttons\\UI-PlusButton-Up") + MainPanel.waterfall_buttons[buttonIndex]:SetPushedTexture("Interface\\Buttons\\UI-PlusButton-Down") + MainPanel.waterfall_buttons[buttonIndex]:SetHighlightTexture("Interface\\Buttons\\UI-PlusButton-Hilight") + MainPanel.waterfall_buttons[buttonIndex]:SetDisabledTexture("Interface\\Buttons\\UI-PlusButton-Disabled") end else - addon.PlusListButton[buttonIndex]:Hide() + MainPanel.waterfall_buttons[buttonIndex]:Hide() end - addon.RecipeListButton[buttonIndex]:SetText(DisplayStrings[stringsIndex].String) - addon.RecipeListButton[buttonIndex].sI = stringsIndex + MainPanel.recipe_buttons[buttonIndex]:SetText(DisplayStrings[stringsIndex].String) + MainPanel.recipe_buttons[buttonIndex].sI = stringsIndex SetButtonScripts(buttonIndex) @@ -2405,7 +2405,7 @@ local function expandEntry(dsIndex) end function addon.RecipeItem_OnClick(button) - local clickedIndex = addon.RecipeListButton[button].sI + local clickedIndex = MainPanel.recipe_buttons[button].sI -- Don't do anything if they've clicked on an empty button if not clickedIndex or (clickedIndex == 0) then return end @@ -3642,29 +3642,29 @@ function addon:InitializeFrame() ------------------------------------------------------------------------------- -- The main recipe list buttons and scrollframe ------------------------------------------------------------------------------- - addon.PlusListButton = {} - addon.RecipeListButton = {} + MainPanel.waterfall_buttons = {} + MainPanel.recipe_buttons = {} for i = 1, NUM_RECIPE_LINES do - local Temp_Plus = GenericCreateButton("ARL_PlusListButton" .. i, MainPanel, + local Temp_Plus = GenericCreateButton("ARL_WaterfallButton" .. i, MainPanel, 16, 16, "TOPLEFT", MainPanel, "TOPLEFT", 20, -100, "GameFontNormalSmall", "GameFontHighlightSmall", "", "LEFT", "", 2) - local Temp_Recipe = GenericCreateButton("ARL_RecipeListButton" .. i, MainPanel, + local Temp_Recipe = GenericCreateButton("ARL_RecipeButton" .. i, MainPanel, 16, 224, "TOPLEFT", MainPanel, "TOPLEFT", 37, -100, "GameFontNormalSmall", "GameFontHighlightSmall", "Blort", "LEFT", "", 0) if not (i == 1) then - Temp_Plus:SetPoint("TOPLEFT", addon.PlusListButton[i-1], "BOTTOMLEFT", 0, 3) - Temp_Recipe:SetPoint("TOPLEFT", addon.RecipeListButton[i-1], "BOTTOMLEFT", 0, 3) + Temp_Plus:SetPoint("TOPLEFT", MainPanel.waterfall_buttons[i-1], "BOTTOMLEFT", 0, 3) + Temp_Recipe:SetPoint("TOPLEFT", MainPanel.recipe_buttons[i-1], "BOTTOMLEFT", 0, 3) end Temp_Plus:SetScript("OnClick", function() addon.RecipeItem_OnClick(i) end) Temp_Recipe:SetScript("OnClick", function() addon.RecipeItem_OnClick(i) end) - addon.PlusListButton[i] = Temp_Plus - addon.RecipeListButton[i] = Temp_Recipe + MainPanel.waterfall_buttons[i] = Temp_Plus + MainPanel.recipe_buttons[i] = Temp_Recipe end local ARL_RecipeScrollFrame = CreateFrame("ScrollFrame", "ARL_RecipeScrollFrame", MainPanel, "FauxScrollFrameTemplate") diff --git a/AckisRecipeList.lua b/AckisRecipeList.lua index 05675e7..4c76187 100644 --- a/AckisRecipeList.lua +++ b/AckisRecipeList.lua @@ -31,17 +31,46 @@ This source code is released under All Rights Reserved. -- @name AckisRecipeList.lua -- @release 1.0 -local LibStub = LibStub +------------------------------------------------------------------------------- +-- Localized Lua globals. +------------------------------------------------------------------------------- +local _G = getfenv(0) -local MODNAME = "Ackis Recipe List" +local tostring = _G.tostring +local tonumber = _G.tonumber + +local pairs, ipairs = _G.pairs, _G.ipairs +local select = _G.select + +local table = _G.table +local twipe = table.wipe +local tconcat = table.concat +local tinsert = table.insert + +local string = _G.string +local strformat = string.format +local strfind = string.find +local strmatch = string.match +local strlower = string.lower + +------------------------------------------------------------------------------- +-- Localized Blizzard API. +------------------------------------------------------------------------------- +local GetNumTradeSkills = _G.GetNumTradeSkills +local GetSpellInfo = _G.GetSpellInfo -AckisRecipeList = LibStub("AceAddon-3.0"):NewAddon(MODNAME, "AceConsole-3.0", "AceEvent-3.0") +------------------------------------------------------------------------------- +-- AddOn namespace. +------------------------------------------------------------------------------- +local LibStub = _G.LibStub +local MODNAME = "Ackis Recipe List" +local addon = LibStub("AceAddon-3.0"):NewAddon(MODNAME, "AceConsole-3.0", "AceEvent-3.0") +_G.AckisRecipeList = addon --@alpha@ -ARL = AckisRecipeList +_G.ARL = addon --@end-alpha@ -local addon = LibStub("AceAddon-3.0"):GetAddon(MODNAME) local L = LibStub("AceLocale-3.0"):GetLocale(MODNAME) ------------------------------------------------------------------------------- @@ -62,7 +91,7 @@ do for idx, lib in ipairs(REQUIRED_LIBS) do if not LibStub:GetLibrary(lib, true) then missing = true - addon:Print(format(L["MISSING_LIBRARY"], lib)) + addon:Print(strformat(L["MISSING_LIBRARY"], lib)) end end return missing @@ -73,7 +102,7 @@ if MissingLibraries() then --@debug@ addon:Print("You are using an SVN version of ARL. As per WowAce/Curseforge standards, SVN externals are not set up. You will have to install Ace3, Babble-Faction-3.0, Babble-Zone-3.0, Babble-Boss-3.0, LibAboutPanel, LibSharedMedia-3.0, and LibBetterBlizzoptions in order for the addon to function correctly.") --@end-debug@ - AckisRecipeList = nil + _G.AckisRecipeList = nil return end @@ -82,34 +111,31 @@ local BFAC = LibStub("LibBabble-Faction-3.0"):GetLookupTable() -- Global Frame Variables addon.optionsFrame = {} --- Make global API calls local to speed things up -local GetNumTradeSkills = GetNumTradeSkills -local GetSpellInfo = GetSpellInfo -local GetTradeSkillLine = GetTradeSkillLine +do + local output = {} -local tostring = tostring -local tonumber = tonumber + function addon:DumpMembers(match) + twipe(output) + tinsert(output, "Addon Object members.\n") -local pairs = pairs -local select = select + local count = 0 -local table = table -local twipe = table.wipe -local tremove = table.remove -local tconcat = table.concat -local tinsert = table.insert + for key, value in pairs(self) do + local val_type = type(value) -local string = string -local format = string.format -local sfind = string.find -local smatch = string.match -local strlower = string.lower + if not match or val_type == match then + tinsert(output, key.. " ("..val_type..")") + count = count + 1 + end + end + tinsert(output, string.format("\n%d found\n", count)) + self:DisplayTextDump(nil, nil, tconcat(output, "\n")) + end +end -- do ------------------------------------------------------------------------------- -- Initialization functions ------------------------------------------------------------------------------- - ----Function run when the addon is initialized. Registers the slash commands, options, and database function addon:OnInitialize() -- Set default options, which are to include everything in the scan @@ -379,10 +405,10 @@ end do - local GetTradeSkillListLink = GetTradeSkillListLink - local UnitName = UnitName - local GetRealmName = GetRealmName - local IsTradeSkillLinked = IsTradeSkillLinked + local GetTradeSkillListLink = _G.GetTradeSkillListLink + local UnitName = _G.UnitName + local GetRealmName = _G.GetRealmName + local IsTradeSkillLinked = _G.IsTradeSkillLinked function addon:TRADE_SKILL_SHOW() local ownskill = IsTradeSkillLinked() @@ -558,7 +584,7 @@ function addon:addTradeSkill(RecipeDB, SpellID, SkillLevel, ItemID, Rarity, Prof local recipeentry = RecipeDB[SpellID] if not recipeentry["Name"] then - self:Print(format(L["SpellIDCache"], SpellID)) + self:Print(strformat(L["SpellIDCache"], SpellID)) end -- Set all the flags to be false, will also set the padding spaces to false as well. @@ -613,7 +639,7 @@ do local acquire = RecipeDB[SpellID]["Acquire"] --@alpha@ - wipe(AcquireIDList) + twipe(AcquireIDList) --@end-alpha@ while (i < numvars) do @@ -725,9 +751,9 @@ end -- This source code is release under Public Domain local function GetIDFromLink(SpellLink) - --return smatch(SpellLink, "|H%w+:(%d+)") + --return strmatch(SpellLink, "|H%w+:(%d+)") -- Faster matching per Neffi - return smatch(SpellLink, "^|c%x%x%x%x%x%x%x%x|H%w+:(%d+)") + return strmatch(SpellLink, "^|c%x%x%x%x%x%x%x%x|H%w+:(%d+)") end @@ -1501,8 +1527,8 @@ do return "" end - wipe(location_list) - wipe(location_checklist) + twipe(location_list) + twipe(location_checklist) local recipe_acquire = RecipeList[SpellID]["Acquire"] @@ -1651,7 +1677,7 @@ do return "" -- We have a match, return that spell name elseif (SpecialtyTable[playerData.playerProfession]) and (SpecialtyTable[playerData.playerProfession][spellName]) then - local ID = smatch(GetSpellLink(spellName), "^|c%x%x%x%x%x%x%x%x|Hspell:(%d+)") + local ID = strmatch(GetSpellLink(spellName), "^|c%x%x%x%x%x%x%x%x|Hspell:(%d+)") return ID end end @@ -1939,25 +1965,25 @@ function addon:SearchRecipeDB(RecipeDB, searchstring) recipe["Search"] = false -- Allow us to search by spell ID - if sfind(strlower(SpellID),searchstring) or + if strfind(strlower(SpellID),searchstring) or -- Allow us to search by item ID - (recipe["ItemID"] and sfind(strlower(recipe["ItemID"]),searchstring)) or + (recipe["ItemID"] and strfind(strlower(recipe["ItemID"]),searchstring)) or -- Allow us to search by name - (recipe["Name"] and sfind(strlower(recipe["Name"]),searchstring)) or + (recipe["Name"] and strfind(strlower(recipe["Name"]),searchstring)) or -- Allow us to search by locations - (recipe["Locations"] and sfind(recipe["Locations"],searchstring)) or + (recipe["Locations"] and strfind(recipe["Locations"],searchstring)) or -- Allow us to search by specialty - (recipe["Specialty"] and sfind(recipe["Specialty"],searchstring)) or + (recipe["Specialty"] and strfind(recipe["Specialty"],searchstring)) or -- Allow us to search by skill level - (recipe["Level"] and sfind(recipe["Level"],searchstring)) or + (recipe["Level"] and strfind(recipe["Level"],searchstring)) or -- Allow us to search by Rarity - (recipe["Rarity"] and sfind(recipe["Rarity"],searchstring)) then + (recipe["Rarity"] and strfind(recipe["Rarity"],searchstring)) then recipe["Search"] = true end @@ -1983,9 +2009,9 @@ function addon:GetTextDump(RecipeDB, profession) local texttable = {} -- Add a header to the text table - tinsert(texttable,format("Ackis Recipe List Text Dump for %s",profession)) - tinsert(texttable,"Text output of all recipes and acquire information. Output is in the form of comma separated values.\n") - tinsert(texttable,"Spell ID, Recipe Name, Skill Level, ARL Filter Flags, Acquire Methods, Known\n") + tinsert(texttable, strformat("Ackis Recipe List Text Dump for %s", profession)) + tinsert(texttable, "Text output of all recipes and acquire information. Output is in the form of comma separated values.\n") + tinsert(texttable, "Spell ID, Recipe Name, Skill Level, ARL Filter Flags, Acquire Methods, Known\n") for SpellID in pairs(RecipeDB) do @@ -1994,25 +2020,25 @@ function addon:GetTextDump(RecipeDB, profession) if (recipeprof == profession) then -- Add Spell ID, Name and Skill Level to the list - tinsert(texttable,SpellID) - tinsert(texttable,",") - tinsert(texttable,RecipeDB[SpellID]["Name"]) - tinsert(texttable,",") - tinsert(texttable,RecipeDB[SpellID]["Level"]) - tinsert(texttable,",[") + tinsert(texttable, SpellID) + tinsert(texttable, ", ") + tinsert(texttable, RecipeDB[SpellID]["Name"]) + tinsert(texttable, ", ") + tinsert(texttable, RecipeDB[SpellID]["Level"]) + tinsert(texttable, ", [") -- Add in all the filter flags local flags = RecipeDB[SpellID]["Flags"] -- Find out which flags are marked as "true" - for i=1,127,1 do + for i=1, 127, 1 do if (flags[i] == true) then - tinsert(texttable,i) - tinsert(texttable,",") + tinsert(texttable, i) + tinsert(texttable, ", ") end end - tinsert(texttable,"],[") + tinsert(texttable, "], [") -- Find out which unique acquire methods we have local acquire = RecipeDB[SpellID]["Acquire"] @@ -2040,14 +2066,14 @@ function addon:GetTextDump(RecipeDB, profession) -- Add all the acquire methods in for i in pairs(acquirelist) do - tinsert(texttable,i) - tinsert(texttable,",") + tinsert(texttable, i) + tinsert(texttable, ", ") end if (RecipeDB[SpellID]["Known"]) then - tinsert(texttable,"],true\n") + tinsert(texttable, "], true\n") else - tinsert(texttable,"],false\n") + tinsert(texttable, "], false\n") end end @@ -2083,7 +2109,7 @@ do self:Print("Profession: " .. x["Profession"]) end if (x["ItemID"]) then - local _,linky = GetItemInfo(x["ItemID"]) + local _, linky = GetItemInfo(x["ItemID"]) self:Print("Creates: " .. linky .. "(" .. x["ItemID"] .. ")") end if (x["Locations"]) then @@ -2094,299 +2120,299 @@ do local flagstr = "" if (flags[1] == true) then - flagstr = flagstr .. "Ally," + flagstr = flagstr .. "Ally, " end if (flags[2] == true) then - flagstr = flagstr .. "Horde," + flagstr = flagstr .. "Horde, " end if (flags[3] == true) then - flagstr = flagstr .. "Trn," + flagstr = flagstr .. "Trn, " end if (flags[4] == true) then - flagstr = flagstr .. "Ven," + flagstr = flagstr .. "Ven, " end if (flags[5] == true) then - flagstr = flagstr .. "Instance," + flagstr = flagstr .. "Instance, " end if (flags[6] == true) then - flagstr = flagstr .. "Raid," + flagstr = flagstr .. "Raid, " end if (flags[7] == true) then - flagstr = flagstr .. "Seasonal," + flagstr = flagstr .. "Seasonal, " end if (flags[8] == true) then - flagstr = flagstr .. "Quest," + flagstr = flagstr .. "Quest, " end if (flags[9] == true) then - flagstr = flagstr .. "PVP," + flagstr = flagstr .. "PVP, " end if (flags[10] == true) then - flagstr = flagstr .. "World," + flagstr = flagstr .. "World, " end if (flags[11] == true) then - flagstr = flagstr .. "Mob," + flagstr = flagstr .. "Mob, " end if (flags[12] == true) then - flagstr = flagstr .. "Disc," + flagstr = flagstr .. "Disc, " end if (flags[13] == true) then - flagstr = flagstr .. "13," + flagstr = flagstr .. "13, " end if (flags[14] == true) then - flagstr = flagstr .. "14," + flagstr = flagstr .. "14, " end if (flags[15] == true) then - flagstr = flagstr .. "15," + flagstr = flagstr .. "15, " end if (flags[16] == true) then - flagstr = flagstr .. "16," + flagstr = flagstr .. "16, " end if (flags[17] == true) then - flagstr = flagstr .. "17," + flagstr = flagstr .. "17, " end if (flags[18] == true) then - flagstr = flagstr .. "18," + flagstr = flagstr .. "18, " end if (flags[19] == true) then - flagstr = flagstr .. "19," + flagstr = flagstr .. "19, " end if (flags[20] == true) then - flagstr = flagstr .. "20," + flagstr = flagstr .. "20, " end if (flags[21] == true) then - flagstr = flagstr .. "DK," + flagstr = flagstr .. "DK, " end if (flags[22] == true) then - flagstr = flagstr .. "Druid," + flagstr = flagstr .. "Druid, " end if (flags[23] == true) then - flagstr = flagstr .. "Huntard," + flagstr = flagstr .. "Huntard, " end if (flags[24] == true) then - flagstr = flagstr .. "Mage," + flagstr = flagstr .. "Mage, " end if (flags[25] == true) then - flagstr = flagstr .. "Pally," + flagstr = flagstr .. "Pally, " end if (flags[26] == true) then - flagstr = flagstr .. "Priest," + flagstr = flagstr .. "Priest, " end if (flags[27] == true) then - flagstr = flagstr .. "Sham," + flagstr = flagstr .. "Sham, " end if (flags[28] == true) then - flagstr = flagstr .. "Rogue," + flagstr = flagstr .. "Rogue, " end if (flags[29] == true) then - flagstr = flagstr .. "Lock," + flagstr = flagstr .. "Lock, " end if (flags[30] == true) then - flagstr = flagstr .. "War," + flagstr = flagstr .. "War, " end if (flags[31] == true) then - flagstr = flagstr .. "31," + flagstr = flagstr .. "31, " end if (flags[36] == true) then - flagstr = flagstr .. "IBoE," + flagstr = flagstr .. "IBoE, " end if (flags[37] == true) then - flagstr = flagstr .. "IBoP," + flagstr = flagstr .. "IBoP, " end if (flags[38] == true) then - flagstr = flagstr .. "IBoA," + flagstr = flagstr .. "IBoA, " end if (flags[39] == true) then - flagstr = flagstr .. "39," + flagstr = flagstr .. "39, " end if (flags[40] == true) then - flagstr = flagstr .. "RBoE," + flagstr = flagstr .. "RBoE, " end if (flags[41] == true) then - flagstr = flagstr .. "RBoP," + flagstr = flagstr .. "RBoP, " end if (flags[42] == true) then - flagstr = flagstr .. "RBoA," + flagstr = flagstr .. "RBoA, " end if (flags[51] == true) then - flagstr = flagstr .. "Melee," + flagstr = flagstr .. "Melee, " end if (flags[52] == true) then - flagstr = flagstr .. "Tank," + flagstr = flagstr .. "Tank, " end if (flags[53] == true) then - flagstr = flagstr .. "Heal," + flagstr = flagstr .. "Heal, " end if (flags[54] == true) then - flagstr = flagstr .. "Caster," + flagstr = flagstr .. "Caster, " end if (flags[56] == true) then - flagstr = flagstr .. "Cloth," + flagstr = flagstr .. "Cloth, " end if (flags[57] == true) then - flagstr = flagstr .. "Leather," + flagstr = flagstr .. "Leather, " end if (flags[58] == true) then - flagstr = flagstr .. "Mail," + flagstr = flagstr .. "Mail, " end if (flags[59] == true) then - flagstr = flagstr .. "Plate," + flagstr = flagstr .. "Plate, " end if (flags[60] == true) then - flagstr = flagstr .. "Cloak," + flagstr = flagstr .. "Cloak, " end if (flags[61] == true) then - flagstr = flagstr .. "Trinket," + flagstr = flagstr .. "Trinket, " end if (flags[62] == true) then - flagstr = flagstr .. "Ring," + flagstr = flagstr .. "Ring, " end if (flags[63] == true) then - flagstr = flagstr .. "Neck," + flagstr = flagstr .. "Neck, " end if (flags[64] == true) then - flagstr = flagstr .. "Shield," + flagstr = flagstr .. "Shield, " end if (flags[66] == true) then - flagstr = flagstr .. "1H," + flagstr = flagstr .. "1H, " end if (flags[67] == true) then - flagstr = flagstr .. "2H," + flagstr = flagstr .. "2H, " end if (flags[68] == true) then - flagstr = flagstr .. "Axe," + flagstr = flagstr .. "Axe, " end if (flags[69] == true) then - flagstr = flagstr .. "Sword," + flagstr = flagstr .. "Sword, " end if (flags[70] == true) then - flagstr = flagstr .. "Mace," + flagstr = flagstr .. "Mace, " end if (flags[71] == true) then - flagstr = flagstr .. "Polearm," + flagstr = flagstr .. "Polearm, " end if (flags[72] == true) then - flagstr = flagstr .. "Dagger," + flagstr = flagstr .. "Dagger, " end if (flags[73] == true) then - flagstr = flagstr .. "Staff," + flagstr = flagstr .. "Staff, " end if (flags[74] == true) then - flagstr = flagstr .. "Wand," + flagstr = flagstr .. "Wand, " end if (flags[75] == true) then - flagstr = flagstr .. "Thrown," + flagstr = flagstr .. "Thrown, " end if (flags[76] == true) then - flagstr = flagstr .. "Bow," + flagstr = flagstr .. "Bow, " end if (flags[77] == true) then - flagstr = flagstr .. "xBow," + flagstr = flagstr .. "xBow, " end if (flags[78] == true) then - flagstr = flagstr .. "Ammo," + flagstr = flagstr .. "Ammo, " end if (flags[79] == true) then - flagstr = flagstr .. "Fist," + flagstr = flagstr .. "Fist, " end self:Print("Flags: " .. flagstr) flagstr = "" if (flags[96] == true) then - flagstr = flagstr .. "AD," + flagstr = flagstr .. "AD, " end if (flags[97] == true) then - flagstr = flagstr .. "CC," + flagstr = flagstr .. "CC, " end if (flags[98] == true) then - flagstr = flagstr .. "TB," + flagstr = flagstr .. "TB, " end if (flags[99] == true) then - flagstr = flagstr .. "TH," + flagstr = flagstr .. "TH, " end if (flags[100] == true) then - flagstr = flagstr .. "ZH," + flagstr = flagstr .. "ZH, " end if (flags[101] == true) then - flagstr = flagstr .. "Aldor," + flagstr = flagstr .. "Aldor, " end if (flags[102] == true) then - flagstr = flagstr .. "Ashtongue," + flagstr = flagstr .. "Ashtongue, " end if (flags[103] == true) then - flagstr = flagstr .. "CE," + flagstr = flagstr .. "CE, " end if (flags[104] == true) then - flagstr = flagstr .. "Thrall/HH," + flagstr = flagstr .. "Thrall/HH, " end if (flags[105] == true) then - flagstr = flagstr .. "Consort," + flagstr = flagstr .. "Consort, " end if (flags[106] == true) then - flagstr = flagstr .. "KoT," + flagstr = flagstr .. "KoT, " end if (flags[107] == true) then - flagstr = flagstr .. "LC," + flagstr = flagstr .. "LC, " end if (flags[108] == true) then - flagstr = flagstr .. "Mag/Kur," + flagstr = flagstr .. "Mag/Kur, " end if (flags[109] == true) then - flagstr = flagstr .. "SoS," + flagstr = flagstr .. "SoS, " end if (flags[110] == true) then - flagstr = flagstr .. "Scryer," + flagstr = flagstr .. "Scryer, " end if (flags[111] == true) then - flagstr = flagstr .. "Sha'tar," + flagstr = flagstr .. "Sha'tar, " end if (flags[112] == true) then - flagstr = flagstr .. "Shattered Sun," + flagstr = flagstr .. "Shattered Sun, " end if (flags[113] == true) then - flagstr = flagstr .. "Spore," + flagstr = flagstr .. "Spore, " end if (flags[114] == true) then - flagstr = flagstr .. "VE," + flagstr = flagstr .. "VE, " end if (flags[115] == true) then - flagstr = flagstr .. "AC," + flagstr = flagstr .. "AC, " end if (flags[116] == true) then - flagstr = flagstr .. "Frenzy," + flagstr = flagstr .. "Frenzy, " end if (flags[117] == true) then - flagstr = flagstr .. "Ebon," + flagstr = flagstr .. "Ebon, " end if (flags[118] == true) then - flagstr = flagstr .. "Kirin," + flagstr = flagstr .. "Kirin, " end if (flags[119] == true) then - flagstr = flagstr .. "Hodir," + flagstr = flagstr .. "Hodir, " end if (flags[120] == true) then - flagstr = flagstr .. "Kalu'ak," + flagstr = flagstr .. "Kalu'ak, " end if (flags[121] == true) then - flagstr = flagstr .. "Oracles," + flagstr = flagstr .. "Oracles, " end if (flags[122] == true) then - flagstr = flagstr .. "Wyrm," + flagstr = flagstr .. "Wyrm, " end if (flags[123] == true) then - flagstr = flagstr .. "Wrath Common Factions (The Silver Covenant/The Sunreavers)," + flagstr = flagstr .. "Wrath Common Factions (The Silver Covenant/The Sunreavers), " end if (flags[124] == true) then - flagstr = flagstr .. "Wrath Common Factions (Explorers' League/The Hand of Vengeance)," + flagstr = flagstr .. "Wrath Common Factions (Explorers' League/The Hand of Vengeance), " end if (flags[125] == true) then - flagstr = flagstr .. "Wrath Common Factions(Explorer's League/Valiance Expedition)," + flagstr = flagstr .. "Wrath Common Factions(Explorer's League/Valiance Expedition), " end if (flags[126] == true) then - flagstr = flagstr .. "Wrath Common Factions (The Frostborn/The Taunka)," + flagstr = flagstr .. "Wrath Common Factions (The Frostborn/The Taunka), " end if (flags[127] == true) then - flagstr = flagstr .. "Wrath Common Factions (Alliance Vanguard/Horde Expedition)," + flagstr = flagstr .. "Wrath Common Factions (Alliance Vanguard/Horde Expedition), " end self:Print("Reps: " .. flagstr) end -- 1.7.9.5