diff --git a/js/main.js b/js/main.js index 5a8a684..4b66524 100644 --- a/js/main.js +++ b/js/main.js @@ -5,6 +5,8 @@ var allItemsArray = [] var allItems = {} var requieredCount = [] var requieredItems = [] +var frequieredCount = [] +var frequieredItems = [] var newid = 0 var items = "" @@ -53,12 +55,6 @@ function loadHTML() { console.log(id + " allready exists!") return - - - - - - } $("#tocraft") .append( @@ -137,12 +133,6 @@ $(document) + " allready exists!") return - - - - - - } $("#tocraft") .append( @@ -191,18 +181,18 @@ $(document) function() { requieredCount = [] requieredItems = [] - var requieredCountMulti = [] for (var i = 0; i < newid; i++) { var tag = "#item_" + i; if ($(tag).length) { var item = allItemsArray[i] + var count = 1 + if (item.count) + var count = item.count for (var n = 0; n < Math - .ceil($(tag) - .spinner("value")/item.count); n++) { + .ceil($(tag).spinner( + "value") + / count); n++) { for (var j = 0; j < item.crafting.length; j++) { - - - if (requieredItems .indexOf(item.crafting[j]) == -1) { requieredCount[requieredItems.length] = 1 @@ -214,18 +204,55 @@ $(document) } } } - + } } + makeCrafting() updateoutput() }) }) +function makeCrafting() { + frequieredCount = requieredCount.slice() + frequieredItems = requieredItems.slice() + var swapped = false + do { + swapped = false + var k = 0; + while (k < frequieredItems.length) { + var itemid = frequieredItems[k] + if (allItems[itemid]) { + swapped = true + console.log("SWAPPED") + var item = allItems[itemid] + var count = 1 + var itemcount = frequieredCount[k] + if (item.count) + var count = item.count + frequieredCount.splice(k, 1) + frequieredItems.splice(k, 1) + for (var i = 0; i < Math.ceil(itemcount / count); i++) { + for (var j = 0; j < item.crafting.length; j++) { + if (frequieredItems.indexOf(item.crafting[j]) == -1) { + frequieredCount[frequieredItems.length] = 1 + frequieredItems[frequieredItems.length] = item.crafting[j] + } else { + frequieredCount[frequieredItems + .indexOf(item.crafting[j])] += 1 + } + } + } + } + k++ + } + } while (swapped) + console.log(frequieredItems) +} function updateoutput() { $("#output").empty() $("#outputfull").empty() - $("#outputfull").append('