Skip to content

Commit 84f4990

Browse files
UltraPuPowerPeap1ant
authored andcommitted
fix zip function (StarT-Dev-Team#615)
1 parent ee97531 commit 84f4990

1 file changed

Lines changed: 12 additions & 9 deletions

File tree

kubejs/server_scripts/utils/helpers/recipe_helpers.js

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -198,16 +198,19 @@ const ingredientArrayContainsItem = (ingredients, item) => {
198198
*/
199199
const zipIngredientArrays = (arr1, arr2) => {
200200
/** @type {RecipeHelperIngredient[]} */
201-
let zipped = arr1;
202-
203-
arr2.forEach((ingredient) => {
204-
let index = zipped.findIndex((zippedIngredient) => zippedIngredient.item === ingredient.item);
205-
if (index >= -1) {
206-
zipped[index].amount += ingredient.amount;
207-
} else {
208-
zipped.push(ingredient);
201+
let zipped = [];
202+
203+
const addIngredient = (/** @type {RecipeHelperIngredient}*/ ingredient) => {
204+
let entry = zipped.find((i) => i.item === ingredient.item);
205+
if (entry) {
206+
entry.amount += ingredient.amount;
207+
return;
209208
}
210-
});
209+
zipped.push(ingredient);
210+
};
211+
212+
arr1.forEach(addIngredient);
213+
arr2.forEach(addIngredient);
211214
return zipped;
212215
};
213216

0 commit comments

Comments
 (0)