diff --git a/FurnitureCatalogue/FurCControlBridge.lua b/FurnitureCatalogue/FurCControlBridge.lua index 039eff5..8f9a7a0 100644 --- a/FurnitureCatalogue/FurCControlBridge.lua +++ b/FurnitureCatalogue/FurCControlBridge.lua @@ -101,13 +101,16 @@ function FurC.GuiOnSearchBoxClick(control, mouseButton, doubleClick) FurC_SearchBoxText:SetText("") if mouseButton == 2 or doubleClick then control:SetText("") - end + end end local FURC_S_FILTERDEFAULT = GetString(SI_FURC_TEXTBOX_FILTER_DEFAULT) function FurC.GuiOnSearchBoxFocusOut(control) - if control:GetText() and control:GetText() ~= "" then return end + if control:GetText() and control:GetText() ~= "" then + FurC.GuiOnSliderUpdate(FurCGui_ListHolder_Slider, 0) + FurC.UpdateGui() + end FurC_SearchBoxText:SetText(FURC_S_FILTERDEFAULT) end diff --git a/FurnitureCatalogue/FurCData.lua b/FurnitureCatalogue/FurCData.lua index 70fdf28..ed203f2 100644 --- a/FurnitureCatalogue/FurCData.lua +++ b/FurnitureCatalogue/FurCData.lua @@ -16,9 +16,8 @@ local function getCurrentChar() if nil == currentChar then currentChar = zo_strformat(GetUnitName("player")) end return currentChar end -local function p(...) - FurC.DebugOut(...) -end + +local p = FurC.DebugOut local function startupMessage(text) if FurC.GetStartupSilently() then return end @@ -33,7 +32,8 @@ local function getItemId(itemLink) end FurC.GetItemId = getItemId -local function getItemLink(itemId) +local function getItemLink(itemId) + if nil == itemId then return end itemId = tostring(itemId) if #itemId > 55 then return itemId end if #itemId < 4 then return end @@ -141,8 +141,9 @@ end function FurC.Find(itemOrBlueprintLink) -- sets recipeArray, returns it - calls scanItemLink - if nil == itemOrBlueprintLink or #itemOrBlueprintLink == 0 then return end + if tonumber(itemOrBlueprintLink) == itemOrBlueprintLink then itemOrBlueprintLink = FurC.GetItemLink(itemOrBlueprintLink) end + if nil == itemOrBlueprintLink or #itemOrBlueprintLink == 0 then return end p("scanItemLink(<<1>>)...", itemOrBlueprintLink) -- do not return empty arrays. If this returns nil, abort! if itemOrBlueprintLink == lastLink and nil ~= recipeArray then @@ -370,7 +371,7 @@ local function scanFromFiles(shouldScanCharacter) for eventName, eventData in pairs(versionData) do for eventItemSource, eventItemData in pairs(eventData) do for itemId, _ in pairs(eventItemData) do - recipeArray = {} + recipeArray = {} recipeArray.craftable = false recipeArray.version = versionNumber recipeArray.origin = FURC_FESTIVAL_DROP diff --git a/FurnitureCatalogue/FurCFilter.lua b/FurnitureCatalogue/FurCFilter.lua index dfc79ad..f3bed55 100644 --- a/FurnitureCatalogue/FurCFilter.lua +++ b/FurnitureCatalogue/FurCFilter.lua @@ -14,6 +14,7 @@ local hideBooks = false local hideRumours = false local hideCrownStore = false local mergeLuxuryAndSales = false +local filterAllOnTextSearch = false local sourceIndices @@ -44,6 +45,12 @@ function FurC.SetFilter(useDefaults, skipRefresh) mergeLuxuryAndSales = FurC.GetMergeLuxuryAndSales() hideCrownStore = FurC.GetHideCrownStoreItems() + -- ignore filtered items when no dropdown filter is set and there's a text search? + filterAllOnTextSearch = FurC.GetFilterAllOnText() and #searchString > 0 and + FURC_NONE == ddSource and + FURC_NONE == dropdownChoiceVersion and + FURC_NONE == dropdownChoiceCharacter + if not skipRefresh then zo_callLater(FurC.UpdateLineVisibility, 200) end @@ -100,14 +107,13 @@ local function matchSourceDropdown() elseif FURC_OTHER == ddSource then return ( recipeArray.origin == FURC_FESTIVAL_DROP or - recipeArray.origin == FURC_DROP or - recipeArray.origin == FURC_FISHING or - recipeArray.origin == FURC_JUSTICE or + recipeArray.origin == FURC_DROP or + recipeArray.origin == FURC_FISHING or + recipeArray.origin == FURC_JUSTICE or recipeArray.origin == FURC_GUILDSTORE ) else return recipeArray.origin == ddSource end - -- we're checking character knowledge return 1 == dropdownChoiceCharacter or recipeArray.origin == FURC_CRAFTING @@ -117,19 +123,17 @@ local function matchDropdownFilter() return matchVersionDropdown() and matchSourceDropdown() end -local function stringMatch(s1, s2) - return nil ~= string.match(string.lower(s1), string.lower(s2)) -end - local function matchSearchString() - if searchString == "" then return true end - return stringMatch(GetItemLinkName(itemLink), searchString) + if #searchString == 0 then return true end + local caseSensitive = nil ~= string.match(searchString, "%u") + local itemName = GetItemLinkName(itemLink) + local matchme = (caseSensitive and itemName) or string.lower(itemName) + return string.match(matchme, searchString) end local function matchCraftingTypeFilter() if not recipeArray.origin == FURC_CRAFTING then return false end - local filterType = FurC.GetCraftingSkillType(itemId, recipeArray) - + local filterType = FurC.GetCraftingSkillType(itemId, recipeArray) return filterType and filterType > 0 and craftingTypeFilter[filterType] end local function matchQualityFilter() @@ -137,7 +141,7 @@ local function matchQualityFilter() end local function filterBooks(itemId, recipeArray) - if not hideBooks then return false end + if not (hideBooks or filterAllOnTextSearch and FurC.GetFilterAllOnTextNoBooks()) then return false end local versionData = FurC.Books[recipeArray.version] if nil == versionData then return end return nil ~= versionData[itemId] @@ -146,19 +150,30 @@ end function FurC.MatchFilter(currentItemId, currentRecipeArray) itemId = currentItemId - itemLink = FurC.GetItemLink(itemId) + itemLink = FurC.GetItemLink(itemId) recipeArray = currentRecipeArray or FurC.Find(itemLink) itemType, sItemType = GetItemLinkItemType(itemLink) - - if shouldBeHidden() then return false end - if not matchSearchString() then return false end - if not matchDropdownFilter() then return false end + if filterBooks(itemId, recipeArray) then return false end + + if recipeArray.origin == FURC_RUMOUR then + if filterAllOnTextSearch then return not FurC.GetFilterAllOnTextNoRumour() end + return hideRumours and recipeArray.origin == FURC_RUMOUR + end + + if recipeArray.origin == FURC_CROWN then + if filterAllOnTextSearch then return not FurC.GetFilterAllOnTextNoCrown() end + return hideCrownStore and ddSource ~= FURC_CROWN + end + + if not filterAllOnTextSearch then + if not matchDropdownFilter() then return false end + end + + if not matchSearchString() then return false end if not (FurC.settings.filterCraftingTypeAll or matchCraftingTypeFilter()) then return false end if not (FurC.settings.filterQualityAll or matchQualityFilter()) then return false end - if filterBooks(itemId, recipeArray) then return false end - return true end \ No newline at end of file diff --git a/FurnitureCatalogue/FurCMenu.lua b/FurnitureCatalogue/FurCMenu.lua index 34efb71..2e0a530 100644 --- a/FurnitureCatalogue/FurCMenu.lua +++ b/FurnitureCatalogue/FurCMenu.lua @@ -175,11 +175,10 @@ function FurC.CreateSettings(savedVars, defaults) getFunc = function() return FurC.GetResetDropdownChoice() end, setFunc = function(value) FurC.SetResetDropdownChoice(value) end }, - { -- dropdown: default source type = "dropdown", name = GetString(SI_FURC_STRING_MENU_DEFAULT_DD_SOURCE), - choices = FurnitureCatalogue.DropdownData.ChoicesSource, + choices = FurC.GetChoicesSource(), getFunc = function() return FurC.GetDefaultDropdownChoiceText("Source") end, setFunc = function(value) FurC.SetDefaultDropdownChoice("Source", value) end }, @@ -207,7 +206,50 @@ function FurC.CreateSettings(savedVars, defaults) { type = "submenu", name = GetString(SI_FURC_STRING_MENU_FILTERING), controls = { - + { type = "submenu", + name = GetString(SI_FURC_STRING_MENU_HEADER_F_ALL_ON_TEXT), + controls = { + { -- description: Default dropdown + type = "description", + name = GetString(SI_FURC_STRING_MENU_F_ALL_ON_TEXT), + text = GetString(SI_FURC_STRING_MENU_HEADER_F_ALL_DESC), + }, + + { -- checkbox: Filter everything when text searching without dropdown + type = "checkbox", + name = GetString(SI_FURC_STRING_MENU_FILTER_ALL_ON_TEXT), + tooltip = GetString(SI_FURC_STRING_MENU_FILTER_ALL_ON_TEXT_TT), + getFunc = function() return FurC.GetFilterAllOnText() end, + setFunc = function(value) FurC.SetFilterAllOnText(value) end + }, + { -- checkbox: Exclude books from these + type = "checkbox", + name = GetString(SI_FURC_STRING_MENU_FALL_HIDE_BOOKS), + tooltip = GetString(SI_FURC_STRING_MENU_FALL_HIDE_BOOKS_TT), + getFunc = function() return FurC.GetFilterAllOnTextNoBooks() end, + setFunc = function(value) FurC.SetFilterAllOnTextNoBooks(value) end, + disabled = not FurC.GetFilterAllOnText() + }, + { -- checkbox: Exclude crown store items from these + type = "checkbox", + name = GetString(SI_FURC_STRING_MENU_FALL_HIDE_CROWN), + tooltip = GetString(SI_FURC_STRING_MENU_FALL_HIDE_CROWN_TT), + getFunc = function() return FurC.GetFilterAllOnTextNoCrown() end, + setFunc = function(value) FurC.GetFilterAllOnTextNoCrown(value) end, + disabled = not FurC.GetFilterAllOnText() + }, + { -- checkbox: Exclude crown store items from these + type = "checkbox", + name = GetString(SI_FURC_STRING_MENU_FALL_HIDE_RUMOUR), + tooltip = GetString(SI_FURC_STRING_MENU_FALL_HIDE_RUMOUR_TT), + getFunc = function() return FurC.GetFilterAllOnTextNoRumour() end, + setFunc = function(value) FurC.GetFilterAllOnTextNoRumour(value) end, + disabled = not FurC.GetFilterAllOnText() + }, + }, + }, + + -- =============================================================================== -- header: Mages guild books -- =============================================================================== @@ -270,6 +312,7 @@ function FurC.CreateSettings(savedVars, defaults) getFunc = function() return FurC.GetHideCrownStoreItems() end, setFunc = function(value) FurC.SetHideCrownStoreItems(value) end }, + --[[ { -- header: rumour recipes type = "header", name = GetString(SI_FURC_STRING_MENU_HIDE_MENU), @@ -293,6 +336,7 @@ function FurC.CreateSettings(savedVars, defaults) getFunc = function() return FurC.GetHideCrownStoreEntry() end, setFunc = function(value) FurC.SetHideCrownStoreEntry(value) end }, + ]] }, }, diff --git a/FurnitureCatalogue/FurCSettingsAdapter.lua b/FurnitureCatalogue/FurCSettingsAdapter.lua index 9ac9c86..7d52de0 100644 --- a/FurnitureCatalogue/FurCSettingsAdapter.lua +++ b/FurnitureCatalogue/FurCSettingsAdapter.lua @@ -49,6 +49,39 @@ function FurC.SetHideCrownStoreEntry(value) end +function FurC.GetFilterAllOnText() + return FurC.settings["filterAllOnText"] +end +function FurC.SetFilterAllOnText(value) + FurC.settings["filterAllOnText"] = value + FurC.UpdateGui() +end + +function FurC.GetFilterAllOnTextNoRumour() + return FurC.settings["filterAllOnTextNoRumour"] +end +function FurC.GetFilterAllOnTextNoRumour(value) + FurC.settings["filterAllOnTextNoRumour"] = value + FurC.UpdateGui() +end + +function FurC.GetFilterAllOnTextNoBooks() + return FurC.settings["filterAllOnTextNoBooks"] +end +function FurC.GetFilterAllOnTextNoBooks(value) + FurC.settings["filterAllOnTextNoBooks"] = value + FurC.UpdateGui() +end + +function FurC.GetFilterAllOnTextNoCrown() + return FurC.settings["filterAllOnTextNoCrown"] +end +function FurC.GetFilterAllOnTextNoCrown(value) + FurC.settings["filterAllOnTextNoCrown"] = value + FurC.UpdateGui() +end + + function FurC.GetFontSize() if FurC.settings["fontSize"] < 10 then @@ -158,9 +191,7 @@ function FurC.SetFilterQuality(quality) end else filterArray[quality] = not filterArray[quality] - end - - + end FurC.settings.filterQualityAll = not containsTrue(filterArray) for key, control in pairs (controls) do @@ -206,22 +237,18 @@ function FurC.GetSearchFilter() return FurC.SearchFilter or "" end -function FurC.GuiSetSearchboxTextFrom(control) +function FurC.GuiSetSearchboxTextFrom(control) -- call asynchronely to prevent lagging. Praise votan. - task:Call(function() + task:Call(function() local text = control:GetText() - if (text == "") then - control:GetNamedChild("Text"):SetText("Filter by text search") - else - control:GetNamedChild("Text"):SetText("") - end + control:GetNamedChild("Text"):SetText((text == "" and "Filter by text search") or "") + FurC.SearchFilter = text FurC.GuiOnSliderUpdate(FurCGui_ListHolder_Slider, 0) FurC.UpdateGui() end) - end function FurC.GetHideBooks() diff --git a/FurnitureCatalogue/FurnitureCatalogue.txt b/FurnitureCatalogue/FurnitureCatalogue.txt index 8655ab9..d69c8cf 100644 --- a/FurnitureCatalogue/FurnitureCatalogue.txt +++ b/FurnitureCatalogue/FurnitureCatalogue.txt @@ -1,6 +1,6 @@ ## Title: FurnitureCatalogue ## Author: manavortex -## Version: 2.2.4a +## Version: 2.2.5 ## APIVersion: 100022 ## SavedVariables: FurnitureCatalogue_Settings ## OptionalDependsOn: pChat diff --git a/FurnitureCatalogue/data/EventItems.lua b/FurnitureCatalogue/data/EventItems.lua index c054a9f..cfbf388 100644 --- a/FurnitureCatalogue/data/EventItems.lua +++ b/FurnitureCatalogue/data/EventItems.lua @@ -1,18 +1,32 @@ -FurC.EventItems[FURC_REACH] = { - --[[ +FurC.Books = FurC.Books or {} +FurC.Books[FURC_MORROWIND] = { + [126157] = {}, + [126158] = {}, + [126159] = {}, + [126160] = {}, + [126161] = {}, + [126162] = {}, + [126163] = {}, + [126164] = {}, +} + +FurC.EventItems[FURC_MORROWIND] = { ["Midyear Mayhem"] = { - ["Boon Box"] = { - 126157:5:1:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0|h|h"] = true, -- Song of Pelinal, #1 - 126158:5:1:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0|h|h"] = true, -- Song of Pelinal, #2 - 126159:5:1:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0|h|h"] = true, -- Song of Pelinal, #3 - 126160:5:1:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0|h|h"] = true, -- Song of Pelinal, #4 - 126161:5:1:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0|h|h"] = true, -- Song of Pelinal, #5 - 126162:5:1:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0|h|h"] = true, -- Song of Pelinal, #6 - 126163:5:1:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0|h|h"] = true, -- Song of Pelinal, #7 - 126164:5:1:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0|h|h"] = true, -- Song of Pelinal, #8 - } - } - ]] + ["Boon Box"] = { + [126157] = true, -- Song of Pelinal, #1 + [126158] = true, -- Song of Pelinal, #2 + [126159] = true, -- Song of Pelinal, #3 + [126160] = true, -- Song of Pelinal, #4 + [126161] = true, -- Song of Pelinal, #5 + [126162] = true, -- Song of Pelinal, #6 + [126163] = true, -- Song of Pelinal, #7 + [126164] = true, -- Song of Pelinal, #8 + [118053] = true, -- Common Campfire, Outdoor + }, + }, +} +FurC.EventItems[FURC_REACH] = { + ["Witches' Festival"] = { ["Plunder Skull"] = { [130326] = true, -- Witches Brazier, Primitive Log", diff --git a/FurnitureCatalogue/data/Homestead/H_LuxuryFurnisher.lua b/FurnitureCatalogue/data/Homestead/H_LuxuryFurnisher.lua index b5d29fb..7e97f58 100644 --- a/FurnitureCatalogue/data/Homestead/H_LuxuryFurnisher.lua +++ b/FurnitureCatalogue/data/Homestead/H_LuxuryFurnisher.lua @@ -68,24 +68,6 @@ FurC.LuxuryFurnisher[FURC_HOMESTEAD] = { itemDate = "2017-04-14", }, - -- April, 7-9 - [120885] = { -- Alik'r Cactus - itemPrice = 2000, - itemDate = "2017-04-07", - }, - [120884] = { -- Buckthorn - itemPrice = 4000, - itemDate = "2017-04-07", - }, - [120883] = { -- Voidflower - itemPrice = 5000, - itemDate = "2017-04-07", - }, - [120886] = { -- White Hosta - itemPrice = 3000, - itemDate = "2017-04-07", - }, - diff --git a/FurnitureCatalogue/data/LuxuryFurnisher.lua b/FurnitureCatalogue/data/LuxuryFurnisher.lua index 44c0889..82a40f2 100644 --- a/FurnitureCatalogue/data/LuxuryFurnisher.lua +++ b/FurnitureCatalogue/data/LuxuryFurnisher.lua @@ -3,6 +3,28 @@ FurC.LuxuryFurnisher = FurC.LuxuryFurnisher or {} FurC.LuxuryFurnisher[FURC_DRAGONS] = { + -- April, 7-9 + [120885] = { -- Alik'r Cactus + itemPrice = 2000, + itemDate = "2018-03-24", + }, + [120884] = { -- Buckthorn + itemPrice = 4000, + itemDate = "2018-03-24", + }, + [120883] = { -- Voidflower + itemPrice = 5000, + itemDate = "2018-03-24", + }, + [134829] = { -- Fern, Woody Slough + itemPrice = 3000, + itemDate = "2018-03-24", + }, + [120886] = { -- White Hosta + itemPrice = 3000, + itemDate = "2018-03-24", + }, + [134828] = { -- Antler Coral, Branched Spiree itemPrice = 100000, diff --git a/FurnitureCatalogue/data/MiscItemSources.lua b/FurnitureCatalogue/data/MiscItemSources.lua index e64fe58..f76e1f0 100644 --- a/FurnitureCatalogue/data/MiscItemSources.lua +++ b/FurnitureCatalogue/data/MiscItemSources.lua @@ -1,78 +1,55 @@ -- use constants because it's a huge performance gain due to how LUA handles strings... at least unless siri lied :P -local FURC_CANBEPICKED = "can be pickpocketed" -local FURC_CANBEPICKED_WW = FURC_CANBEPICKED .. " from woodworkers" -local FURC_CANBEPICKED_ASS = FURC_CANBEPICKED .. " from outlaws and assassins" -local FURC_CANBEPICKED_GUARD = FURC_CANBEPICKED .. " from guards" +local FURC_CANBEPICKED_WW = GetString(SI_FURC_CANBEPICKED) .. " from woodworkers" +local FURC_CANBEPICKED_ASS = GetString(SI_FURC_CANBEPICKED) .. " from outlaws and assassins" +local FURC_CANBEPICKED_GUARD = GetString(SI_FURC_CANBEPICKED) .. " from guards" -local FURC_CANBESTOLEN = "can be stolen" -local FURC_CANBESTOLENINCC = FURC_CANBESTOLEN .. " in Clockwork City" -local FURC_CANBESTOLEN_SCHOLARS = FURC_CANBESTOLEN .. " from scholars" -local FURC_CANBESTOLEN_NERDS = FURC_CANBESTOLEN_SCHOLARS .. " and mages" -local FURC_CANBESTOLEN_RELIG = FURC_CANBESTOLEN .. " from priests and pilgrims" -local FURC_CANBESTOLEN_THIEF = FURC_CANBESTOLEN .. " from thieves" + +local FURC_CANBESTOLENINCC = GetString(SI_FURC_CANBESTOLEN) .. " in Clockwork City" +local FURC_CANBESTOLEN_SCHOLARS = GetString(SI_FURC_CANBESTOLEN) .. " from scholars" +local FURC_CANBESTOLEN_NERDS = FURC_CANBESTOLEN_SCHOLARS .. " and mages" +local FURC_CANBESTOLEN_RELIG = GetString(SI_FURC_CANBESTOLEN) .. " from priests and pilgrims" +local FURC_CANBESTOLEN_THIEF = GetString(SI_FURC_CANBESTOLEN) .. " from thieves" +local FURC_CANBESTOLEN_WW = GetString(SI_FURC_CANBESTOLEN) .. " from woodworkers" -local FURC_AUTOMATON = "from automatons" -local FURC_AUTOMATON_CC = FURC_AUTOMATON .. " in Clockwork City" -local FURC_AUTOMATON_VV = FURC_AUTOMATON .. " on Vvardenfell" -local FURC_TOMBS = "Ancestor tombs and ruins on Vvardenfell" +local FURC_AUTOMATON_CC = GetString(SI_FURC_AUTOMATON) .. " in Clockwork City" +local FURC_AUTOMATON_VV = GetString(SI_FURC_AUTOMATON) .. " on Vvardenfell" -local FURC_PLANTS = "from harvesting plants" - -local FURC_HARVEST = "from harvesting nodes" -local FURC_HARVEST_CHARBOR = FURC_HARVEST .. " in Coldharbour" - -local FURC_CANBEFISHED = "can be fished" +local FURC_HARVEST_CHARBOR = GetString(SI_FURC_HARVEST) .. " in Coldharbour" -local FURC_CROWNSTORE_CRATE_F_ATRO = "Crown Crates (Flame Atronach)" +local FURC_SCAMBOX_F_ATRO = zo_strformat("<<1>> (<<2>>)", + GetString(SI_FURC_SCAMBOX), GetString(SI_FURC_FLAME_ATRONACH)) -local FURC_CROWNSTORESOURCE = "Crown Store " -local FURC_CROWNSTORE_TEN = FURC_CROWNSTORESOURCE .. "(10)" -local FURC_CROWNSTORE_FIFTEEN = FURC_CROWNSTORESOURCE .. "(15)" -local FURC_CROWNSTORE_TWENTY = FURC_CROWNSTORESOURCE .. "(20)" -local FURC_CROWNSTORE_FOURTYFIVE = FURC_CROWNSTORESOURCE .. "(45)" -local FURC_CROWNSTORE_EIGHTY = FURC_CROWNSTORESOURCE .. "(80)" -local FURC_CROWNSTORE_NINETYFIVE = FURC_CROWNSTORESOURCE .. "(95)" -local FURC_CROWNSTORE_ONEHUNDRED = FURC_CROWNSTORESOURCE .. "(100)" -local FURC_CROWNSTORE_ONETWENTY = FURC_CROWNSTORESOURCE .. "(120)" -local FURC_CROWNSTORE_FOURHUNDRED = FURC_CROWNSTORESOURCE .. "(400)" -local FURC_CROWNSTORE_SEVENFIFTY = FURC_CROWNSTORESOURCE .. "(750)" -local FURC_CROWNSTORE_ONEK = FURC_CROWNSTORESOURCE .. "(1000)" -local FURC_CROWNSTORE_ONEONEHUNDRED = FURC_CROWNSTORESOURCE .. "(1100)" -local FURC_DAEDRA_SOURCE = "from Daedra and Dolmen chests" -local FURC_DB = "The Dark Brotherhood supplies vendor hands these out " -local FURC_DB_POISON = FURC_DB .. "with poison" -local FURC_DB_SNEAKY = FURC_DB .. "as a way to be sneaky" - -local FURC_DAILY_ASHLANDERS = "Ashlander daily quest rewards" - -local FURC_PLUNDERSKULL = "Drops from Plunder Skulls during Witches' Festival" -local FURC_DROP_CHEST_VVARDENFELL = "From chests on Vvardenfell" +local FURC_DB_POISON = zo_strformat("<<1>> <<2>>", GetString(SI_FURC_DB), GetString(SI_FURC_DB_POISON)) +local FURC_DB_SNEAKY = zo_strformat("<<1>> <<2>>", GetString(SI_FURC_DB), GetString(SI_FURC_DB_STEALTH)) + +local function getCrownStorePriceString(price) + return string.format("%s (%u)", GetString(SI_FURC_CROWNSTORESOURCE), price) +end + +local function getScamboxString(scamboxVersion) + return string.format("%s (%s)", GetString(SI_FURC_SCAMBOX), GetString(scamboxVersion)) +end FurC.MiscItemSources = { [FURC_DRAGONS] = { -- Reach - [FURC_DROP] = { - - - }, - [FURC_JUSTICE] = { - }, - [FURC_CROWN] = { - - [130212] = FURC_CROWNSTORE_ONEK, -- Daedric Worship: The Ayleids - [134970] = FURC_CROWNSTORE_ONEHUNDRED, -- Mushrooms, Glowing Sprawl - [134947] = FURC_CROWNSTORE_ONEHUNDRED, -- Mushrooms, Glowing Field - [134948] = FURC_CROWNSTORE_FOURHUNDRED, -- Mushrooms, Glowing Cluster - [134971] = FURC_CROWNSTORE_FOURHUNDRED, -- Candles, Votive Group - [134872] = FURC_CROWNSTORE_FOURHUNDRED, -- Ancient Nord Brazier, Dragon Crest - [134863] = FURC_CROWNSTORE_FOURHUNDRED, -- Ancient Nord Sconce, Dragon Crest - [134972] = FURC_CROWNSTORE_FOURHUNDRED, -- Brotherhood Brazier, Wrought Iron - [134849] = FURC_CROWNSTORE_FOURHUNDRED, -- Monarch Butterfly Flock - [134848] = FURC_CROWNSTORE_FOURHUNDRED, -- Blue Butterfly Flock - + [FURC_DROP] = {}, + [FURC_JUSTICE] = {}, + [FURC_CROWN] = { + [130212] = getCrownStorePriceString(1000), -- Daedric Worship: The Ayleids + [134970] = getCrownStorePriceString(100), -- Mushrooms, Glowing Sprawl + [134947] = getCrownStorePriceString(100), -- Mushrooms, Glowing Field + [134948] = getCrownStorePriceString(400), -- Mushrooms, Glowing Cluster + [134971] = getCrownStorePriceString(400), -- Candles, Votive Group + [134872] = getCrownStorePriceString(400), -- Ancient Nord Brazier, Dragon Crest + [134863] = getCrownStorePriceString(400), -- Ancient Nord Sconce, Dragon Crest + [134972] = getCrownStorePriceString(400), -- Brotherhood Brazier, Wrought Iron + [134849] = getCrownStorePriceString(400), -- Monarch Butterfly Flock + [134848] = getCrownStorePriceString(400), -- Blue Butterfly Flock + [94100] = getCrownStorePriceString(50), -- Imperial Shelf, Swirled } }, [FURC_CLOCKWORK] = { -- Reach @@ -82,37 +59,37 @@ FurC.MiscItemSources = { [134408] = FURC_AUTOMATON_CC, -- Factotum Elbow, Obsolete [134405] = FURC_AUTOMATON_CC, -- Factotum Arm, Obsolete [134409] = FURC_AUTOMATON_CC, -- Factotum Head, Obsolete - [134406] = FURC_AUTOMATON_CC, -- Factotum Body, Obsolete - + [134406] = FURC_AUTOMATON_CC, -- Factotum Body, Obsolete }, [FURC_JUSTICE] = { - [134411] = FURC_CANBESTOLENINCC, -- Ventilation shaft - [134415] = FURC_CANBESTOLENINCC, -- Clockwork Dial Calipers, Handheld - [134413] = FURC_CANBESTOLENINCC, -- Clockwork Magnifier, Handheld - [134412] = FURC_CANBESTOLENINCC, -- Clockwork Piston, Miniature - [134410] = FURC_CANBESTOLENINCC, -- Clockwork Crank, Miniature - [134411] = FURC_CANBESTOLENINCC, -- Clockwork Gear Shaft, Miniature - [134400] = FURC_CANBEPICKED, -- Soft Leather, Stacked - [134401] = FURC_CANBEPICKED, -- Soft Leather, Folded - [134417] = FURC_CANBEPICKED, -- Calipers, Handheld - [134399] = FURC_CANBEPICKED, -- Quality Fabric, Folded - [117939] = FURC_CANBEPICKED_WW, -- Rough Axe, Practical + [134411] = FURC_CANBESTOLENINCC, -- Ventilation shaft + [134415] = FURC_CANBESTOLENINCC, -- Clockwork Dial Calipers, Handheld + [134413] = FURC_CANBESTOLENINCC, -- Clockwork Magnifier, Handheld + [134412] = FURC_CANBESTOLENINCC, -- Clockwork Piston, Miniature + [134410] = FURC_CANBESTOLENINCC, -- Clockwork Crank, Miniature + [134411] = FURC_CANBESTOLENINCC, -- Clockwork Gear Shaft, Miniature + [134402] = GetString(SI_FURC_CANBESTOLEN), -- Spool, Empty + [134400] = GetString(SI_FURC_CANBESTOLEN), -- Soft Leather, Stacked + [134401] = GetString(SI_FURC_CANBESTOLEN), -- Soft Leather, Folded + [134417] = GetString(SI_FURC_CANBESTOLEN), -- Calipers, Handheld + [134399] = GetString(SI_FURC_CANBESTOLEN), -- Quality Fabric, Folded + [117939] = FURC_CANBESTOLEN_WW, -- Rough Axe, Practical }, [FURC_CROWN] = { - [134266] = FURC_CROWNSTORE_EIGHTY, -- Daedric Books, Stacked - [134265] = FURC_CROWNSTORE_EIGHTY, -- Daedric Books, Piled + [134266] = getCrownStorePriceString(80), -- Daedric Books, Stacked + [134265] = getCrownStorePriceString(80), -- Daedric Books, Piled } }, [FURC_REACH] = { -- Reach [FURC_JUSTICE] = { - [130191] = FURC_CANBESTOLEN, -- Shivering Cheese - [118206] = FURC_CANBESTOLEN_THIEF, -- Gaming dice + [130191] = GetString(SI_FURC_CANBESTOLEN), -- Shivering Cheese + [118206] = FURC_CANBESTOLEN_THIEF, -- Gaming dice }, [FURC_CROWN] = { - [131423] = FURC_CROWNSTORE_SEVENFIFTY, + [131423] = getCrownStorePriceString(750), }, [FURC_DROP] = { -- Coldharbour items @@ -124,7 +101,7 @@ FurC.MiscItemSources = { [130281] = FURC_HARVEST_CHARBOR, -- Glowstalk, Towering [130282] = FURC_HARVEST_CHARBOR, -- Glowstalk, Strong - [130067] = FURC_DAEDRA_SOURCE, -- Daedric Chain Segment + [130067] = GetString(SI_FURC_DAEDRA_SOURCE), -- Daedric Chain Segment }, }, @@ -136,38 +113,38 @@ FurC.MiscItemSources = { [126659] = FURC_AUTOMATON_VV, -- Dwemer Gear, Flat -- lootable in tombs - [126754] = FURC_TOMBS, -- Velothi Shroud, Seeker - [126705] = FURC_TOMBS, -- Velothi Shroud, Wisdom - [126704] = FURC_TOMBS, -- Velothi Shroud, Majesty - [126706] = FURC_TOMBS, -- Velothi Shroud, Knowledge - [126701] = FURC_TOMBS, -- Velothi Shroud, Nerevar - [126764] = FURC_TOMBS, -- Velothi Shroud, Prowess - [126702] = FURC_TOMBS, -- Velothi Shroud, Reverance - [126700] = FURC_TOMBS, -- Velothi Shroud, Honor - [126703] = FURC_TOMBS, -- Velothi Shroud, Mourning - [126572] = FURC_TOMBS, -- Velothi Shroud, Mysteries - - [126773] = FURC_TOMBS, -- Velothi Caisson, Crypt - [126753] = FURC_TOMBS, -- Velothi Cerecloth, Austere - [126758] = FURC_TOMBS, -- Velothi Mat, Prayer - [126757] = FURC_TOMBS, - - - [126467] = FURC_DROP_CHEST_VVARDENFELL, -- Telvanni Painting, Modest Valley - [126464] = FURC_DROP_CHEST_VVARDENFELL, -- Telvanni Painting, Oversized Valley + [126754] = GetString(SI_FURC_TOMBS), -- Velothi Shroud, Seeker + [126705] = GetString(SI_FURC_TOMBS), -- Velothi Shroud, Wisdom + [126704] = GetString(SI_FURC_TOMBS), -- Velothi Shroud, Majesty + [126706] = GetString(SI_FURC_TOMBS), -- Velothi Shroud, Knowledge + [126701] = GetString(SI_FURC_TOMBS), -- Velothi Shroud, Nerevar + [126764] = GetString(SI_FURC_TOMBS), -- Velothi Shroud, Prowess + [126702] = GetString(SI_FURC_TOMBS), -- Velothi Shroud, Reverance + [126700] = GetString(SI_FURC_TOMBS), -- Velothi Shroud, Honor + [126703] = GetString(SI_FURC_TOMBS), -- Velothi Shroud, Mourning + [126572] = GetString(SI_FURC_TOMBS), -- Velothi Shroud, Mysteries + + [126773] = GetString(SI_FURC_TOMBS), -- Velothi Caisson, Crypt + [126753] = GetString(SI_FURC_TOMBS), -- Velothi Cerecloth, Austere + [126758] = GetString(SI_FURC_TOMBS), -- Velothi Mat, Prayer + [126757] = GetString(SI_FURC_TOMBS), + + + [126467] = GetString(SI_FURC_DROP_CHEST_VVARDENFELL), -- Telvanni Painting, Modest Valley + [126464] = GetString(SI_FURC_DROP_CHEST_VVARDENFELL), -- Telvanni Painting, Oversized Valley -- Ashlander dailies - [126119] = FURC_DAILY_ASHLANDERS, -- Crimson Shard of Moonshadow - [126393] = FURC_DAILY_ASHLANDERS, -- Crimson Shard of Moonshadow + [126119] = GetString(SI_FURC_DAILY_ASHLANDERS), -- Crimson Shard of Moonshadow + [126393] = GetString(SI_FURC_DAILY_ASHLANDERS), -- Crimson Shard of Moonshadow -- drops from plants - [125631] = FURC_PLANTS, -- Plants, Ash Frond - [125647] = FURC_PLANTS, -- Plants, Ash Frond - [131420] = FURC_PLANTS, -- Plants, Ash Frond - [125553] = FURC_PLANTS, -- Flowers, Netch Cabbage Stalks - [125551] = FURC_PLANTS, -- Flowers, Netch Cabbage - [125543] = FURC_PLANTS, -- Fern, Ashen - [125633] = FURC_PLANTS, -- Plants, Hanging Pitcher Pair + [125631] = GetString(SI_FURC_PLANTS), -- Plants, Ash Frond + [125647] = GetString(SI_FURC_PLANTS), -- Plants, Ash Frond + [131420] = GetString(SI_FURC_PLANTS), -- Plants, Ash Frond + [125553] = GetString(SI_FURC_PLANTS), -- Flowers, Netch Cabbage Stalks + [125551] = GetString(SI_FURC_PLANTS), -- Flowers, Netch Cabbage + [125543] = GetString(SI_FURC_PLANTS), -- Fern, Ashen + [125633] = GetString(SI_FURC_PLANTS), -- Plants, Hanging Pitcher Pair }, [FURC_CROWN] = { @@ -179,12 +156,12 @@ FurC.MiscItemSources = { [FURC_HOMESTEAD] = { [FURC_JUSTICE] = { -- stealing - [118489] = FURC_CANBESTOLEN_SCHOLARS, -- Papers, Stack - [118528] = FURC_CANBESTOLEN, -- Signed Contract - [118890] = FURC_CANBESTOLEN, -- Skull, Human - [118487] = FURC_CANBESTOLEN_SCHOLARS, -- Letter, Personal - [120008] = FURC_CANBESTOLEN_NERDS, -- Lesser Soul Gem, Empty - [120005] = FURC_CANBESTOLEN_NERDS, -- Medium Soul Gem, Empty + [118489] = FURC_CANBESTOLEN_SCHOLARS, -- Papers, Stack + [118528] = GetString(SI_FURC_CANBESTOLEN), -- Signed Contract + [118890] = GetString(SI_FURC_CANBESTOLEN), -- Skull, Human + [118487] = FURC_CANBESTOLEN_SCHOLARS, -- Letter, Personal + [120008] = FURC_CANBESTOLEN_NERDS, -- Lesser Soul Gem, Empty + [120005] = FURC_CANBESTOLEN_NERDS, -- Medium Soul Gem, Empty -- Bounty Sheets [118711] = FURC_CANBEPICKED_GUARD, -- Argonian Male @@ -200,18 +177,18 @@ FurC.MiscItemSources = { }, [FURC_FISHING] = { -- fishing - [118902] = FURC_CANBEFISHED, -- Coral, Sun - [118903] = FURC_CANBEFISHED, -- Coral, Crown - [118896] = FURC_CANBEFISHED, -- Seashell, Sandcake - [118901] = FURC_CANBEFISHED, -- Sea sponge - [118338] = FURC_CANBEFISHED, -- Fish, Bass - [118339] = FURC_CANBEFISHED, -- Fish, Salmon - [118337] = FURC_CANBEFISHED, -- Fish, Trout - [120753] = FURC_CANBEFISHED, -- Kelp, Green Pile - [120755] = FURC_CANBEFISHED, -- Kelp, Lush Pile - [120754] = FURC_CANBEFISHED, -- Kelp, Small Pile - [118897] = FURC_CANBEFISHED, -- Seashell, Pink Scallop - [118898] = FURC_CANBEFISHED, -- Seashell, White Scallop + [118902] = GetString(SI_FURC_CANBEFISHED), -- Coral, Sun + [118903] = GetString(SI_FURC_CANBEFISHED), -- Coral, Crown + [118896] = GetString(SI_FURC_CANBEFISHED), -- Seashell, Sandcake + [118901] = GetString(SI_FURC_CANBEFISHED), -- Sea sponge + [118338] = GetString(SI_FURC_CANBEFISHED), -- Fish, Bass + [118339] = GetString(SI_FURC_CANBEFISHED), -- Fish, Salmon + [118337] = GetString(SI_FURC_CANBEFISHED), -- Fish, Trout + [120753] = GetString(SI_FURC_CANBEFISHED), -- Kelp, Green Pile + [120755] = GetString(SI_FURC_CANBEFISHED), -- Kelp, Lush Pile + [120754] = GetString(SI_FURC_CANBEFISHED), -- Kelp, Small Pile + [118897] = GetString(SI_FURC_CANBEFISHED), -- Seashell, Pink Scallop + [118898] = GetString(SI_FURC_CANBEFISHED), -- Seashell, White Scallop }, [FURC_DROP] = { [121058] = FURC_DB_SNEAKY, -- Candles of Silence @@ -221,38 +198,37 @@ FurC.MiscItemSources = { [119952] = FURC_DB_POISON, -- Sacrificial Heart }, [FURC_CROWN] = { - [118096] = FURC_CROWNSTORE_TEN, -- Bread, Plain - [118098] = FURC_CROWNSTORE_TEN, -- Common Bowl, Serving - [118061] = FURC_CROWNSTORE_FIFTEEN, -- Chicken Dinner, Display - [118062] = FURC_CROWNSTORE_FIFTEEN, -- Chicken Meal, Display - [118056] = FURC_CROWNSTORE_FIFTEEN, -- Common Stewpot, Hanging - [118121] = FURC_CROWNSTORE_FIFTEEN, -- Knife, Carving - [118066] = FURC_CROWNSTORE_FIFTEEN, -- Steak Dinner + [118096] = getCrownStorePriceString(10), -- Bread, Plain + [118098] = getCrownStorePriceString(10), -- Common Bowl, Serving + [118061] = getCrownStorePriceString(15), -- Chicken Dinner, Display + [118062] = getCrownStorePriceString(15), -- Chicken Meal, Display + [118056] = getCrownStorePriceString(15), -- Common Stewpot, Hanging + [118121] = getCrownStorePriceString(15), -- Knife, Carving + [118066] = getCrownStorePriceString(15), -- Steak Dinner - [118057] = FURC_CROWNSTORE_TWENTY, -- Sack of Beans - [118060] = FURC_CROWNSTORE_TWENTY, -- Sack of Grain - [118059] = FURC_CROWNSTORE_TWENTY, -- Sack of Millet, - [118058] = FURC_CROWNSTORE_TWENTY, -- Sack of Rice + [118057] = getCrownStorePriceString(20), -- Sack of Beans + [118060] = getCrownStorePriceString(20), -- Sack of Grain + [118059] = getCrownStorePriceString(20), -- Sack of Millet, + [118058] = getCrownStorePriceString(20), -- Sack of Rice - [134473] = FURC_CROWNSTORE_CRATE_F_ATRO, -- Malacath Banner + [134473] = getScamboxString(SI_FURC_FLAME_ATRONACH), -- Malacath Banner - [118064] = FURC_CROWNSTORE_FOURTYFIVE, -- Common Barrel, Dry - [118065] = FURC_CROWNSTORE_FOURTYFIVE, -- Common Cargo Crate, Dry - [118064] = FURC_CROWNSTORE_FOURTYFIVE, -- Common Barrel, Dry + [118064] = getCrownStorePriceString(45), -- Common Barrel, Dry + [118065] = getCrownStorePriceString(45), -- Common Cargo Crate, Dry + [118064] = getCrownStorePriceString(45), -- Common Barrel, Dry - [118053] = FURC_CROWNSTORE_EIGHTY, -- Common Campfire, Outdoor - [118054] = FURC_CROWNSTORE_EIGHTY, -- Common Firepit, Outdoor - [118055] = FURC_CROWNSTORE_EIGHTY, -- Common Firepit, Piled - [118126] = FURC_CROWNSTORE_NINETYFIVE, -- Plaque, Standard + [118054] = getCrownStorePriceString(80), -- Common Firepit, Outdoor + [118055] = getCrownStorePriceString(80), -- Common Firepit, Piled + [118126] = getCrownStorePriceString(95), -- Plaque, Standard - [118068] = FURC_CROWNSTORE_ONETWENTY, -- Simple Brown Banner - [118069] = FURC_CROWNSTORE_ONETWENTY, -- Simple Gray Banner - [118071] = FURC_CROWNSTORE_ONETWENTY, -- Simple Red Banner - [118070] = FURC_CROWNSTORE_ONETWENTY, -- Simple Purple Banner + [118068] = getCrownStorePriceString(120), -- Simple Brown Banner + [118069] = getCrownStorePriceString(120), -- Simple Gray Banner + [118071] = getCrownStorePriceString(120), -- Simple Red Banner + [118070] = getCrownStorePriceString(120), -- Simple Purple Banner - [115698] = FURC_CROWNSTORE_ONEONEHUNDRED, -- Khajiit Statue, Guardian + [115698] = getCrownStorePriceString(1100), -- Khajiit Statue, Guardian } }, } diff --git a/FurnitureCatalogue/data/RumourRecipes.lua b/FurnitureCatalogue/data/RumourRecipes.lua index 0029475..32cb800 100644 --- a/FurnitureCatalogue/data/RumourRecipes.lua +++ b/FurnitureCatalogue/data/RumourRecipes.lua @@ -24,7 +24,6 @@ FurC.RumourRecipes = { 116474, -- Orcish Effigy, Bear 116433, -- Orcish Table with Fur_S - 118053, -- Common Campfire, Outdoor 118065, -- Common Cargo Crate, Dry 118054, -- Common Firepit, Outdoor 118055, -- Common Firepit, Piled @@ -52,7 +51,6 @@ FurC.RumourRecipes = { 121161, -- Ram Horns, Mounted 121216, -- Redguard Divider, Gilded - 127032, -- Dres Carpet, Fertile Peat 118118, -- Candles, Lasting 115395, -- Nord Drinking Horn, Display diff --git a/FurnitureCatalogue/locale/de.lua b/FurnitureCatalogue/locale/de.lua index 5997bda..ad33923 100644 --- a/FurnitureCatalogue/locale/de.lua +++ b/FurnitureCatalogue/locale/de.lua @@ -96,6 +96,7 @@ local strings = { SI_FURC_STRING_MENU_LUXURY_WARN = "Hiding the dropdown entry requires UI reload (won't happen automatically for your convenience)", SI_FURC_STRING_MENU_RUMOUR = "Rumour recipes", SI_FURC_STRING_MENU_RUMOUR_DESC = "The furniture database contains a list of recipes that I have datamined.\nHowever, not all of those have been seen in-game.\nEnable this option to exclude them from the default filters.\nYou can still view them with their own filter, which you can disable below.", + SI_FURC_STRING_MENU_FILTER_ALL_ON_TEXT = "Search filtered items when doing a text search with no dropdown filters set?", SI_FURC_STRING_MENU_RUMOUR_N = "Hide rumour recipes?", SI_FURC_STRING_MENU_CROWN = "Crown store items", diff --git a/FurnitureCatalogue/locale/en.lua b/FurnitureCatalogue/locale/en.lua index 1f9d70c..2172dd2 100644 --- a/FurnitureCatalogue/locale/en.lua +++ b/FurnitureCatalogue/locale/en.lua @@ -123,7 +123,22 @@ local strings = { SI_FURC_STRING_MENU_CROWN = "Crown store items", SI_FURC_STRING_MENU_CROWN_N = "Hide crown store items?", SI_FURC_STRING_MENU_CROWN_DESC = "The furniture database will update whenever the tooltip shows a furniture item. \nSome items can only be acquired via crown store. \nCheck this box to exclude them from the default filters (disable crown store filter below).", - + + -- Filter text search + SI_FURC_STRING_MENU_HEADER_F_ALL_ON_TEXT = "Filter settings for text search", + SI_FURC_STRING_MENU_F_ALL_ON_TEXT = "Configure this filter", + SI_FURC_STRING_MENU_HEADER_F_ALL_DESC = "Configure filter settings for text search with disabled dropdowns. \nThese settings will only take effect when you have not set a source, character or version filter.", + + SI_FURC_STRING_MENU_FILTER_ALL_ON_TEXT = "Search filtered items when doing a text search with no dropdown filters set?", + SI_FURC_STRING_MENU_FILTER_ALL_ON_TEXT_TT = "When doing a text search without any dropdown ", + SI_FURC_STRING_MENU_FALL_HIDE_BOOKS = "Hide books anyway", + SI_FURC_STRING_MENU_FALL_HIDE_BOOKS_TT = "Even when filtering all items, still hide books?", + SI_FURC_STRING_MENU_FALL_HIDE_CROWN = "Hide crown store items anyway", + SI_FURC_STRING_MENU_FALL_HIDE_CROWN_TT = "Even when filtering all items, still hide crown store items?", + SI_FURC_STRING_MENU_FALL_HIDE_RUMOUR = "Hide rumour items anyway", + SI_FURC_STRING_MENU_FALL_HIDE_RUMOUR_TT = "Even when filtering all items, still hide rumour items?", + + -- Hide menu entries SI_FURC_STRING_MENU_HIDE_MENU = "Hide menu entries?", SI_FURC_STRING_MENU_HIDE_MENU_TT = "Hides \"Crown store\" and \"Rumour recipes\" from the dropdown \nactivated for crown store by default, as there aren't any items yet", SI_FURC_STRING_MENU_HIDE_MENU_RUMOUR = "Hide \"Rumour recipes\" drop down entry?", @@ -196,6 +211,27 @@ local strings = { -- =============================== -- SI_FURC_LABEL_ENTRIES = " entries -", + + -- =============================== -- + -- ========= Item Sources ======== -- + -- =============================== -- + SI_FURC_CANBEPICKED = "can be pickpocketed", + SI_FURC_CANBESTOLEN = "can be stolen", + SI_FURC_CROWNSTORESOURCE = "Crown Store ", + SI_FURC_CANBEFISHED = "can be fished", + SI_FURC_HARVEST = "from harvesting nodes", + SI_FURC_PLANTS = "from harvesting plants", + SI_FURC_SCAMBOX = "Crown Crates", + SI_FURC_AUTOMATON = "from automatons", + SI_FURC_TOMBS = "Ancestor tombs and ruins on Vvardenfell", + SI_FURC_DAEDRA_SOURCE = "from Daedra and Dolmen chests", + SI_FURC_DB = "The Dark Brotherhood supplies vendor hands these out ", + SI_FURC_DB_POISON = "with poison", + SI_FURC_DB_STEALTH = "as a way to be less obtrusive", + SI_FURC_DAILY_ASHLANDERS = "Ashlander daily quest rewards", + SI_FURC_PLUNDERSKULL = "Drops from Plunder Skulls during Witches' Festival", + SI_FURC_DROP_CHEST_VVARDENFELL = "From chests on Vvardenfell", + SI_FURC_FLAME_ATRONACH = "Flame Atronach", } diff --git a/FurnitureCatalogue/locale/fr.lua b/FurnitureCatalogue/locale/fr.lua index 2a98ebb..f7de8da 100644 --- a/FurnitureCatalogue/locale/fr.lua +++ b/FurnitureCatalogue/locale/fr.lua @@ -102,6 +102,7 @@ local strings = { SI_FURC_STRING_MENU_CROWN = "Crown store items", SI_FURC_STRING_MENU_CROWN_N = "Hide crown store items?", SI_FURC_STRING_MENU_CROWN_DESC = "The furniture database will update whenever the tooltip shows a furniture item. \nSome items can only be acquired via crown store. \nCheck this box to exclude them from the default filters (disable crown store filter below).", + SI_FURC_STRING_MENU_FILTER_ALL_ON_TEXT = "Search filtered items when doing a text search with no dropdown filters set?", SI_FURC_STRING_MENU_HIDE_MENU = "Hide menu entries?", SI_FURC_STRING_MENU_HIDE_MENU_TT = "Hides \"Crown store\" and \"Rumour recipes\" from the dropdown \nactivated for crown store by default, as there aren't any items yet", diff --git a/FurnitureCatalogue/locale/jp.lua b/FurnitureCatalogue/locale/jp.lua index b6d46ea..b231d86 100644 --- a/FurnitureCatalogue/locale/jp.lua +++ b/FurnitureCatalogue/locale/jp.lua @@ -102,6 +102,7 @@ local strings = { SI_FURC_STRING_MENU_CROWN = "Crown store items", SI_FURC_STRING_MENU_CROWN_N = "Hide crown store items?", SI_FURC_STRING_MENU_CROWN_DESC = "The furniture database will update whenever the tooltip shows a furniture item. \nSome items can only be acquired via crown store. \nCheck this box to exclude them from the default filters (disable crown store filter below).", + SI_FURC_STRING_MENU_FILTER_ALL_ON_TEXT = "Search filtered items when doing a text search with no dropdown filters set?", SI_FURC_STRING_MENU_HIDE_MENU = "Hide menu entries?", SI_FURC_STRING_MENU_HIDE_MENU_TT = "Hides \"Crown store\" and \"Rumour recipes\" from the dropdown \nactivated for crown store by default, as there aren't any items yet", diff --git a/FurnitureCatalogue/locale/ru.lua b/FurnitureCatalogue/locale/ru.lua index b6d46ea..920c51c 100644 --- a/FurnitureCatalogue/locale/ru.lua +++ b/FurnitureCatalogue/locale/ru.lua @@ -97,6 +97,7 @@ local strings = { SI_FURC_STRING_MENU_LUXURY_WARN = "Hiding the dropdown entry requires UI reload (won't happen automatically for your convenience)", SI_FURC_STRING_MENU_RUMOUR = "Rumour recipes", SI_FURC_STRING_MENU_RUMOUR_DESC = "The furniture database contains a list of recipes that I have datamined.\nHowever, not all of those have been seen in-game.\nEnable this option to exclude them from the default filters.\nYou can still view them with their own filter, which you can disable below.", + SI_FURC_STRING_MENU_FILTER_ALL_ON_TEXT = "Search filtered items when doing a text search with no dropdown filters set?", SI_FURC_STRING_MENU_RUMOUR_N = "Hide rumour recipes?", SI_FURC_STRING_MENU_CROWN = "Crown store items", diff --git a/FurnitureCatalogue/startup.lua b/FurnitureCatalogue/startup.lua index 482cb01..b7b6461 100644 --- a/FurnitureCatalogue/startup.lua +++ b/FurnitureCatalogue/startup.lua @@ -73,7 +73,7 @@ local defaults = { hideDoubtfuls = true, hideCrownstore = true, hideRumourEntry = false, - hideCrownStoreEntry = true, + hideCrownStoreEntry = false, wipeDatabase = false, startupSilently = true, @@ -103,10 +103,22 @@ FURC_GUILDSTORE = FURC_FISHING +1 FURC_FESTIVAL_DROP = FURC_GUILDSTORE +1 local function updateSourceIndices() - FURC_CROWN = FURC_PVP + tonumber((FurC.GetHideCrownStoreEntry() and 0) or 1) - FURC_RUMOUR = FURC_CROWN + tonumber((FurC.GetHideRumourRecipesEntry() and 0) or 1) - FURC_LUXURY = FURC_RUMOUR + tonumber((FurC.GetMergeLuxuryAndSales() and 0) or 1) - FURC_OTHER = FURC_LUXURY +1 + + local previousIndex = FURC_PVP + if not FurC.GetHideCrownStoreEntry() then + FURC_CROWN = previousIndex + 1 + previousIndex = FURC_CROWN + end + if not FurC.GetHideRumourRecipesEntry() then + FURC_RUMOUR = previousIndex + 1 + previousIndex = FURC_RUMOUR + end + if not FurC.GetMergeLuxuryAndSales() then + FURC_LUXURY = previousIndex + 1 + previousIndex = FURC_LUXURY + end + + FURC_OTHER = previousIndex +1 FURC_ROLLIS = FURC_OTHER +1 FURC_WRIT_VENDOR = FURC_ROLLIS +1 FURC_DROP = FURC_WRIT_VENDOR +1 @@ -165,6 +177,7 @@ local function getChoicesSource() end return choicesSource end +FurC.GetChoicesSource = getChoicesSource local tooltipsSource = {} local function getTooltipsSource() @@ -229,7 +242,7 @@ local function setupSourceDropdown() updateDropdownData() sourceIndices = {} - for idx, key in pairs(getSourceIndicesKeys()) do + for idx, key in ipairs(getSourceIndicesKeys()) do sourceIndices[key] = idx end FurC.SourceIndices = sourceIndices @@ -306,6 +319,8 @@ function FurnitureCatalogue_Initialize(eventCode, addOnName) FurC.RegisterEvents() FurnitureCatalogue.InitGui() + FurC.SetHideRumourRecipesEntry(false) + FurC.SetHideCrownStoreEntry(false) FurnitureCatalogue.CreateTooltips() FurC.InitRightclickMenu()