Merges mergeSource into mergeTarget @param mergeSource - The stack to merge into mergeTarget, this stack is not modified @param mergeTarget - The target merge, this stack is modified if doMerge is set @param doMerge - To actually do the merge @return The number of items that was successfully merged
(ItemStack mergeSource, ItemStack mergeTarget, boolean doMerge)
| 117 | * @param doMerge - To actually do the merge |
| 118 | * @return The number of items that was successfully merged. */ |
| 119 | public static int mergeStacks(ItemStack mergeSource, ItemStack mergeTarget, boolean doMerge) { |
| 120 | if (!canMerge(mergeSource, mergeTarget)) { |
| 121 | return 0; |
| 122 | } |
| 123 | int mergeCount = Math.min(mergeTarget.getMaxStackSize() - mergeTarget.stackSize, mergeSource.stackSize); |
| 124 | if (mergeCount < 1) { |
| 125 | return 0; |
| 126 | } |
| 127 | if (doMerge) { |
| 128 | mergeTarget.stackSize += mergeCount; |
| 129 | } |
| 130 | return mergeCount; |
| 131 | } |
| 132 | |
| 133 | /* ITEM COMPARISONS */ |
| 134 | /** Determines whether the given ItemStack should be considered equivalent for crafting purposes. |
no test coverage detected