diff ReagentMaker.lua @ 107:d64a19e5a47d

Bypass the filtering. Not fully tested, but mostly works.
author contrebasse
date Thu, 02 Jun 2011 00:57:17 +0200
parents c8d527a9fb3a
children 618163a6d970
line wrap: on
line diff
--- a/ReagentMaker.lua	Tue May 31 00:57:27 2011 +0200
+++ b/ReagentMaker.lua	Thu Jun 02 00:57:17 2011 +0200
@@ -3,7 +3,7 @@
 -- @todo clean the A table
 -- @todo check local copy of globals functions
 -- @todo add support for dez ?
--- @todo add support for hidden recipes, removing filtering
+-- @todo add support for hidden recipes, removing filtering => save the reagent count to be able to compute the number of craftable items
 -- @todo add support for cross tradeskill, like mining + forge/ingé
 -- @todo when a reagent can not be crafted and the recipe has many reagents, do like ReverseEngeneering and go to this recipe (with a one step return button)
 -- @todo scroll to the selected recipe on opening (usefull also for the previous todo)
@@ -151,10 +151,12 @@
 
 		if not numMakable then
 			A.Error(A.L["The recipe to make the reagent seems to be hidden, it is not makable. Try to remove the filters on the recipes."])
+			A.RestoreActiveFilters()
 			return
 		end
 		if numMakable>0 then
 			A.craft(recipeIndex,reagentRecipeIndex,reagentIndex,numMakable,chooseNumberToCraft)
+			A.RestoreActiveFilters()
 			return
 		end
 
@@ -162,11 +164,13 @@
 		-- one step recursion, enables to mill to create an ink
 		if A.data[reagentID][1][1] and A.data[A.data[reagentID][1][1]] then
 			if A.externalCraftWindow(A.data[reagentID][1][1],reagentID) ~= false then
+				A.RestoreActiveFilters()
 				return
 			end
 		end
 
 		A.Error(A.L["You do not have enough reagents to craft [%s]"]:format(GetItemInfo(reagentID) or "item #"..reagentID))
+		A.RestoreActiveFilters()
 		return
 	else
 		A.externalCraftWindow(reagentID)