sorting fixed
This commit is contained in:
@ -8,7 +8,7 @@ org.gradle.jvmargs=-Xmx1G
|
|||||||
loader_version=0.11.6
|
loader_version=0.11.6
|
||||||
|
|
||||||
# Mod Properties
|
# Mod Properties
|
||||||
mod_version = 1.17.1.3
|
mod_version = 1.17.1.4
|
||||||
maven_group = de.jottyfan.minecraft
|
maven_group = de.jottyfan.minecraft
|
||||||
archives_base_name = quickiefabric
|
archives_base_name = quickiefabric
|
||||||
|
|
||||||
|
@ -5,6 +5,7 @@ import java.util.List;
|
|||||||
|
|
||||||
import de.jottyfan.minecraft.quickiefabric.items.QuickieItems;
|
import de.jottyfan.minecraft.quickiefabric.items.QuickieItems;
|
||||||
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
||||||
|
import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags;
|
||||||
import net.minecraft.block.BlockState;
|
import net.minecraft.block.BlockState;
|
||||||
import net.minecraft.block.Material;
|
import net.minecraft.block.Material;
|
||||||
import net.minecraft.block.OreBlock;
|
import net.minecraft.block.OreBlock;
|
||||||
@ -19,7 +20,7 @@ import net.minecraft.loot.context.LootContext.Builder;
|
|||||||
public class BlockOreNetherSulphor extends OreBlock {
|
public class BlockOreNetherSulphor extends OreBlock {
|
||||||
|
|
||||||
public BlockOreNetherSulphor() {
|
public BlockOreNetherSulphor() {
|
||||||
super(FabricBlockSettings.of(Material.STONE).hardness(2.1f));
|
super(FabricBlockSettings.of(Material.STONE).hardness(2.1f).requiresTool().breakByTool(FabricToolTags.PICKAXES));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -4,7 +4,9 @@ import java.util.Arrays;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import de.jottyfan.minecraft.quickiefabric.items.QuickieItems;
|
import de.jottyfan.minecraft.quickiefabric.items.QuickieItems;
|
||||||
|
import de.jottyfan.minecraft.quickiefabric.tools.QuickieTools;
|
||||||
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
||||||
|
import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags;
|
||||||
import net.minecraft.block.BlockState;
|
import net.minecraft.block.BlockState;
|
||||||
import net.minecraft.block.Material;
|
import net.minecraft.block.Material;
|
||||||
import net.minecraft.block.OreBlock;
|
import net.minecraft.block.OreBlock;
|
||||||
@ -19,7 +21,7 @@ import net.minecraft.loot.context.LootContext.Builder;
|
|||||||
public class BlockOreSalpeter extends OreBlock {
|
public class BlockOreSalpeter extends OreBlock {
|
||||||
|
|
||||||
public BlockOreSalpeter() {
|
public BlockOreSalpeter() {
|
||||||
super(FabricBlockSettings.of(Material.STONE).hardness(3.1f));
|
super(FabricBlockSettings.of(Material.STONE).hardness(3.1f).requiresTool().breakByTool(FabricToolTags.PICKAXES));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -5,6 +5,7 @@ import java.util.List;
|
|||||||
|
|
||||||
import de.jottyfan.minecraft.quickiefabric.items.QuickieItems;
|
import de.jottyfan.minecraft.quickiefabric.items.QuickieItems;
|
||||||
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
||||||
|
import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags;
|
||||||
import net.minecraft.block.BlockState;
|
import net.minecraft.block.BlockState;
|
||||||
import net.minecraft.block.Blocks;
|
import net.minecraft.block.Blocks;
|
||||||
import net.minecraft.block.Material;
|
import net.minecraft.block.Material;
|
||||||
@ -20,7 +21,7 @@ import net.minecraft.loot.context.LootContext.Builder;
|
|||||||
public class BlockOreSandSalpeter extends OreBlock {
|
public class BlockOreSandSalpeter extends OreBlock {
|
||||||
|
|
||||||
public BlockOreSandSalpeter() {
|
public BlockOreSandSalpeter() {
|
||||||
super(FabricBlockSettings.of(Material.STONE).hardness(2.9f));
|
super(FabricBlockSettings.of(Material.STONE).hardness(2.9f).requiresTool().breakByTool(FabricToolTags.PICKAXES));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -5,6 +5,7 @@ import java.util.List;
|
|||||||
|
|
||||||
import de.jottyfan.minecraft.quickiefabric.items.QuickieItems;
|
import de.jottyfan.minecraft.quickiefabric.items.QuickieItems;
|
||||||
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
||||||
|
import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags;
|
||||||
import net.minecraft.block.BlockState;
|
import net.minecraft.block.BlockState;
|
||||||
import net.minecraft.block.Material;
|
import net.minecraft.block.Material;
|
||||||
import net.minecraft.block.OreBlock;
|
import net.minecraft.block.OreBlock;
|
||||||
@ -19,7 +20,7 @@ import net.minecraft.loot.context.LootContext.Builder;
|
|||||||
public class BlockOreSulphor extends OreBlock {
|
public class BlockOreSulphor extends OreBlock {
|
||||||
|
|
||||||
public BlockOreSulphor() {
|
public BlockOreSulphor() {
|
||||||
super(FabricBlockSettings.of(Material.STONE).hardness(1.9f));
|
super(FabricBlockSettings.of(Material.STONE).hardness(1.9f).requiresTool().breakByTool(FabricToolTags.PICKAXES));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -5,6 +5,7 @@ import java.util.List;
|
|||||||
|
|
||||||
import de.jottyfan.minecraft.quickiefabric.items.QuickieItems;
|
import de.jottyfan.minecraft.quickiefabric.items.QuickieItems;
|
||||||
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
||||||
|
import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags;
|
||||||
import net.minecraft.block.BlockState;
|
import net.minecraft.block.BlockState;
|
||||||
import net.minecraft.block.Blocks;
|
import net.minecraft.block.Blocks;
|
||||||
import net.minecraft.block.GravelBlock;
|
import net.minecraft.block.GravelBlock;
|
||||||
@ -20,7 +21,7 @@ import net.minecraft.loot.context.LootContext.Builder;
|
|||||||
public class BlockSandSalpeter extends GravelBlock {
|
public class BlockSandSalpeter extends GravelBlock {
|
||||||
|
|
||||||
public BlockSandSalpeter() {
|
public BlockSandSalpeter() {
|
||||||
super(FabricBlockSettings.of(Material.STONE).hardness(3.1f));
|
super(FabricBlockSettings.of(Material.STONE).hardness(3.1f).requiresTool().breakByTool(FabricToolTags.SHOVELS));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -5,6 +5,7 @@ import java.util.List;
|
|||||||
|
|
||||||
import de.jottyfan.minecraft.quickiefabric.items.QuickieItems;
|
import de.jottyfan.minecraft.quickiefabric.items.QuickieItems;
|
||||||
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
||||||
|
import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.block.BlockState;
|
import net.minecraft.block.BlockState;
|
||||||
import net.minecraft.block.Material;
|
import net.minecraft.block.Material;
|
||||||
@ -19,7 +20,7 @@ import net.minecraft.loot.context.LootContext.Builder;
|
|||||||
public class BlockSulphor extends Block {
|
public class BlockSulphor extends Block {
|
||||||
|
|
||||||
public BlockSulphor() {
|
public BlockSulphor() {
|
||||||
super(FabricBlockSettings.of(Material.WOOL).hardness(0.5f));
|
super(FabricBlockSettings.of(Material.WOOL).hardness(0.5f).requiresTool().breakByTool(FabricToolTags.PICKAXES));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -4,9 +4,6 @@ import java.util.ArrayList;
|
|||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import org.apache.logging.log4j.LogManager;
|
|
||||||
import org.apache.logging.log4j.Logger;
|
|
||||||
|
|
||||||
import de.jottyfan.minecraft.quickiefabric.items.ItemBackpack;
|
import de.jottyfan.minecraft.quickiefabric.items.ItemBackpack;
|
||||||
import net.minecraft.entity.player.PlayerEntity;
|
import net.minecraft.entity.player.PlayerEntity;
|
||||||
import net.minecraft.inventory.SimpleInventory;
|
import net.minecraft.inventory.SimpleInventory;
|
||||||
@ -24,8 +21,6 @@ import net.minecraft.util.Hand;
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public class BackpackInventory extends SimpleInventory {
|
public class BackpackInventory extends SimpleInventory {
|
||||||
private static final Logger LOGGER = LogManager.getLogger(BackpackInventory.class);
|
|
||||||
|
|
||||||
private static final String NBT_BACKPACK = "backpack";
|
private static final String NBT_BACKPACK = "backpack";
|
||||||
private static final String NBT_SLOT = "slot";
|
private static final String NBT_SLOT = "slot";
|
||||||
private static final String NBT_ITEMS = "items";
|
private static final String NBT_ITEMS = "items";
|
||||||
@ -131,21 +126,25 @@ public class BackpackInventory extends SimpleInventory {
|
|||||||
/**
|
/**
|
||||||
* set the items in the itemStack that contains the backpack
|
* set the items in the itemStack that contains the backpack
|
||||||
*
|
*
|
||||||
* @param itemStack the backpack's itemStack
|
* @param itemStack the backpack's itemStack
|
||||||
* @param itemStacks the collection of itemStacks for the backpack
|
* @param itemStacks the collection of lists of itemStacks for the backpack
|
||||||
*/
|
*/
|
||||||
public static void setItemsToBackpack(ItemStack itemStack, Collection<ItemStack> itemStacks) {
|
public static void setItemsToBackpack(ItemStack itemStack, Collection<List<ItemStack>> itemStacks) {
|
||||||
NbtList listTag = new NbtList();
|
NbtList listTag = new NbtList();
|
||||||
Integer slot = 0;
|
Integer slot = 0;
|
||||||
for (ItemStack stack : itemStacks) {
|
for (List<ItemStack> stacks : itemStacks) {
|
||||||
if (!(stack == null) && !stack.isEmpty()) {
|
if (stacks != null && stacks.size() > 0) {
|
||||||
Integer leftCount = stack.getCount();
|
ItemStack stack = stacks.get(0);
|
||||||
|
Integer leftCount = 0;
|
||||||
|
for (ItemStack is : stacks) {
|
||||||
|
leftCount += is.getCount();
|
||||||
|
}
|
||||||
while (leftCount > 0) {
|
while (leftCount > 0) {
|
||||||
LOGGER.info("add {}x{} to backpack", stack.getCount(), stack.getTranslationKey());
|
if (leftCount > stack.getMaxCount()) {
|
||||||
if (stack.getCount() > stack.getMaxCount()) {
|
stack.setCount(stack.getMaxCount());
|
||||||
leftCount = stack.getCount() - stack.getMaxCount();
|
leftCount = leftCount - stack.getMaxCount();
|
||||||
stack.setCount(leftCount);
|
|
||||||
} else {
|
} else {
|
||||||
|
stack.setCount(leftCount);
|
||||||
leftCount = 0;
|
leftCount = 0;
|
||||||
}
|
}
|
||||||
listTag.add(prepareCompoundTag(slot, stack));
|
listTag.add(prepareCompoundTag(slot, stack));
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
package de.jottyfan.minecraft.quickiefabric.items;
|
package de.jottyfan.minecraft.quickiefabric.items;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@ -84,15 +85,15 @@ public class ItemBackpack extends Item {
|
|||||||
private ItemStack sortBackpackContent(ItemStack itemStack) {
|
private ItemStack sortBackpackContent(ItemStack itemStack) {
|
||||||
if (!itemStack.isEmpty()) {
|
if (!itemStack.isEmpty()) {
|
||||||
List<ItemStack> stacks = BackpackInventory.getItemsFromBackpack(itemStack);
|
List<ItemStack> stacks = BackpackInventory.getItemsFromBackpack(itemStack);
|
||||||
Map<String, ItemStack> map = new HashMap<>();
|
Map<String, List<ItemStack>> map = new HashMap<>();
|
||||||
for (ItemStack stack : stacks) {
|
for (ItemStack stack : stacks) {
|
||||||
String id = stack.getItem().getTranslationKey();
|
String id = stack.getItem().getTranslationKey();
|
||||||
ItemStack foundStack = map.get(id);
|
List<ItemStack> foundStacks = map.get(id);
|
||||||
if (foundStack == null) {
|
if (foundStacks == null) {
|
||||||
map.put(id, stack);
|
foundStacks = new ArrayList<>();
|
||||||
} else {
|
map.put(id, foundStacks);
|
||||||
foundStack.setCount(foundStack.getCount() + stack.getCount());
|
|
||||||
}
|
}
|
||||||
|
foundStacks.add(stack);
|
||||||
}
|
}
|
||||||
BackpackInventory.setItemsToBackpack(itemStack, map.values());
|
BackpackInventory.setItemsToBackpack(itemStack, map.values());
|
||||||
}
|
}
|
||||||
|
@ -20,13 +20,12 @@ import net.minecraft.nbt.NbtCompound;
|
|||||||
*/
|
*/
|
||||||
public class ToolSpeedpowderPickaxe extends PickaxeItem implements ToolRangeable {
|
public class ToolSpeedpowderPickaxe extends PickaxeItem implements ToolRangeable {
|
||||||
|
|
||||||
public static final int[] DEFAULT_HARVEST_RANGE = new int[] {3, 3, 3};
|
public static final int[] DEFAULT_HARVEST_RANGE = new int[] { 3, 3, 3 };
|
||||||
|
|
||||||
public ToolSpeedpowderPickaxe() {
|
public ToolSpeedpowderPickaxe() {
|
||||||
super(ToolMaterials.DIAMOND, 4, 2.0f, new Item.Settings().group(RegistryManager.QUICKIEFABRIC_GROUP));
|
super(ToolMaterials.DIAMOND, 4, 2.0f, new Item.Settings().group(RegistryManager.QUICKIEFABRIC_GROUP));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public HarvestRange getRange(ItemStack stack) {
|
public HarvestRange getRange(ItemStack stack) {
|
||||||
NbtCompound tag = stack.getNbt();
|
NbtCompound tag = stack.getNbt();
|
||||||
@ -58,7 +57,7 @@ public class ToolSpeedpowderPickaxe extends PickaxeItem implements ToolRangeable
|
|||||||
harvestRange.addXYZ(plusRange);
|
harvestRange.addXYZ(plusRange);
|
||||||
tag.putIntArray("range", harvestRange.getRangeAsArray());
|
tag.putIntArray("range", harvestRange.getRangeAsArray());
|
||||||
}
|
}
|
||||||
|
|
||||||
// @Override
|
// @Override
|
||||||
// public ActionResult<ItemStack> onItemRightClick(World worldIn, PlayerEntity playerIn, Hand handIn) {
|
// public ActionResult<ItemStack> onItemRightClick(World worldIn, PlayerEntity playerIn, Hand handIn) {
|
||||||
// CommonToolCode.onItemRightClick(worldIn, playerIn, handIn);
|
// CommonToolCode.onItemRightClick(worldIn, playerIn, handIn);
|
||||||
|
Reference in New Issue
Block a user