Mercurial > wow > reagentmaker
comparison ReagentMaker.lua @ 38:aa2f6965c0f6
Add fancy errors/warnings and block recursion when a recipe has many reagents
| author | contrebasse |
|---|---|
| date | Fri, 29 Apr 2011 23:38:43 +0200 |
| parents | 218e1dd1b821 |
| children | c6a1f1cf560c |
comparison
equal
deleted
inserted
replaced
| 37:ef22738aebfe | 38:aa2f6965c0f6 |
|---|---|
| 120 | 120 |
| 121 -- If only one recipe is known for the reagent, use it | 121 -- If only one recipe is known for the reagent, use it |
| 122 if #(A.data[reagentID]) == 1 and not A.data[reagentID].spell then | 122 if #(A.data[reagentID]) == 1 and not A.data[reagentID].spell then |
| 123 local numMakable, reagentIndex = A.numMakable(reagentID) | 123 local numMakable, reagentIndex = A.numMakable(reagentID) |
| 124 if not numMakable then | 124 if not numMakable then |
| 125 print("Sorry, I can't determine the number of makables reagents...") | 125 A.Error("The recipe to make the reagent seems to be hidden, it is not makable.") |
| 126 return | 126 return |
| 127 end | 127 end |
| 128 if numMakable>0 then | 128 if numMakable>0 then |
| 129 A.craft(reagentID,reagentRecipeIndex,reagentIndex,numMakable,chooseNumberToCraft) | 129 A.craft(reagentID,reagentRecipeIndex,reagentIndex,numMakable,chooseNumberToCraft) |
| 130 return | 130 return |
| 131 end | 131 end |
| 132 | 132 |
| 133 -- If we can make the item needed to make the reagent, open a window to make it | 133 -- If we can make the item needed to make the reagent, open a window to make it |
| 134 -- one step recursion, enables to mill to create an ink | 134 -- one step recursion, enables to mill to create an ink |
| 135 if A.data[A.data[reagentID][1][1]] then | 135 if (not A.data[reagentID].manyReagents) and A.data[A.data[reagentID][1][1]] then |
| 136 A.externalCraftWindow(A.data[reagentID][1][1],reagentID) | 136 A.externalCraftWindow(A.data[reagentID][1][1],reagentID) |
| 137 else | 137 else |
| 138 print("Sorry, couldn't make reagent...") | 138 A.Error("You do not have enough reagents to craft ["..(GetItemInfo(reagentID) or "item #"..reagentID).."]") |
| 139 end | 139 end |
| 140 return | |
| 140 else | 141 else |
| 141 A.externalCraftWindow(reagentID) | 142 A.externalCraftWindow(reagentID) |
| 142 end -- if | 143 end -- if |
| 143 --A.RestoreActiveFilters() | 144 --A.RestoreActiveFilters() |
| 144 end -- function | 145 end -- function |
