From 3ec59e5dd4dad73d020e67446353ef0200375a93 Mon Sep 17 00:00:00 2001 From: ackis Date: Thu, 9 Apr 2009 04:17:07 +0000 Subject: [PATCH] Can't believe this wasn't in before... when sorting by skill/location/aquisition, sort by name as a secondary sorting method --- AckisRecipeList.lua | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/AckisRecipeList.lua b/AckisRecipeList.lua index a5ab1b7..0e94cd1 100644 --- a/AckisRecipeList.lua +++ b/AckisRecipeList.lua @@ -2077,12 +2077,20 @@ do sortFuncs = {} - sortFuncs["SkillAsc"] = function(a, b) - return RecipeDB[a]["Level"] < RecipeDB[b]["Level"] + sortFuncs["SkillAsc"] = function(a, b) + if (RecipeDB[a]["Level"] == RecipeDB[b]["Level"]) then + return RecipeDB[a]["Name"] < RecipeDB[b]["Name"] + else + return RecipeDB[a]["Level"] < RecipeDB[b]["Level"] + end end sortFuncs["SkillDesc"] = function(a, b) - return RecipeDB[b]["Level"] < RecipeDB[a]["Level"] + if (RecipeDB[a]["Level"] == RecipeDB[b]["Level"]) then + return RecipeDB[a]["Name"] < RecipeDB[b]["Name"] + else + return RecipeDB[b]["Level"] < RecipeDB[a]["Level"] + end end sortFuncs["Name"] = function(a, b) @@ -2093,8 +2101,12 @@ do sortFuncs["Acquisition"] = function (a, b) local reca = RecipeDB[a]["Acquire"][1] local recb = RecipeDB[b]["Acquire"][1] - if (reca) and (recb) then - return reca["Type"] < recb["Type"] + if (reca and recb) then + if (reca["Type"] == recb["Type"]) then + return RecipeDB[a]["Name"] < RecipeDB[b]["Name"] + else + return reca["Type"] < recb["Type"] + end else return not not reca end @@ -2107,7 +2119,11 @@ do local recb = RecipeDB[b]["Locations"] or "" reca = smatch(reca,"(%w+),") or "" recb = smatch(recb,"(%w+),") or "" - return (reca < recb) + if (reca == recb) then + return RecipeDB[a]["Name"] < RecipeDB[b]["Name"] + else + return (reca < recb) + end end end -- 1.7.9.5