diff --git a/gradle.properties b/gradle.properties index 8c94d1d..eefc2e3 100644 --- a/gradle.properties +++ b/gradle.properties @@ -6,12 +6,12 @@ yarn_mappings = 1.17.1+build.10 loader_version = 0.11.6 # Mod properties -mod_version = 1.2.0 -maven_group = com.cumulusmc.artofalchemy +mod_version = 1.3.0 +maven_group = dev.cafeteria.artofalchemy archives_base_name = artofalchemy # Dependencies -fabric_api_version = 0.36.1+1.17 +fabric_api_version = 0.40.1+1.17.1 libgui_version = 4.1.2+1.17.1 modmenu_version = 2.0.2 diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerDistiller.java b/src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerDistiller.java deleted file mode 100644 index 55518dd..0000000 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerDistiller.java +++ /dev/null @@ -1,115 +0,0 @@ -package com.cumulusmc.artofalchemy.gui.handler; - -import io.github.cottonmc.cotton.gui.SyncedGuiDescription; -import io.github.cottonmc.cotton.gui.widget.*; -import io.github.cottonmc.cotton.gui.widget.WBar.Direction; -import io.github.cottonmc.cotton.gui.widget.data.HorizontalAlignment; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.transport.HasEssentia; -import com.cumulusmc.artofalchemy.gui.widget.WEssentiaPanel; -import net.minecraft.block.entity.BlockEntity; -import net.minecraft.client.resource.language.I18n; -import net.minecraft.entity.player.PlayerInventory; -import net.minecraft.screen.ScreenHandlerContext; -import net.minecraft.text.TranslatableText; -import net.minecraft.util.Identifier; -import net.minecraft.util.math.BlockPos; - -public class HandlerDistiller extends SyncedGuiDescription { - - final BlockPos pos; - final WEssentiaPanel essentiaPanel; - - final int SIZE_FACTOR = 18; - final int PAD = SIZE_FACTOR * 2; - final int WIDTH = SIZE_FACTOR * 9; - final int HEIGHT = (SIZE_FACTOR * 7) + 2; // KG: Why +2? - final int ITEM_HEIGHT = SIZE_FACTOR * 3; - final int FUEL_SIZE = (int) (SIZE_FACTOR * 0.8); - final int FUEL_SIZE_PAD = (int) ((SIZE_FACTOR - FUEL_SIZE) / 2); - - @SuppressWarnings("MethodCallSideOnly") - public HandlerDistiller(int syncId, PlayerInventory playerInventory, ScreenHandlerContext ctx) { - super(AoAHandlers.DISTILLER, syncId, playerInventory, getBlockInventory(ctx), getBlockPropertyDelegate(ctx)); - - pos = ctx.get((world, pos) -> pos, null); - - WGridPanel root = new WGridPanel(1); - setRootPanel(root); - root.setSize(WIDTH, HEIGHT); - - WSprite background = new WSprite(new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/rune_bg.png")); - root.add(background, 0, 0, WIDTH, 5 * SIZE_FACTOR); - - WItemSlot azothSlot = WItemSlot.of(blockInventory, 0); - root.add(azothSlot, PAD, SIZE_FACTOR * 1); - - WItemSlot fuelSlot = WItemSlot.of(blockInventory, 1); - root.add(fuelSlot, PAD, SIZE_FACTOR * 3); - - WBar fuelBar = new WBar(new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/fire_off.png"), - new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/fire_on.png"), - 2, 3, Direction.UP); - - root.add(fuelBar, PAD + FUEL_SIZE_PAD, PAD + FUEL_SIZE_PAD, FUEL_SIZE, FUEL_SIZE); - - WBar essentiaTankBar = new WBar( - new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/tank_empty.png"), - new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/tank_full.png"), - 4, - 6, - Direction.UP - ); - essentiaTankBar.withTooltip("gui." + ArtOfAlchemy.MOD_ID + ".mixed_essentia_tooltip"); - root.add(essentiaTankBar, 0, SIZE_FACTOR, PAD, ITEM_HEIGHT); - - // Alkahest tank - TODO - WBar alkahestTankBar = new WBar( - new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/tank_empty.png"), - new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/tank_full.png"), - 5, - 6, - Direction.UP - ); - alkahestTankBar.withTooltip("gui." + ArtOfAlchemy.MOD_ID + ".alkahest_tooltip"); - - - root.add(alkahestTankBar, WIDTH - PAD, SIZE_FACTOR, PAD, ITEM_HEIGHT); - - - WBar progressBar = new WBar(new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/progress_off.png"), - new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/progress_magenta.png"), 0, 1, Direction.RIGHT); - root.add(progressBar, 3 * SIZE_FACTOR, 2 * SIZE_FACTOR, 4 * SIZE_FACTOR, SIZE_FACTOR); - - WLabel title = new WLabel(new TranslatableText("block.artofalchemy.distillation_aparatus"), WLabel.DEFAULT_TEXT_COLOR); - title.setHorizontalAlignment(HorizontalAlignment.CENTER); - root.add(title, 0, 0, WIDTH, SIZE_FACTOR); - - EssentiaContainer essentia = getEssentia(ctx); - essentiaPanel = new WEssentiaPanel(essentia); - - root.add(this.createPlayerInventoryPanel(), 0, 5 * 18); - - root.validate(this); - - } - - public void updateEssentia(int essentiaId, EssentiaContainer essentia, BlockPos pos) { - if (pos.equals(this.pos)) { - essentiaPanel.updateEssentia(essentia); - } - } - - private static EssentiaContainer getEssentia(ScreenHandlerContext ctx) { - return ctx.get((world, pos) -> { - BlockEntity be = world.getBlockEntity(pos); - if (be instanceof HasEssentia) { - return ((HasEssentia) be).getContainer(0); - } else { - return new EssentiaContainer(); - } - }, new EssentiaContainer()); - } - -} diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/widget/WItemScalable.java b/src/main/java/com/cumulusmc/artofalchemy/gui/widget/WItemScalable.java deleted file mode 100644 index 2307824..0000000 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/widget/WItemScalable.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.cumulusmc.artofalchemy.gui.widget; - -import com.mojang.blaze3d.systems.RenderSystem; -import io.github.cottonmc.cotton.gui.widget.WItem; -import net.fabricmc.api.EnvType; -import net.fabricmc.api.Environment; -import net.minecraft.client.MinecraftClient; -import net.minecraft.client.render.item.ItemRenderer; -import net.minecraft.item.ItemConvertible; -import net.minecraft.item.ItemStack; -import net.minecraft.tag.Tag; - -import java.util.List; - -public class WItemScalable extends WItem { - public WItemScalable(List items) { - super(items); - } - - public WItemScalable(Tag tag) { - super(tag); - } - - public WItemScalable(ItemStack stack) { - super(stack); - } - -// @Environment(EnvType.CLIENT) -// @Override -// public void paintBackground(int x, int y, int mouseX, int mouseY) { -// RenderSystem.pushMatrix(); -// RenderSystem.enableDepthTest(); -// RenderSystem.translatef(x, y, 0); -// RenderSystem.scalef((1.0f * width) / 16, (1.0f * height) / 16, 1.0f); -// -// MinecraftClient mc = MinecraftClient.getInstance(); -// ItemRenderer renderer = mc.getItemRenderer(); -// renderer.zOffset = 100f; -// renderer.renderGuiItem(mc.player, getItems().get(0), getWidth() / 2 - 9, getHeight() / 2 - 9); -// renderer.zOffset = 0f; -// -// RenderSystem.popMatrix(); -// } -} diff --git a/src/main/java/com/cumulusmc/artofalchemy/util/AoATags.java b/src/main/java/com/cumulusmc/artofalchemy/util/AoATags.java deleted file mode 100644 index 40b0413..0000000 --- a/src/main/java/com/cumulusmc/artofalchemy/util/AoATags.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.cumulusmc.artofalchemy.util; - -import com.cumulusmc.artofalchemy.ArtOfAlchemy; -import net.fabricmc.fabric.api.tag.TagRegistry; -import net.minecraft.item.Item; -import net.minecraft.tag.Tag; - -public class AoATags { - public static final Tag CONTAINERS = TagRegistry.item(ArtOfAlchemy.id("containers")); - - public static void init() { } -} diff --git a/src/main/java/com/cumulusmc/artofalchemy/AoAConfig.java b/src/main/java/dev/cafeteria/artofalchemy/AoAConfig.java similarity index 95% rename from src/main/java/com/cumulusmc/artofalchemy/AoAConfig.java rename to src/main/java/dev/cafeteria/artofalchemy/AoAConfig.java index f4f2969..d1f6271 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/AoAConfig.java +++ b/src/main/java/dev/cafeteria/artofalchemy/AoAConfig.java @@ -1,6 +1,7 @@ -package com.cumulusmc.artofalchemy; +package dev.cafeteria.artofalchemy; + +import dev.cafeteria.artofalchemy.util.MateriaRank; -import com.cumulusmc.artofalchemy.util.MateriaRank; import me.shedaniel.autoconfig.AutoConfig; import me.shedaniel.autoconfig.ConfigData; import me.shedaniel.autoconfig.annotation.Config; diff --git a/src/main/java/com/cumulusmc/artofalchemy/ArtOfAlchemy.java b/src/main/java/dev/cafeteria/artofalchemy/ArtOfAlchemy.java similarity index 73% rename from src/main/java/com/cumulusmc/artofalchemy/ArtOfAlchemy.java rename to src/main/java/dev/cafeteria/artofalchemy/ArtOfAlchemy.java index 1819335..6410360 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/ArtOfAlchemy.java +++ b/src/main/java/dev/cafeteria/artofalchemy/ArtOfAlchemy.java @@ -1,17 +1,22 @@ -package com.cumulusmc.artofalchemy; +package dev.cafeteria.artofalchemy; + +import org.apache.logging.log4j.Level; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +import dev.cafeteria.artofalchemy.block.AoABlocks; +import dev.cafeteria.artofalchemy.blockentity.AoABlockEntities; +import dev.cafeteria.artofalchemy.dispenser.AoADispenserBehavior; +import dev.cafeteria.artofalchemy.essentia.AoAEssentia; +import dev.cafeteria.artofalchemy.fluid.AoAFluids; +import dev.cafeteria.artofalchemy.gui.handler.AoAHandlers; +import dev.cafeteria.artofalchemy.item.AoAItems; +import dev.cafeteria.artofalchemy.network.AoANetworking; +import dev.cafeteria.artofalchemy.recipe.AoARecipes; +import dev.cafeteria.artofalchemy.transport.EssentiaNetworker; +import dev.cafeteria.artofalchemy.util.AoALoot; +import dev.cafeteria.artofalchemy.util.AoATags; -import com.cumulusmc.artofalchemy.block.AoABlocks; -import com.cumulusmc.artofalchemy.blockentity.AoABlockEntities; -import com.cumulusmc.artofalchemy.dispenser.AoADispenserBehavior; -import com.cumulusmc.artofalchemy.essentia.AoAEssentia; -import com.cumulusmc.artofalchemy.fluid.AoAFluids; -import com.cumulusmc.artofalchemy.gui.handler.AoAHandlers; -import com.cumulusmc.artofalchemy.item.AoAItems; -import com.cumulusmc.artofalchemy.network.AoANetworking; -import com.cumulusmc.artofalchemy.recipe.AoARecipes; -import com.cumulusmc.artofalchemy.transport.EssentiaNetworker; -import com.cumulusmc.artofalchemy.util.AoALoot; -import com.cumulusmc.artofalchemy.util.AoATags; import me.shedaniel.autoconfig.AutoConfig; import me.shedaniel.autoconfig.serializer.GsonConfigSerializer; import net.fabricmc.api.ModInitializer; @@ -21,9 +26,6 @@ import net.minecraft.item.ItemStack; import net.minecraft.server.world.ServerWorld; import net.minecraft.util.Identifier; -import org.apache.logging.log4j.Level; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; public class ArtOfAlchemy implements ModInitializer { diff --git a/src/main/java/com/cumulusmc/artofalchemy/ArtOfAlchemyClient.java b/src/main/java/dev/cafeteria/artofalchemy/ArtOfAlchemyClient.java similarity index 66% rename from src/main/java/com/cumulusmc/artofalchemy/ArtOfAlchemyClient.java rename to src/main/java/dev/cafeteria/artofalchemy/ArtOfAlchemyClient.java index 748ef11..2768be7 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/ArtOfAlchemyClient.java +++ b/src/main/java/dev/cafeteria/artofalchemy/ArtOfAlchemyClient.java @@ -1,8 +1,9 @@ -package com.cumulusmc.artofalchemy; +package dev.cafeteria.artofalchemy; + +import dev.cafeteria.artofalchemy.gui.screen.AoAScreens; +import dev.cafeteria.artofalchemy.network.AoAClientNetworking; +import dev.cafeteria.artofalchemy.render.AoARenderers; -import com.cumulusmc.artofalchemy.gui.screen.AoAScreens; -import com.cumulusmc.artofalchemy.network.AoAClientNetworking; -import com.cumulusmc.artofalchemy.render.AoARenderers; import net.fabricmc.api.ClientModInitializer; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; diff --git a/src/main/java/com/cumulusmc/artofalchemy/block/AbstractBlockCentrifuge.java b/src/main/java/dev/cafeteria/artofalchemy/block/AbstractBlockCentrifuge.java similarity index 80% rename from src/main/java/com/cumulusmc/artofalchemy/block/AbstractBlockCentrifuge.java rename to src/main/java/dev/cafeteria/artofalchemy/block/AbstractBlockCentrifuge.java index bc432dd..066104b 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/block/AbstractBlockCentrifuge.java +++ b/src/main/java/dev/cafeteria/artofalchemy/block/AbstractBlockCentrifuge.java @@ -1,21 +1,20 @@ -package com.cumulusmc.artofalchemy.block; +package dev.cafeteria.artofalchemy.block; + +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.blockentity.AoABlockEntities; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityCalcinator; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; import net.minecraft.block.Block; import net.minecraft.block.BlockEntityProvider; import net.minecraft.block.BlockState; import net.minecraft.block.Material; -import net.minecraft.block.entity.BlockEntity; -import net.minecraft.block.entity.BlockEntityTicker; -import net.minecraft.block.entity.BlockEntityType; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.item.ItemPlacementContext; import net.minecraft.state.StateManager.Builder; import net.minecraft.state.property.DirectionProperty; import net.minecraft.state.property.Properties; -import net.minecraft.util.*; +import net.minecraft.util.ActionResult; +import net.minecraft.util.BlockMirror; +import net.minecraft.util.BlockRotation; +import net.minecraft.util.Hand; import net.minecraft.util.hit.BlockHitResult; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.Direction; @@ -26,8 +25,8 @@ abstract public class AbstractBlockCentrifuge extends Block implements BlockEnti public static final int TANK_SIZE = 4000; public static final DirectionProperty FACING = Properties.HORIZONTAL_FACING; public static final Settings SETTINGS = Settings - .of(Material.STONE) - .strength(5.0f, 6.0f); + .of(Material.STONE) + .strength(5.0f, 6.0f); protected EssentiaContainer input = new EssentiaContainer().setCapacity(TANK_SIZE).setInput(true).setOutput(false); protected EssentiaContainer[] outputs; @@ -48,7 +47,7 @@ public BlockState getPlacementState(ItemPlacementContext ctx) { @Override public ActionResult onUse(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, - BlockHitResult hit) { + BlockHitResult hit) { if (world.isClient) { return ActionResult.SUCCESS; } @@ -61,10 +60,12 @@ public ActionResult onUse(BlockState state, World world, BlockPos pos, PlayerEnt return ActionResult.SUCCESS; } + @Override public BlockState rotate(BlockState state, BlockRotation rotation) { return state.with(FACING, rotation.rotate(state.get(FACING))); } + @Override public BlockState mirror(BlockState state, BlockMirror mirror) { return state.rotate(mirror.getRotation(state.get(FACING))); } diff --git a/src/main/java/com/cumulusmc/artofalchemy/block/AoABlocks.java b/src/main/java/dev/cafeteria/artofalchemy/block/AoABlocks.java similarity index 88% rename from src/main/java/com/cumulusmc/artofalchemy/block/AoABlocks.java rename to src/main/java/dev/cafeteria/artofalchemy/block/AoABlocks.java index f3960c2..b3a7f42 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/block/AoABlocks.java +++ b/src/main/java/dev/cafeteria/artofalchemy/block/AoABlocks.java @@ -1,19 +1,20 @@ -package com.cumulusmc.artofalchemy.block; - -import com.cumulusmc.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.essentia.Essentia; -import com.cumulusmc.artofalchemy.essentia.RegistryEssentia; -import com.cumulusmc.artofalchemy.item.AoAItems; -import com.cumulusmc.artofalchemy.item.BlockItemMateria; -import com.cumulusmc.artofalchemy.util.MateriaRank; +package dev.cafeteria.artofalchemy.block; + +import java.util.HashMap; +import java.util.Map; + +import dev.cafeteria.artofalchemy.ArtOfAlchemy; +import dev.cafeteria.artofalchemy.essentia.Essentia; +import dev.cafeteria.artofalchemy.essentia.RegistryEssentia; +import dev.cafeteria.artofalchemy.item.AoAItems; +import dev.cafeteria.artofalchemy.item.BlockItemMateria; +import dev.cafeteria.artofalchemy.util.MateriaRank; + import net.minecraft.block.Block; import net.minecraft.item.BlockItem; import net.minecraft.util.Identifier; import net.minecraft.util.registry.Registry; -import java.util.HashMap; -import java.util.Map; - public class AoABlocks { public static final Block ANALYZER = new BlockAnalyzer(); @@ -39,7 +40,7 @@ public static void registerBlocks() { register("analysis_desk", ANALYZER); register("calcination_furnace", CALCINATOR); register("dissolution_chamber", DISSOLVER); - register("distillation_aparatus", DISTILLER); + register("distillation_apparatus", DISTILLER); register("synthesis_table", SYNTHESIZER); register("projection_altar", PROJECTOR); register("calcination_furnace_plus", CALCINATOR_PLUS); diff --git a/src/main/java/com/cumulusmc/artofalchemy/block/BlockAlkahest.java b/src/main/java/dev/cafeteria/artofalchemy/block/BlockAlkahest.java similarity index 82% rename from src/main/java/com/cumulusmc/artofalchemy/block/BlockAlkahest.java rename to src/main/java/dev/cafeteria/artofalchemy/block/BlockAlkahest.java index 4343602..0c12ecb 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/block/BlockAlkahest.java +++ b/src/main/java/dev/cafeteria/artofalchemy/block/BlockAlkahest.java @@ -1,6 +1,9 @@ -package com.cumulusmc.artofalchemy.block; +package dev.cafeteria.artofalchemy.block; + +import java.util.Random; + +import dev.cafeteria.artofalchemy.fluid.AoAFluids; -import com.cumulusmc.artofalchemy.fluid.AoAFluids; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.block.BlockState; @@ -12,12 +15,10 @@ import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; -import java.util.Random; - public class BlockAlkahest extends FluidBlock { public static final Settings SETTINGS = Settings.copy(Blocks.WATER) - .luminance((state) -> 9); + .luminance((state) -> 9); public BlockAlkahest() { super(AoAFluids.ALKAHEST, SETTINGS); @@ -26,8 +27,8 @@ public BlockAlkahest() { @Override public void onEntityCollision(BlockState state, World world, BlockPos pos, Entity entity) { entity.damage(DamageSource.MAGIC, 2); -// world.playSound(entity.getX(), entity.getY(), entity.getZ(), SoundEvents.ENTITY_GENERIC_BURN, -// entity.getSoundCategory(), 1.0F, 1.0F, false); + // world.playSound(entity.getX(), entity.getY(), entity.getZ(), SoundEvents.ENTITY_GENERIC_BURN, + // entity.getSoundCategory(), 1.0F, 1.0F, false); world.addParticle(ParticleTypes.LARGE_SMOKE, entity.getX(), entity.getY(), entity.getZ(), 0.0D, 0.0D, 0.0D); } diff --git a/src/main/java/com/cumulusmc/artofalchemy/block/BlockAnalyzer.java b/src/main/java/dev/cafeteria/artofalchemy/block/BlockAnalyzer.java similarity index 91% rename from src/main/java/com/cumulusmc/artofalchemy/block/BlockAnalyzer.java rename to src/main/java/dev/cafeteria/artofalchemy/block/BlockAnalyzer.java index ee9353f..ef96475 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/block/BlockAnalyzer.java +++ b/src/main/java/dev/cafeteria/artofalchemy/block/BlockAnalyzer.java @@ -1,6 +1,7 @@ -package com.cumulusmc.artofalchemy.block; +package dev.cafeteria.artofalchemy.block; + +import dev.cafeteria.artofalchemy.gui.handler.HandlerAnalyzer; -import com.cumulusmc.artofalchemy.gui.handler.HandlerAnalyzer; import net.fabricmc.fabric.api.screenhandler.v1.ExtendedScreenHandlerFactory; import net.minecraft.block.Block; import net.minecraft.block.BlockState; @@ -30,9 +31,9 @@ public class BlockAnalyzer extends Block implements ExtendedScreenHandlerFactory public static final DirectionProperty FACING = Properties.HORIZONTAL_FACING; public static final Settings SETTINGS = Settings - .of(Material.STONE) - .strength(5.0f, 6.0f) - .nonOpaque(); + .of(Material.STONE) + .strength(5.0f, 6.0f) + .nonOpaque(); public BlockAnalyzer() { super(SETTINGS); @@ -54,7 +55,7 @@ public BlockState getPlacementState(ItemPlacementContext ctx) { @Override public ActionResult onUse(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, - BlockHitResult hit) { + BlockHitResult hit) { if (world.isClient) { return ActionResult.SUCCESS; } diff --git a/src/main/java/com/cumulusmc/artofalchemy/block/BlockAstroCentrifuge.java b/src/main/java/dev/cafeteria/artofalchemy/block/BlockAstroCentrifuge.java similarity index 74% rename from src/main/java/com/cumulusmc/artofalchemy/block/BlockAstroCentrifuge.java rename to src/main/java/dev/cafeteria/artofalchemy/block/BlockAstroCentrifuge.java index 3e823ed..c93a767 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/block/BlockAstroCentrifuge.java +++ b/src/main/java/dev/cafeteria/artofalchemy/block/BlockAstroCentrifuge.java @@ -1,14 +1,13 @@ -package com.cumulusmc.artofalchemy.block; +package dev.cafeteria.artofalchemy.block; + +import dev.cafeteria.artofalchemy.blockentity.AoABlockEntities; +import dev.cafeteria.artofalchemy.blockentity.BlockEntityAstroCentrifuge; -import com.cumulusmc.artofalchemy.blockentity.AoABlockEntities; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityAstroCentrifuge; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityCalcinator; import net.minecraft.block.BlockState; import net.minecraft.block.entity.BlockEntity; import net.minecraft.block.entity.BlockEntityTicker; import net.minecraft.block.entity.BlockEntityType; import net.minecraft.util.math.BlockPos; -import net.minecraft.world.BlockView; import net.minecraft.world.World; public class BlockAstroCentrifuge extends AbstractBlockCentrifuge { diff --git a/src/main/java/com/cumulusmc/artofalchemy/block/BlockCalcinator.java b/src/main/java/dev/cafeteria/artofalchemy/block/BlockCalcinator.java similarity index 81% rename from src/main/java/com/cumulusmc/artofalchemy/block/BlockCalcinator.java rename to src/main/java/dev/cafeteria/artofalchemy/block/BlockCalcinator.java index 60e63f1..8cd2fc6 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/block/BlockCalcinator.java +++ b/src/main/java/dev/cafeteria/artofalchemy/block/BlockCalcinator.java @@ -1,9 +1,13 @@ -package com.cumulusmc.artofalchemy.block; +package dev.cafeteria.artofalchemy.block; -import com.cumulusmc.artofalchemy.blockentity.AoABlockEntities; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityCalcinator; -import net.minecraft.block.*; -import net.minecraft.block.entity.AbstractFurnaceBlockEntity; +import dev.cafeteria.artofalchemy.blockentity.AoABlockEntities; +import dev.cafeteria.artofalchemy.blockentity.BlockEntityCalcinator; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockRenderType; +import net.minecraft.block.BlockState; +import net.minecraft.block.BlockWithEntity; +import net.minecraft.block.Material; import net.minecraft.block.entity.BlockEntity; import net.minecraft.block.entity.BlockEntityTicker; import net.minecraft.block.entity.BlockEntityType; @@ -14,24 +18,27 @@ import net.minecraft.state.property.BooleanProperty; import net.minecraft.state.property.DirectionProperty; import net.minecraft.state.property.Properties; -import net.minecraft.util.*; +import net.minecraft.util.ActionResult; +import net.minecraft.util.BlockMirror; +import net.minecraft.util.BlockRotation; +import net.minecraft.util.Hand; +import net.minecraft.util.Identifier; +import net.minecraft.util.ItemScatterer; import net.minecraft.util.hit.BlockHitResult; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.Direction; import net.minecraft.util.registry.Registry; -import net.minecraft.world.BlockView; import net.minecraft.world.World; -import org.jetbrains.annotations.Nullable; public class BlockCalcinator extends BlockWithEntity { public static final DirectionProperty FACING = Properties.HORIZONTAL_FACING; public static final BooleanProperty LIT = Properties.LIT; public static final Settings SETTINGS = Settings - .of(Material.STONE) - .strength(5.0f, 6.0f) - .luminance((state) -> state.get(LIT) ? 15 : 0) - .nonOpaque(); + .of(Material.STONE) + .strength(5.0f, 6.0f) + .luminance((state) -> state.get(LIT) ? 15 : 0) + .nonOpaque(); public static Identifier getId() { return Registry.BLOCK.getId(AoABlocks.CALCINATOR); @@ -87,10 +94,12 @@ public void onStateReplaced(BlockState state, World world, BlockPos pos, BlockSt } } + @Override public BlockState rotate(BlockState state, BlockRotation rotation) { return state.with(FACING, rotation.rotate(state.get(FACING))); } + @Override public BlockState mirror(BlockState state, BlockMirror mirror) { return state.rotate(mirror.getRotation(state.get(FACING))); } diff --git a/src/main/java/com/cumulusmc/artofalchemy/block/BlockCalcinatorPlus.java b/src/main/java/dev/cafeteria/artofalchemy/block/BlockCalcinatorPlus.java similarity index 73% rename from src/main/java/com/cumulusmc/artofalchemy/block/BlockCalcinatorPlus.java rename to src/main/java/dev/cafeteria/artofalchemy/block/BlockCalcinatorPlus.java index 4bd1356..e22c908 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/block/BlockCalcinatorPlus.java +++ b/src/main/java/dev/cafeteria/artofalchemy/block/BlockCalcinatorPlus.java @@ -1,8 +1,8 @@ -package com.cumulusmc.artofalchemy.block; +package dev.cafeteria.artofalchemy.block; + +import dev.cafeteria.artofalchemy.blockentity.AoABlockEntities; +import dev.cafeteria.artofalchemy.blockentity.BlockEntityCalcinatorPlus; -import com.cumulusmc.artofalchemy.blockentity.AoABlockEntities; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityCalcinator; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityCalcinatorPlus; import net.minecraft.block.BlockState; import net.minecraft.block.Material; import net.minecraft.block.entity.BlockEntity; @@ -12,16 +12,15 @@ import net.minecraft.util.Identifier; import net.minecraft.util.math.BlockPos; import net.minecraft.util.registry.Registry; -import net.minecraft.world.BlockView; import net.minecraft.world.World; public class BlockCalcinatorPlus extends BlockCalcinator { public static final Settings SETTINGS = Settings - .of(Material.METAL).sounds(BlockSoundGroup.METAL) - .strength(5.0f, 6.0f) - .luminance((state) -> state.get(LIT) ? 15 : 0) - .nonOpaque(); + .of(Material.METAL).sounds(BlockSoundGroup.METAL) + .strength(5.0f, 6.0f) + .luminance((state) -> state.get(LIT) ? 15 : 0) + .nonOpaque(); public static Identifier getId() { return Registry.BLOCK.getId(AoABlocks.CALCINATOR_PLUS); diff --git a/src/main/java/com/cumulusmc/artofalchemy/block/BlockDissolver.java b/src/main/java/dev/cafeteria/artofalchemy/block/BlockDissolver.java similarity index 89% rename from src/main/java/com/cumulusmc/artofalchemy/block/BlockDissolver.java rename to src/main/java/dev/cafeteria/artofalchemy/block/BlockDissolver.java index 0548a5f..920b738 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/block/BlockDissolver.java +++ b/src/main/java/dev/cafeteria/artofalchemy/block/BlockDissolver.java @@ -1,10 +1,14 @@ -package com.cumulusmc.artofalchemy.block; +package dev.cafeteria.artofalchemy.block; -import com.cumulusmc.artofalchemy.blockentity.AoABlockEntities; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityCalcinatorPlus; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityDissolver; -import com.cumulusmc.artofalchemy.item.AoAItems; -import net.minecraft.block.*; +import dev.cafeteria.artofalchemy.blockentity.AoABlockEntities; +import dev.cafeteria.artofalchemy.blockentity.BlockEntityDissolver; +import dev.cafeteria.artofalchemy.item.AoAItems; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockRenderType; +import net.minecraft.block.BlockState; +import net.minecraft.block.BlockWithEntity; +import net.minecraft.block.Material; import net.minecraft.block.entity.BlockEntity; import net.minecraft.block.entity.BlockEntityTicker; import net.minecraft.block.entity.BlockEntityType; @@ -26,7 +30,6 @@ import net.minecraft.util.hit.BlockHitResult; import net.minecraft.util.math.BlockPos; import net.minecraft.util.registry.Registry; -import net.minecraft.world.BlockView; import net.minecraft.world.World; public class BlockDissolver extends BlockWithEntity { @@ -34,10 +37,10 @@ public class BlockDissolver extends BlockWithEntity { public static final BooleanProperty FILLED = BooleanProperty.of("filled"); public static final BooleanProperty LIT = Properties.LIT; public static final Settings SETTINGS = Settings - .of(Material.STONE) - .strength(5.0f, 6.0f) - .luminance((state) -> state.get(LIT) ? 15 : 0) - .nonOpaque(); + .of(Material.STONE) + .strength(5.0f, 6.0f) + .luminance((state) -> state.get(LIT) ? 15 : 0) + .nonOpaque(); public static Identifier getId() { return Registry.BLOCK.getId(AoABlocks.DISSOLVER); diff --git a/src/main/java/com/cumulusmc/artofalchemy/block/BlockDissolverPlus.java b/src/main/java/dev/cafeteria/artofalchemy/block/BlockDissolverPlus.java similarity index 74% rename from src/main/java/com/cumulusmc/artofalchemy/block/BlockDissolverPlus.java rename to src/main/java/dev/cafeteria/artofalchemy/block/BlockDissolverPlus.java index bde7958..8411a1a 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/block/BlockDissolverPlus.java +++ b/src/main/java/dev/cafeteria/artofalchemy/block/BlockDissolverPlus.java @@ -1,8 +1,8 @@ -package com.cumulusmc.artofalchemy.block; +package dev.cafeteria.artofalchemy.block; + +import dev.cafeteria.artofalchemy.blockentity.AoABlockEntities; +import dev.cafeteria.artofalchemy.blockentity.BlockEntityDissolverPlus; -import com.cumulusmc.artofalchemy.blockentity.AoABlockEntities; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityDissolver; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityDissolverPlus; import net.minecraft.block.BlockState; import net.minecraft.block.Material; import net.minecraft.block.entity.BlockEntity; @@ -11,16 +11,15 @@ import net.minecraft.util.Identifier; import net.minecraft.util.math.BlockPos; import net.minecraft.util.registry.Registry; -import net.minecraft.world.BlockView; import net.minecraft.world.World; public class BlockDissolverPlus extends BlockDissolver { public static final Settings SETTINGS = Settings - .of(Material.METAL) - .strength(5.0f, 6.0f) - .luminance((state) -> state.get(LIT) ? 15 : 0) - .nonOpaque(); + .of(Material.METAL) + .strength(5.0f, 6.0f) + .luminance((state) -> state.get(LIT) ? 15 : 0) + .nonOpaque(); public static Identifier getId() { return Registry.BLOCK.getId(AoABlocks.DISSOLVER_PLUS); diff --git a/src/main/java/com/cumulusmc/artofalchemy/block/BlockDistiller.java b/src/main/java/dev/cafeteria/artofalchemy/block/BlockDistiller.java similarity index 86% rename from src/main/java/com/cumulusmc/artofalchemy/block/BlockDistiller.java rename to src/main/java/dev/cafeteria/artofalchemy/block/BlockDistiller.java index ae8f8f9..b026925 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/block/BlockDistiller.java +++ b/src/main/java/dev/cafeteria/artofalchemy/block/BlockDistiller.java @@ -1,17 +1,19 @@ -package com.cumulusmc.artofalchemy.block; - -import com.cumulusmc.artofalchemy.blockentity.AoABlockEntities; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityCalcinatorPlus; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityDissolver; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityDistiller; -import com.cumulusmc.artofalchemy.item.AoAItems; -import net.minecraft.block.*; +package dev.cafeteria.artofalchemy.block; + +import dev.cafeteria.artofalchemy.blockentity.AoABlockEntities; +import dev.cafeteria.artofalchemy.blockentity.BlockEntityDistiller; +import dev.cafeteria.artofalchemy.item.AoAItems; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockRenderType; +import net.minecraft.block.BlockState; +import net.minecraft.block.BlockWithEntity; +import net.minecraft.block.Material; import net.minecraft.block.entity.BlockEntity; import net.minecraft.block.entity.BlockEntityTicker; import net.minecraft.block.entity.BlockEntityType; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.inventory.Inventory; -import net.minecraft.item.Item; import net.minecraft.item.ItemPlacementContext; import net.minecraft.item.ItemStack; import net.minecraft.item.ItemUsageContext; @@ -28,17 +30,16 @@ import net.minecraft.util.hit.BlockHitResult; import net.minecraft.util.math.BlockPos; import net.minecraft.util.registry.Registry; -import net.minecraft.world.BlockView; import net.minecraft.world.World; public class BlockDistiller extends BlockWithEntity { public static final BooleanProperty LIT = Properties.LIT; public static final Settings SETTINGS = Settings - .of(Material.STONE) - .strength(5.0f, 6.0f) - .luminance((state) -> state.get(LIT) ? 15 : 0) - .nonOpaque(); + .of(Material.STONE) + .strength(5.0f, 6.0f) + .luminance((state) -> state.get(LIT) ? 15 : 0) + .nonOpaque(); public static Identifier getId() { return Registry.BLOCK.getId(AoABlocks.DISTILLER); @@ -78,13 +79,13 @@ public ActionResult onUse(BlockState state, World world, BlockPos pos, PlayerEnt player.giveItemStack(new ItemStack(AoAItems.ALKAHEST_BUCKET)); } world.playSound( - null, - pos, - SoundEvents.ITEM_BUCKET_FILL, - SoundCategory.BLOCKS, - 1.0F, - 1.0F - ); + null, + pos, + SoundEvents.ITEM_BUCKET_FILL, + SoundCategory.BLOCKS, + 1.0F, + 1.0F + ); return ActionResult.SUCCESS; } else if (inHand.getItem() == AoAItems.ESSENTIA_VESSEL) { ItemUsageContext itemContext = new ItemUsageContext(player, hand, hit); diff --git a/src/main/java/com/cumulusmc/artofalchemy/block/BlockElementCentrifuge.java b/src/main/java/dev/cafeteria/artofalchemy/block/BlockElementCentrifuge.java similarity index 74% rename from src/main/java/com/cumulusmc/artofalchemy/block/BlockElementCentrifuge.java rename to src/main/java/dev/cafeteria/artofalchemy/block/BlockElementCentrifuge.java index ff533b7..7611dcb 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/block/BlockElementCentrifuge.java +++ b/src/main/java/dev/cafeteria/artofalchemy/block/BlockElementCentrifuge.java @@ -1,14 +1,13 @@ -package com.cumulusmc.artofalchemy.block; +package dev.cafeteria.artofalchemy.block; + +import dev.cafeteria.artofalchemy.blockentity.AoABlockEntities; +import dev.cafeteria.artofalchemy.blockentity.BlockEntityElementCentrifuge; -import com.cumulusmc.artofalchemy.blockentity.AoABlockEntities; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityAstroCentrifuge; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityElementCentrifuge; import net.minecraft.block.BlockState; import net.minecraft.block.entity.BlockEntity; import net.minecraft.block.entity.BlockEntityTicker; import net.minecraft.block.entity.BlockEntityType; import net.minecraft.util.math.BlockPos; -import net.minecraft.world.BlockView; import net.minecraft.world.World; public class BlockElementCentrifuge extends AbstractBlockCentrifuge { diff --git a/src/main/java/com/cumulusmc/artofalchemy/block/BlockEssentia.java b/src/main/java/dev/cafeteria/artofalchemy/block/BlockEssentia.java similarity index 80% rename from src/main/java/com/cumulusmc/artofalchemy/block/BlockEssentia.java rename to src/main/java/dev/cafeteria/artofalchemy/block/BlockEssentia.java index 5999399..6a41370 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/block/BlockEssentia.java +++ b/src/main/java/dev/cafeteria/artofalchemy/block/BlockEssentia.java @@ -1,7 +1,10 @@ -package com.cumulusmc.artofalchemy.block; +package dev.cafeteria.artofalchemy.block; + +import java.util.Random; + +import dev.cafeteria.artofalchemy.essentia.Essentia; +import dev.cafeteria.artofalchemy.fluid.AoAFluids; -import com.cumulusmc.artofalchemy.essentia.Essentia; -import com.cumulusmc.artofalchemy.fluid.AoAFluids; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.block.BlockState; @@ -13,12 +16,10 @@ import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; -import java.util.Random; - public class BlockEssentia extends FluidBlock { public static final Settings SETTINGS = Settings.copy(Blocks.WATER) - .luminance((state) -> 9); + .luminance((state) -> 9); protected static Essentia essentia; public BlockEssentia(Essentia essentia) { @@ -32,8 +33,8 @@ public Essentia getEssentia() { @Override public void onEntityCollision(BlockState state, World world, BlockPos pos, Entity entity) { entity.damage(DamageSource.MAGIC, 2); -// world.playSound(entity.getX(), entity.getY(), entity.getZ(), SoundEvents.ENTITY_GENERIC_BURN, -// entity.getSoundCategory(), 1.0F, 1.0F, false); + // world.playSound(entity.getX(), entity.getY(), entity.getZ(), SoundEvents.ENTITY_GENERIC_BURN, + // entity.getSoundCategory(), 1.0F, 1.0F, false); world.addParticle(ParticleTypes.LARGE_SMOKE, entity.getX(), entity.getY(), entity.getZ(), 0.0D, 0.0D, 0.0D); } diff --git a/src/main/java/com/cumulusmc/artofalchemy/block/BlockMateria.java b/src/main/java/dev/cafeteria/artofalchemy/block/BlockMateria.java similarity index 90% rename from src/main/java/com/cumulusmc/artofalchemy/block/BlockMateria.java rename to src/main/java/dev/cafeteria/artofalchemy/block/BlockMateria.java index 57c83c5..692cfcc 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/block/BlockMateria.java +++ b/src/main/java/dev/cafeteria/artofalchemy/block/BlockMateria.java @@ -1,6 +1,7 @@ -package com.cumulusmc.artofalchemy.block; +package dev.cafeteria.artofalchemy.block; + +import dev.cafeteria.artofalchemy.util.MateriaRank; -import com.cumulusmc.artofalchemy.util.MateriaRank; import net.fabricmc.fabric.api.block.FabricBlockSettings; import net.fabricmc.fabric.api.tools.FabricToolTags; import net.minecraft.block.Block; diff --git a/src/main/java/com/cumulusmc/artofalchemy/block/BlockPipe.java b/src/main/java/dev/cafeteria/artofalchemy/block/BlockPipe.java similarity index 81% rename from src/main/java/com/cumulusmc/artofalchemy/block/BlockPipe.java rename to src/main/java/dev/cafeteria/artofalchemy/block/BlockPipe.java index baf028e..798d9a9 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/block/BlockPipe.java +++ b/src/main/java/dev/cafeteria/artofalchemy/block/BlockPipe.java @@ -1,27 +1,32 @@ -package com.cumulusmc.artofalchemy.block; +package dev.cafeteria.artofalchemy.block; + +import java.util.HashSet; +import java.util.Map; +import java.util.Optional; +import java.util.Set; +import java.util.UUID; + +import dev.cafeteria.artofalchemy.ArtOfAlchemy; +import dev.cafeteria.artofalchemy.blockentity.BlockEntityPipe; +import dev.cafeteria.artofalchemy.blockentity.BlockEntityPipe.IOFace; +import dev.cafeteria.artofalchemy.item.AoAItems; +import dev.cafeteria.artofalchemy.item.ItemEssentiaPort; +import dev.cafeteria.artofalchemy.network.AoANetworking; +import dev.cafeteria.artofalchemy.transport.EssentiaNetwork; +import dev.cafeteria.artofalchemy.transport.EssentiaNetworker; +import dev.cafeteria.artofalchemy.transport.NetworkElement; +import dev.cafeteria.artofalchemy.transport.NetworkNode; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.blockentity.AoABlockEntities; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityAstroCentrifuge; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityPipe; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityPipe.IOFace; -import com.cumulusmc.artofalchemy.item.AoAItems; -import com.cumulusmc.artofalchemy.item.ItemEssentiaPort; -import com.cumulusmc.artofalchemy.network.AoANetworking; -import com.cumulusmc.artofalchemy.transport.EssentiaNetwork; -import com.cumulusmc.artofalchemy.transport.EssentiaNetworker; -import com.cumulusmc.artofalchemy.transport.NetworkElement; -import com.cumulusmc.artofalchemy.transport.NetworkNode; import net.fabricmc.fabric.api.tag.TagRegistry; -import net.minecraft.block.*; +import net.minecraft.block.Block; +import net.minecraft.block.BlockEntityProvider; +import net.minecraft.block.BlockState; +import net.minecraft.block.Material; +import net.minecraft.block.ShapeContext; import net.minecraft.block.entity.BlockEntity; -import net.minecraft.block.entity.BlockEntityTicker; -import net.minecraft.block.entity.BlockEntityType; import net.minecraft.client.MinecraftClient; -import net.minecraft.client.render.WorldRenderer; import net.minecraft.entity.LivingEntity; import net.minecraft.entity.player.PlayerEntity; -import net.minecraft.item.ItemPlacementContext; import net.minecraft.item.ItemStack; import net.minecraft.server.world.ServerWorld; import net.minecraft.sound.BlockSoundGroup; @@ -37,9 +42,6 @@ import net.minecraft.util.shape.VoxelShapes; import net.minecraft.world.BlockView; import net.minecraft.world.World; -import net.minecraft.world.WorldAccess; - -import java.util.*; public class BlockPipe extends Block implements NetworkElement, BlockEntityProvider { @@ -92,7 +94,8 @@ private void setFace(World world, BlockPos pos, Direction dir, IOFace face) { public static void scheduleChunkRebuild(World world, BlockPos pos) { if (world.isClient()) { - MinecraftClient.getInstance().worldRenderer.updateBlock(world, pos, null, null, 0); + MinecraftClient client = MinecraftClient.getInstance(); + client.worldRenderer.updateBlock(world, pos, null, null, 0); } } @@ -279,37 +282,37 @@ public ActionResult onUse(BlockState state, World world, BlockPos pos, PlayerEnt Set oldConnections = getConnections(world, pos); IOFace face = getFace(world, pos, dir); switch (face) { - case NONE: - case CONNECT: - world.playSound(null, pos, SoundEvents.BLOCK_NETHERITE_BLOCK_FALL, SoundCategory.BLOCKS, 0.6f, 1.0f); - if (heldStack.getItem() instanceof ItemEssentiaPort) { - setFace(world, pos, dir, ((ItemEssentiaPort) heldStack.getItem()).IOFACE); - if (!player.getAbilities().creativeMode) { - heldStack.decrement(1); - } - } else { - setFace(world, pos, dir, IOFace.BLOCK); - } - closeFace(world, pos.offset(dir), dir.getOpposite()); - scheduleChunkRebuild(world, pos); - break; - case BLOCK: - case INSERTER: - case EXTRACTOR: - case PASSIVE: - world.playSound(null, pos, SoundEvents.BLOCK_NETHERITE_BLOCK_HIT, SoundCategory.BLOCKS, 0.6f, 1.0f); + case NONE: + case CONNECT: + world.playSound(null, pos, SoundEvents.BLOCK_NETHERITE_BLOCK_FALL, SoundCategory.BLOCKS, 0.6f, 1.0f); + if (heldStack.getItem() instanceof ItemEssentiaPort) { + setFace(world, pos, dir, ((ItemEssentiaPort) heldStack.getItem()).IOFACE); if (!player.getAbilities().creativeMode) { - ItemStack stack = new ItemStack(ItemEssentiaPort.getItem(face)); - dropStack(world, pos, stack); - } - if (faceOpen(world, pos.offset(dir), dir.getOpposite())) { - setFace(world, pos, dir, IOFace.CONNECT); - } else { - setFace(world, pos, dir, IOFace.NONE); + heldStack.decrement(1); } - connectFace(world, pos.offset(dir), dir.getOpposite()); - scheduleChunkRebuild(world, pos); - break; + } else { + setFace(world, pos, dir, IOFace.BLOCK); + } + closeFace(world, pos.offset(dir), dir.getOpposite()); + scheduleChunkRebuild(world, pos); + break; + case BLOCK: + case INSERTER: + case EXTRACTOR: + case PASSIVE: + world.playSound(null, pos, SoundEvents.BLOCK_NETHERITE_BLOCK_HIT, SoundCategory.BLOCKS, 0.6f, 1.0f); + if (!player.getAbilities().creativeMode) { + ItemStack stack = new ItemStack(ItemEssentiaPort.getItem(face)); + dropStack(world, pos, stack); + } + if (faceOpen(world, pos.offset(dir), dir.getOpposite())) { + setFace(world, pos, dir, IOFace.CONNECT); + } else { + setFace(world, pos, dir, IOFace.NONE); + } + connectFace(world, pos.offset(dir), dir.getOpposite()); + scheduleChunkRebuild(world, pos); + break; } if (!world.isClient()) { EssentiaNetworker networker = EssentiaNetworker.get((ServerWorld) world); diff --git a/src/main/java/com/cumulusmc/artofalchemy/block/BlockProjector.java b/src/main/java/dev/cafeteria/artofalchemy/block/BlockProjector.java similarity index 87% rename from src/main/java/com/cumulusmc/artofalchemy/block/BlockProjector.java rename to src/main/java/dev/cafeteria/artofalchemy/block/BlockProjector.java index aae143d..5e6f2f3 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/block/BlockProjector.java +++ b/src/main/java/dev/cafeteria/artofalchemy/block/BlockProjector.java @@ -1,9 +1,14 @@ -package com.cumulusmc.artofalchemy.block; +package dev.cafeteria.artofalchemy.block; -import com.cumulusmc.artofalchemy.blockentity.AoABlockEntities; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityProjector; -import com.cumulusmc.artofalchemy.item.AoAItems; -import net.minecraft.block.*; +import dev.cafeteria.artofalchemy.blockentity.AoABlockEntities; +import dev.cafeteria.artofalchemy.blockentity.BlockEntityProjector; +import dev.cafeteria.artofalchemy.item.AoAItems; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockRenderType; +import net.minecraft.block.BlockState; +import net.minecraft.block.BlockWithEntity; +import net.minecraft.block.Material; import net.minecraft.block.entity.BlockEntity; import net.minecraft.block.entity.BlockEntityTicker; import net.minecraft.block.entity.BlockEntityType; @@ -25,17 +30,16 @@ import net.minecraft.util.hit.BlockHitResult; import net.minecraft.util.math.BlockPos; import net.minecraft.util.registry.Registry; -import net.minecraft.world.BlockView; import net.minecraft.world.World; public class BlockProjector extends BlockWithEntity { public static final BooleanProperty LIT = Properties.LIT; public static final Settings SETTINGS = Settings - .of(Material.METAL).sounds(BlockSoundGroup.METAL) - .strength(5.0f, 6.0f) - .luminance((state) -> state.get(LIT) ? 15 : 0) - .nonOpaque(); + .of(Material.METAL).sounds(BlockSoundGroup.METAL) + .strength(5.0f, 6.0f) + .luminance((state) -> state.get(LIT) ? 15 : 0) + .nonOpaque(); public static Identifier getId() { return Registry.BLOCK.getId(AoABlocks.PROJECTOR); diff --git a/src/main/java/com/cumulusmc/artofalchemy/block/BlockSynthesizer.java b/src/main/java/dev/cafeteria/artofalchemy/block/BlockSynthesizer.java similarity index 86% rename from src/main/java/com/cumulusmc/artofalchemy/block/BlockSynthesizer.java rename to src/main/java/dev/cafeteria/artofalchemy/block/BlockSynthesizer.java index 28b7a05..fd63cd1 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/block/BlockSynthesizer.java +++ b/src/main/java/dev/cafeteria/artofalchemy/block/BlockSynthesizer.java @@ -1,11 +1,15 @@ -package com.cumulusmc.artofalchemy.block; - -import com.cumulusmc.artofalchemy.blockentity.AoABlockEntities; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityDissolver; -import com.cumulusmc.artofalchemy.blockentity.BlockEntitySynthesizer; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.item.AoAItems; -import net.minecraft.block.*; +package dev.cafeteria.artofalchemy.block; + +import dev.cafeteria.artofalchemy.blockentity.AoABlockEntities; +import dev.cafeteria.artofalchemy.blockentity.BlockEntitySynthesizer; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; +import dev.cafeteria.artofalchemy.item.AoAItems; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockRenderType; +import net.minecraft.block.BlockState; +import net.minecraft.block.BlockWithEntity; +import net.minecraft.block.Material; import net.minecraft.block.entity.BlockEntity; import net.minecraft.block.entity.BlockEntityTicker; import net.minecraft.block.entity.BlockEntityType; @@ -24,17 +28,16 @@ import net.minecraft.util.hit.BlockHitResult; import net.minecraft.util.math.BlockPos; import net.minecraft.util.registry.Registry; -import net.minecraft.world.BlockView; import net.minecraft.world.World; public class BlockSynthesizer extends BlockWithEntity { public static final BooleanProperty LIT = Properties.LIT; public static final Settings SETTINGS = Settings - .of(Material.STONE) - .strength(5.0f, 6.0f) - .luminance((state) -> state.get(LIT) ? 15 : 0) - .nonOpaque(); + .of(Material.STONE) + .strength(5.0f, 6.0f) + .luminance((state) -> state.get(LIT) ? 15 : 0) + .nonOpaque(); public static Identifier getId() { return Registry.BLOCK.getId(AoABlocks.SYNTHESIZER); diff --git a/src/main/java/com/cumulusmc/artofalchemy/block/BlockSynthesizerPlus.java b/src/main/java/dev/cafeteria/artofalchemy/block/BlockSynthesizerPlus.java similarity index 74% rename from src/main/java/com/cumulusmc/artofalchemy/block/BlockSynthesizerPlus.java rename to src/main/java/dev/cafeteria/artofalchemy/block/BlockSynthesizerPlus.java index d9c5c66..abf0e3e 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/block/BlockSynthesizerPlus.java +++ b/src/main/java/dev/cafeteria/artofalchemy/block/BlockSynthesizerPlus.java @@ -1,8 +1,8 @@ -package com.cumulusmc.artofalchemy.block; +package dev.cafeteria.artofalchemy.block; + +import dev.cafeteria.artofalchemy.blockentity.AoABlockEntities; +import dev.cafeteria.artofalchemy.blockentity.BlockEntitySynthesizerPlus; -import com.cumulusmc.artofalchemy.blockentity.AoABlockEntities; -import com.cumulusmc.artofalchemy.blockentity.BlockEntitySynthesizer; -import com.cumulusmc.artofalchemy.blockentity.BlockEntitySynthesizerPlus; import net.minecraft.block.BlockState; import net.minecraft.block.Material; import net.minecraft.block.entity.BlockEntity; @@ -11,16 +11,15 @@ import net.minecraft.util.Identifier; import net.minecraft.util.math.BlockPos; import net.minecraft.util.registry.Registry; -import net.minecraft.world.BlockView; import net.minecraft.world.World; public class BlockSynthesizerPlus extends BlockSynthesizer { public static final Settings SETTINGS = Settings - .of(Material.METAL) - .strength(5.0f, 6.0f) - .luminance((state) -> state.get(LIT) ? 15 : 0) - .nonOpaque(); + .of(Material.METAL) + .strength(5.0f, 6.0f) + .luminance((state) -> state.get(LIT) ? 15 : 0) + .nonOpaque(); public static Identifier getId() { return Registry.BLOCK.getId(AoABlocks.SYNTHESIZER_PLUS); diff --git a/src/main/java/com/cumulusmc/artofalchemy/block/BlockTank.java b/src/main/java/dev/cafeteria/artofalchemy/block/BlockTank.java similarity index 90% rename from src/main/java/com/cumulusmc/artofalchemy/block/BlockTank.java rename to src/main/java/dev/cafeteria/artofalchemy/block/BlockTank.java index 5dc261e..3069aa8 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/block/BlockTank.java +++ b/src/main/java/dev/cafeteria/artofalchemy/block/BlockTank.java @@ -1,9 +1,9 @@ -package com.cumulusmc.artofalchemy.block; +package dev.cafeteria.artofalchemy.block; + +import dev.cafeteria.artofalchemy.blockentity.AoABlockEntities; +import dev.cafeteria.artofalchemy.blockentity.BlockEntityTank; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.blockentity.AoABlockEntities; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityElementCentrifuge; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityTank; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; import net.minecraft.block.Block; import net.minecraft.block.BlockEntityProvider; import net.minecraft.block.BlockState; @@ -17,7 +17,6 @@ import net.minecraft.state.property.BooleanProperty; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.Direction; -import net.minecraft.world.BlockView; import net.minecraft.world.World; import net.minecraft.world.WorldAccess; diff --git a/src/main/java/com/cumulusmc/artofalchemy/blockentity/AbstractBlockEntityCentrifuge.java b/src/main/java/dev/cafeteria/artofalchemy/blockentity/AbstractBlockEntityCentrifuge.java similarity index 89% rename from src/main/java/com/cumulusmc/artofalchemy/blockentity/AbstractBlockEntityCentrifuge.java rename to src/main/java/dev/cafeteria/artofalchemy/blockentity/AbstractBlockEntityCentrifuge.java index de21c34..4898dda 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/blockentity/AbstractBlockEntityCentrifuge.java +++ b/src/main/java/dev/cafeteria/artofalchemy/blockentity/AbstractBlockEntityCentrifuge.java @@ -1,9 +1,14 @@ -package com.cumulusmc.artofalchemy.blockentity; +package dev.cafeteria.artofalchemy.blockentity; + +import java.util.Arrays; +import java.util.HashSet; +import java.util.Set; + +import dev.cafeteria.artofalchemy.AoAConfig; +import dev.cafeteria.artofalchemy.essentia.Essentia; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; +import dev.cafeteria.artofalchemy.transport.HasEssentia; -import com.cumulusmc.artofalchemy.AoAConfig; -import com.cumulusmc.artofalchemy.essentia.Essentia; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.transport.HasEssentia; import net.minecraft.block.BlockState; import net.minecraft.block.entity.BlockEntity; import net.minecraft.block.entity.BlockEntityTicker; @@ -14,10 +19,6 @@ import net.minecraft.util.math.Direction; import net.minecraft.world.World; -import java.util.Arrays; -import java.util.HashSet; -import java.util.Set; - abstract public class AbstractBlockEntityCentrifuge extends BlockEntity implements HasEssentia, BlockEntityTicker { public static final DirectionProperty FACING = Properties.HORIZONTAL_FACING; diff --git a/src/main/java/com/cumulusmc/artofalchemy/blockentity/AoABlockEntities.java b/src/main/java/dev/cafeteria/artofalchemy/blockentity/AoABlockEntities.java similarity index 93% rename from src/main/java/com/cumulusmc/artofalchemy/blockentity/AoABlockEntities.java rename to src/main/java/dev/cafeteria/artofalchemy/blockentity/AoABlockEntities.java index ce4c1d8..4ddecc3 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/blockentity/AoABlockEntities.java +++ b/src/main/java/dev/cafeteria/artofalchemy/blockentity/AoABlockEntities.java @@ -1,7 +1,8 @@ -package com.cumulusmc.artofalchemy.blockentity; +package dev.cafeteria.artofalchemy.blockentity; + +import dev.cafeteria.artofalchemy.ArtOfAlchemy; +import dev.cafeteria.artofalchemy.block.AoABlocks; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.block.AoABlocks; import net.fabricmc.fabric.api.object.builder.v1.block.entity.FabricBlockEntityTypeBuilder; import net.minecraft.block.entity.BlockEntity; import net.minecraft.block.entity.BlockEntityType; @@ -27,7 +28,7 @@ public static void registerBlockEntities() { register("calcination_furnace_plus", CALCINATOR_PLUS); register("dissolution_chamber", DISSOLVER); register("dissolution_chamber_plus", DISSOLVER_PLUS); - register("distillation_aparatus", DISTILLER); + register("distillation_apparatus", DISTILLER); register("synthesis_table", SYNTHESIZER); register("synthesis_table_plus", SYNTHESIZER_PLUS); register("projector", PROJECTOR); diff --git a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityAstroCentrifuge.java b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityAstroCentrifuge.java similarity index 79% rename from src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityAstroCentrifuge.java rename to src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityAstroCentrifuge.java index f6edc1e..3ff0515 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityAstroCentrifuge.java +++ b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityAstroCentrifuge.java @@ -1,7 +1,8 @@ -package com.cumulusmc.artofalchemy.blockentity; +package dev.cafeteria.artofalchemy.blockentity; + +import dev.cafeteria.artofalchemy.essentia.AoAEssentia; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.essentia.AoAEssentia; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; import net.minecraft.block.BlockState; import net.minecraft.util.math.BlockPos; diff --git a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityCalcinator.java b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityCalcinator.java similarity index 91% rename from src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityCalcinator.java rename to src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityCalcinator.java index c77e54b..9acab7e 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityCalcinator.java +++ b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityCalcinator.java @@ -1,15 +1,16 @@ -package com.cumulusmc.artofalchemy.blockentity; +package dev.cafeteria.artofalchemy.blockentity; + +import dev.cafeteria.artofalchemy.AoAConfig; +import dev.cafeteria.artofalchemy.ArtOfAlchemy; +import dev.cafeteria.artofalchemy.block.BlockCalcinator; +import dev.cafeteria.artofalchemy.gui.handler.HandlerCalcinator; +import dev.cafeteria.artofalchemy.recipe.AoARecipes; +import dev.cafeteria.artofalchemy.recipe.RecipeCalcination; +import dev.cafeteria.artofalchemy.util.AoAHelper; +import dev.cafeteria.artofalchemy.util.FuelHelper; +import dev.cafeteria.artofalchemy.util.ImplementedInventory; import io.github.cottonmc.cotton.gui.PropertyDelegateHolder; -import com.cumulusmc.artofalchemy.AoAConfig; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.block.BlockCalcinator; -import com.cumulusmc.artofalchemy.gui.handler.HandlerCalcinator; -import com.cumulusmc.artofalchemy.recipe.AoARecipes; -import com.cumulusmc.artofalchemy.recipe.RecipeCalcination; -import com.cumulusmc.artofalchemy.util.AoAHelper; -import com.cumulusmc.artofalchemy.util.FuelHelper; -import com.cumulusmc.artofalchemy.util.ImplementedInventory; import net.fabricmc.fabric.api.block.entity.BlockEntityClientSerializable; import net.fabricmc.fabric.api.screenhandler.v1.ExtendedScreenHandlerFactory; import net.fabricmc.fabric.api.tag.TagRegistry; @@ -37,7 +38,7 @@ import net.minecraft.world.World; public class BlockEntityCalcinator extends BlockEntity implements ImplementedInventory, BlockEntityTicker, - PropertyDelegateHolder, BlockEntityClientSerializable, SidedInventory, ExtendedScreenHandlerFactory { +PropertyDelegateHolder, BlockEntityClientSerializable, SidedInventory, ExtendedScreenHandlerFactory { protected static final int[] TOP_SLOTS = new int[]{0}; protected static final int[] BOTTOM_SLOTS = new int[]{0, 2}; @@ -101,7 +102,7 @@ public BlockEntityCalcinator(BlockPos pos, BlockState state) { maxProgress = getOperationTime(); } - protected BlockEntityCalcinator(BlockEntityType type, BlockPos pos, BlockState state) { + protected BlockEntityCalcinator(BlockEntityType type, BlockPos pos, BlockState state) { super(type, pos, state); } @@ -141,7 +142,7 @@ private boolean canCraft(RecipeCalcination recipe) { int count = (int) Math.ceil(factor * outStack.getCount()); if (container != ItemStack.EMPTY && inSlot.getCount() != container.getCount()) { - return false; + return false; } if (outSlot.isEmpty()) { diff --git a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityCalcinatorPlus.java b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityCalcinatorPlus.java similarity index 87% rename from src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityCalcinatorPlus.java rename to src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityCalcinatorPlus.java index cd934a2..fcfb64d 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityCalcinatorPlus.java +++ b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityCalcinatorPlus.java @@ -1,6 +1,7 @@ -package com.cumulusmc.artofalchemy.blockentity; +package dev.cafeteria.artofalchemy.blockentity; + +import dev.cafeteria.artofalchemy.AoAConfig; -import com.cumulusmc.artofalchemy.AoAConfig; import net.minecraft.block.BlockState; import net.minecraft.util.math.BlockPos; diff --git a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityDissolver.java b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityDissolver.java similarity index 90% rename from src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityDissolver.java rename to src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityDissolver.java index 1a6bcae..6ef2b49 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityDissolver.java +++ b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityDissolver.java @@ -1,18 +1,19 @@ -package com.cumulusmc.artofalchemy.blockentity; +package dev.cafeteria.artofalchemy.blockentity; + +import dev.cafeteria.artofalchemy.AoAConfig; +import dev.cafeteria.artofalchemy.ArtOfAlchemy; +import dev.cafeteria.artofalchemy.block.BlockDissolver; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; +import dev.cafeteria.artofalchemy.essentia.EssentiaStack; +import dev.cafeteria.artofalchemy.gui.handler.HandlerDissolver; +import dev.cafeteria.artofalchemy.network.AoANetworking; +import dev.cafeteria.artofalchemy.recipe.AoARecipes; +import dev.cafeteria.artofalchemy.recipe.RecipeDissolution; +import dev.cafeteria.artofalchemy.transport.HasAlkahest; +import dev.cafeteria.artofalchemy.transport.HasEssentia; +import dev.cafeteria.artofalchemy.util.ImplementedInventory; import io.github.cottonmc.cotton.gui.PropertyDelegateHolder; -import com.cumulusmc.artofalchemy.AoAConfig; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.block.BlockDissolver; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.essentia.EssentiaStack; -import com.cumulusmc.artofalchemy.gui.handler.HandlerDissolver; -import com.cumulusmc.artofalchemy.network.AoANetworking; -import com.cumulusmc.artofalchemy.recipe.AoARecipes; -import com.cumulusmc.artofalchemy.recipe.RecipeDissolution; -import com.cumulusmc.artofalchemy.transport.HasAlkahest; -import com.cumulusmc.artofalchemy.transport.HasEssentia; -import com.cumulusmc.artofalchemy.util.ImplementedInventory; import net.fabricmc.fabric.api.block.entity.BlockEntityClientSerializable; import net.fabricmc.fabric.api.screenhandler.v1.ExtendedScreenHandlerFactory; import net.fabricmc.fabric.api.tag.TagRegistry; @@ -39,7 +40,7 @@ import net.minecraft.world.World; public class BlockEntityDissolver extends BlockEntity implements ImplementedInventory, BlockEntityTicker, PropertyDelegateHolder, - BlockEntityClientSerializable, HasEssentia, HasAlkahest, SidedInventory, ExtendedScreenHandlerFactory { +BlockEntityClientSerializable, HasEssentia, HasAlkahest, SidedInventory, ExtendedScreenHandlerFactory { private static final int[] TOP_SLOTS = new int[]{0}; private static final int[] BOTTOM_SLOTS = new int[]{0}; @@ -121,7 +122,7 @@ public BlockEntityDissolver(BlockPos pos, BlockState state) { .setOutput(true); } - protected BlockEntityDissolver(BlockEntityType type, BlockPos pos, BlockState state) { + protected BlockEntityDissolver(BlockEntityType type, BlockPos pos, BlockState state) { super(type, pos, state); } @@ -199,7 +200,7 @@ private boolean canCraft(RecipeDissolution recipe) { } if (container != ItemStack.EMPTY && inSlot.getCount() != container.getCount()) { - return updateStatus(1); + return updateStatus(1); } float factor = getEfficiency() * recipe.getFactor(); @@ -301,6 +302,7 @@ public void tick(World world, BlockPos pos, BlockState state, BlockEntityDissolv lit = true; } progress++; + dirty = true; } if (progress >= maxProgress) { progress -= maxProgress; @@ -316,10 +318,12 @@ public void tick(World world, BlockPos pos, BlockState state, BlockEntityDissolv if (!canWork) { if (progress != 0) { progress = 0; + dirty = true; } if (lit) { lit = false; world.setBlockState(pos, world.getBlockState(pos).with(BlockDissolver.LIT, false)); + dirty = true; } } } diff --git a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityDissolverPlus.java b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityDissolverPlus.java similarity index 84% rename from src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityDissolverPlus.java rename to src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityDissolverPlus.java index 201ddd2..cacdba3 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityDissolverPlus.java +++ b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityDissolverPlus.java @@ -1,7 +1,8 @@ -package com.cumulusmc.artofalchemy.blockentity; +package dev.cafeteria.artofalchemy.blockentity; + +import dev.cafeteria.artofalchemy.AoAConfig; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.AoAConfig; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; import net.minecraft.block.BlockState; import net.minecraft.util.math.BlockPos; diff --git a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityDistiller.java b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityDistiller.java similarity index 88% rename from src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityDistiller.java rename to src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityDistiller.java index a113040..23b8f1d 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityDistiller.java +++ b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityDistiller.java @@ -1,16 +1,17 @@ -package com.cumulusmc.artofalchemy.blockentity; +package dev.cafeteria.artofalchemy.blockentity; + +import dev.cafeteria.artofalchemy.AoAConfig; +import dev.cafeteria.artofalchemy.ArtOfAlchemy; +import dev.cafeteria.artofalchemy.block.BlockDissolver; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; +import dev.cafeteria.artofalchemy.gui.handler.HandlerDistiller; +import dev.cafeteria.artofalchemy.item.AoAItems; +import dev.cafeteria.artofalchemy.transport.HasAlkahest; +import dev.cafeteria.artofalchemy.transport.HasEssentia; +import dev.cafeteria.artofalchemy.util.FuelHelper; +import dev.cafeteria.artofalchemy.util.ImplementedInventory; import io.github.cottonmc.cotton.gui.PropertyDelegateHolder; -import com.cumulusmc.artofalchemy.AoAConfig; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.block.BlockDissolver; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.gui.handler.HandlerDistiller; -import com.cumulusmc.artofalchemy.item.AoAItems; -import com.cumulusmc.artofalchemy.transport.HasAlkahest; -import com.cumulusmc.artofalchemy.transport.HasEssentia; -import com.cumulusmc.artofalchemy.util.ImplementedInventory; -import com.cumulusmc.artofalchemy.util.FuelHelper; import net.fabricmc.fabric.api.block.entity.BlockEntityClientSerializable; import net.fabricmc.fabric.api.screenhandler.v1.ExtendedScreenHandlerFactory; import net.fabricmc.fabric.api.tag.TagRegistry; @@ -21,11 +22,8 @@ import net.minecraft.entity.player.PlayerEntity; import net.minecraft.entity.player.PlayerInventory; import net.minecraft.inventory.Inventories; -import net.minecraft.inventory.Inventory; import net.minecraft.inventory.SidedInventory; -import net.minecraft.inventory.SimpleInventory; import net.minecraft.item.ItemStack; -import net.minecraft.item.Items; import net.minecraft.nbt.NbtCompound; import net.minecraft.network.PacketByteBuf; import net.minecraft.screen.PropertyDelegate; @@ -40,12 +38,12 @@ import net.minecraft.world.World; public class BlockEntityDistiller extends BlockEntity implements ImplementedInventory, BlockEntityTicker, PropertyDelegateHolder, - BlockEntityClientSerializable, HasEssentia, HasAlkahest, SidedInventory, ExtendedScreenHandlerFactory { +BlockEntityClientSerializable, HasEssentia, HasAlkahest, SidedInventory, ExtendedScreenHandlerFactory { private static final int[] TOP_SLOTS = new int[]{0}; private static final int[] BOTTOM_SLOTS = new int[]{0}; private static final int[] SIDE_SLOTS = new int[]{0}; - + // Constant TODO: Allow config private static final int TANK_MAX = 16000; private static final int PROGRESS_MAX = 100; @@ -54,18 +52,18 @@ public class BlockEntityDistiller extends BlockEntity implements ImplementedInve private static final int DISTILL_AZOTH_COST = 1; private static final int SLOT_AZOTH = 0; private static final int SLOT_FUEL = 1; - + // Settable private int tankSize; private float speedMod; private float yield; - - + + protected int progress = 0; protected int fuel = 0; private int essentia = 0; private int alkahest = 0; - + private boolean lit = false; protected final DefaultedList items = DefaultedList.ofSize(2, ItemStack.EMPTY); @@ -110,11 +108,11 @@ public BlockEntityDistiller(BlockPos pos, BlockState state) { tankSize = TANK_MAX; //settings.tankBasic; speedMod = settings.speedBasic; this.yield = settings.yieldBasic; - + essentiaInput = new EssentiaContainer() - .setCapacity(tankSize - essentia) - .setInput(true) - .setOutput(false); + .setCapacity(tankSize - essentia) + .setInput(true) + .setOutput(false); } protected BlockEntityDistiller(BlockEntityType type, BlockPos pos, BlockState state) { @@ -190,12 +188,12 @@ public DefaultedList getItems() { @Override public boolean isValid(int slot, ItemStack stack) { switch (slot) { - case 0: - return stack.isOf(AoAItems.AZOTH); - case 1: - return FuelHelper.isFuel(stack); - default: - return false; + case 0: + return stack.isOf(AoAItems.AZOTH); + case 1: + return FuelHelper.isFuel(stack); + default: + return false; } } @@ -204,10 +202,10 @@ public boolean isValid(int slot, ItemStack stack) { public void tick(World world, BlockPos pos, BlockState state, BlockEntityDistiller blockEntity) { if (!world.isClient()) { tryConvertEssentia(); - if (fuel > 0) fuel -= 2; if (hasFuel() && hasInput() && !isFull()) { + if (fuel > 0) fuel -= 2; // KG: Maybe this should replicate furnaces (don't burn new but do lose energy when nothing to do) if (!lit) setLit(true); - + if (++progress >= PROGRESS_MAX) { progress = 0; distill(); @@ -240,7 +238,7 @@ private void distill() { // Else: Throw? alkahest += DISTILL_GAIN; } - + private boolean isFull() { return this.alkahest > (this.tankSize - DISTILL_GAIN); } @@ -254,7 +252,7 @@ private boolean hasAzoth() { ItemStack azothSlot = items.get(SLOT_AZOTH); return azothSlot.getItem().equals(AoAItems.AZOTH) && azothSlot.getCount() >= DISTILL_AZOTH_COST; } - + private boolean hasFuel() { if (this.fuel <= 0) { ItemStack fuelSlot = items.get(SLOT_FUEL); @@ -282,7 +280,7 @@ public void markDirty() { @Override public void sync() { - //AoANetworking.sendEssentiaPacket(world, pos, 0, essentiaInput); + //AoANetworking.sendEssentiaPacket(world, pos, 0, essentiaInput); // KG: Is this needed? BlockEntityClientSerializable.super.sync(); } @@ -320,7 +318,7 @@ public boolean canExtract(int slot, ItemStack stack, Direction dir) { return true; } } - + public int getTankSize() { return tankSize; } diff --git a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityElementCentrifuge.java b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityElementCentrifuge.java similarity index 79% rename from src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityElementCentrifuge.java rename to src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityElementCentrifuge.java index 0e3b548..d38624f 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityElementCentrifuge.java +++ b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityElementCentrifuge.java @@ -1,7 +1,8 @@ -package com.cumulusmc.artofalchemy.blockentity; +package dev.cafeteria.artofalchemy.blockentity; + +import dev.cafeteria.artofalchemy.essentia.AoAEssentia; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.essentia.AoAEssentia; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; import net.minecraft.block.BlockState; import net.minecraft.util.math.BlockPos; diff --git a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityPipe.java b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityPipe.java similarity index 96% rename from src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityPipe.java rename to src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityPipe.java index 85e73f4..d512031 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityPipe.java +++ b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityPipe.java @@ -1,6 +1,10 @@ -package com.cumulusmc.artofalchemy.blockentity; +package dev.cafeteria.artofalchemy.blockentity; + +import java.util.HashMap; +import java.util.Map; + +import dev.cafeteria.artofalchemy.transport.NetworkNode; -import com.cumulusmc.artofalchemy.transport.NetworkNode; import net.fabricmc.fabric.api.block.entity.BlockEntityClientSerializable; import net.fabricmc.fabric.api.rendering.data.v1.RenderAttachedBlockView; import net.fabricmc.fabric.api.rendering.data.v1.RenderAttachmentBlockEntity; @@ -12,9 +16,6 @@ import net.minecraft.util.math.Direction; import net.minecraft.world.BlockRenderView; -import java.util.HashMap; -import java.util.Map; - public class BlockEntityPipe extends BlockEntity implements BlockEntityClientSerializable, RenderAttachmentBlockEntity { private Map faces = new HashMap<>(); @@ -58,6 +59,7 @@ public void setFace(Direction dir, IOFace face) { faces.put(dir, face); } + @Override public void fromClientTag(NbtCompound tag) { readNbt(tag); } diff --git a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityProjector.java b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityProjector.java similarity index 91% rename from src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityProjector.java rename to src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityProjector.java index 79e934e..237d821 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityProjector.java +++ b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityProjector.java @@ -1,13 +1,14 @@ -package com.cumulusmc.artofalchemy.blockentity; +package dev.cafeteria.artofalchemy.blockentity; + +import dev.cafeteria.artofalchemy.AoAConfig; +import dev.cafeteria.artofalchemy.block.BlockDissolver; +import dev.cafeteria.artofalchemy.gui.handler.HandlerProjector; +import dev.cafeteria.artofalchemy.recipe.AoARecipes; +import dev.cafeteria.artofalchemy.recipe.RecipeProjection; +import dev.cafeteria.artofalchemy.transport.HasAlkahest; +import dev.cafeteria.artofalchemy.util.ImplementedInventory; import io.github.cottonmc.cotton.gui.PropertyDelegateHolder; -import com.cumulusmc.artofalchemy.AoAConfig; -import com.cumulusmc.artofalchemy.block.BlockDissolver; -import com.cumulusmc.artofalchemy.gui.handler.HandlerProjector; -import com.cumulusmc.artofalchemy.recipe.AoARecipes; -import com.cumulusmc.artofalchemy.recipe.RecipeProjection; -import com.cumulusmc.artofalchemy.transport.HasAlkahest; -import com.cumulusmc.artofalchemy.util.ImplementedInventory; import net.fabricmc.fabric.api.block.entity.BlockEntityClientSerializable; import net.fabricmc.fabric.api.screenhandler.v1.ExtendedScreenHandlerFactory; import net.minecraft.block.BlockState; @@ -33,7 +34,7 @@ import net.minecraft.world.World; public class BlockEntityProjector extends BlockEntity implements ImplementedInventory, BlockEntityTicker, - PropertyDelegateHolder, BlockEntityClientSerializable, HasAlkahest, SidedInventory, ExtendedScreenHandlerFactory { +PropertyDelegateHolder, BlockEntityClientSerializable, HasAlkahest, SidedInventory, ExtendedScreenHandlerFactory { private static final int[] TOP_SLOTS = new int[]{0}; private static final int[] BOTTOM_SLOTS = new int[]{1}; @@ -99,7 +100,7 @@ public BlockEntityProjector(BlockPos pos, BlockState state) { maxAlkahest = getTankSize(); } - protected BlockEntityProjector(BlockEntityType type, BlockPos pos, BlockState state) { + protected BlockEntityProjector(BlockEntityType type, BlockPos pos, BlockState state) { super(type, pos, state); } diff --git a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntitySynthesizer.java b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntitySynthesizer.java similarity index 89% rename from src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntitySynthesizer.java rename to src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntitySynthesizer.java index c994f44..f009c68 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntitySynthesizer.java +++ b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntitySynthesizer.java @@ -1,19 +1,19 @@ -package com.cumulusmc.artofalchemy.blockentity; +package dev.cafeteria.artofalchemy.blockentity; + +import dev.cafeteria.artofalchemy.AoAConfig; +import dev.cafeteria.artofalchemy.block.BlockSynthesizer; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; +import dev.cafeteria.artofalchemy.essentia.EssentiaStack; +import dev.cafeteria.artofalchemy.gui.handler.HandlerSynthesizer; +import dev.cafeteria.artofalchemy.network.AoANetworking; +import dev.cafeteria.artofalchemy.recipe.AoARecipes; +import dev.cafeteria.artofalchemy.recipe.RecipeSynthesis; +import dev.cafeteria.artofalchemy.transport.HasEssentia; +import dev.cafeteria.artofalchemy.util.AoAHelper; +import dev.cafeteria.artofalchemy.util.AoATags; +import dev.cafeteria.artofalchemy.util.ImplementedInventory; -import com.cumulusmc.artofalchemy.util.AoATags; import io.github.cottonmc.cotton.gui.PropertyDelegateHolder; -import com.cumulusmc.artofalchemy.AoAConfig; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.block.BlockSynthesizer; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.essentia.EssentiaStack; -import com.cumulusmc.artofalchemy.gui.handler.HandlerSynthesizer; -import com.cumulusmc.artofalchemy.network.AoANetworking; -import com.cumulusmc.artofalchemy.recipe.AoARecipes; -import com.cumulusmc.artofalchemy.recipe.RecipeSynthesis; -import com.cumulusmc.artofalchemy.transport.HasEssentia; -import com.cumulusmc.artofalchemy.util.AoAHelper; -import com.cumulusmc.artofalchemy.util.ImplementedInventory; import net.fabricmc.fabric.api.block.entity.BlockEntityClientSerializable; import net.fabricmc.fabric.api.screenhandler.v1.ExtendedScreenHandlerFactory; import net.minecraft.block.BlockState; @@ -33,17 +33,15 @@ import net.minecraft.screen.ScreenHandler; import net.minecraft.screen.ScreenHandlerContext; import net.minecraft.server.network.ServerPlayerEntity; -import net.minecraft.tag.Tag; import net.minecraft.text.LiteralText; import net.minecraft.text.Text; import net.minecraft.util.collection.DefaultedList; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.Direction; -import net.minecraft.util.registry.Registry; import net.minecraft.world.World; public class BlockEntitySynthesizer extends BlockEntity implements ImplementedInventory, BlockEntityTicker, SidedInventory, - PropertyDelegateHolder, BlockEntityClientSerializable, HasEssentia, ExtendedScreenHandlerFactory { +PropertyDelegateHolder, BlockEntityClientSerializable, HasEssentia, ExtendedScreenHandlerFactory { private static final int[] TOP_SLOTS = new int[]{0}; private static final int[] BOTTOM_SLOTS = new int[]{1, 2}; @@ -115,7 +113,7 @@ public BlockEntitySynthesizer(BlockPos pos, BlockState state) { .setOutput(false); } - protected BlockEntitySynthesizer(BlockEntityType type, BlockPos pos, BlockState state) { + protected BlockEntitySynthesizer(BlockEntityType type, BlockPos pos, BlockState state) { super(type, pos, state); } @@ -228,7 +226,7 @@ private void doCraft(RecipeSynthesis recipe) { Ingredient container = recipe.getContainer(); EssentiaStack essentia = recipe.getEssentia(); int cost = recipe.getCost(); -// int xpCost = recipe.getXp(targetSlot); + // int xpCost = recipe.getXp(targetSlot); Item target = AoAHelper.getTarget(targetSlot); @@ -240,7 +238,7 @@ private void doCraft(RecipeSynthesis recipe) { inSlot.decrement(cost); essentiaContainer.subtractEssentia(essentia); -// this.addXp(-xpCost); + // this.addXp(-xpCost); } @Override diff --git a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntitySynthesizerPlus.java b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntitySynthesizerPlus.java similarity index 84% rename from src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntitySynthesizerPlus.java rename to src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntitySynthesizerPlus.java index ffb94d9..ec8388d 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntitySynthesizerPlus.java +++ b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntitySynthesizerPlus.java @@ -1,7 +1,8 @@ -package com.cumulusmc.artofalchemy.blockentity; +package dev.cafeteria.artofalchemy.blockentity; + +import dev.cafeteria.artofalchemy.AoAConfig; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.AoAConfig; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; import net.minecraft.block.BlockState; import net.minecraft.util.math.BlockPos; diff --git a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityTank.java b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityTank.java similarity index 87% rename from src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityTank.java rename to src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityTank.java index dca4f4a..6615b48 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/blockentity/BlockEntityTank.java +++ b/src/main/java/dev/cafeteria/artofalchemy/blockentity/BlockEntityTank.java @@ -1,10 +1,11 @@ -package com.cumulusmc.artofalchemy.blockentity; +package dev.cafeteria.artofalchemy.blockentity; + +import dev.cafeteria.artofalchemy.AoAConfig; +import dev.cafeteria.artofalchemy.block.AoABlocks; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; +import dev.cafeteria.artofalchemy.network.AoANetworking; +import dev.cafeteria.artofalchemy.transport.HasEssentia; -import com.cumulusmc.artofalchemy.AoAConfig; -import com.cumulusmc.artofalchemy.block.AoABlocks; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.network.AoANetworking; -import com.cumulusmc.artofalchemy.transport.HasEssentia; import net.fabricmc.fabric.api.block.entity.BlockEntityClientSerializable; import net.minecraft.block.BlockState; import net.minecraft.block.entity.BlockEntity; diff --git a/src/main/java/com/cumulusmc/artofalchemy/dispenser/AoADispenserBehavior.java b/src/main/java/dev/cafeteria/artofalchemy/dispenser/AoADispenserBehavior.java similarity index 87% rename from src/main/java/com/cumulusmc/artofalchemy/dispenser/AoADispenserBehavior.java rename to src/main/java/dev/cafeteria/artofalchemy/dispenser/AoADispenserBehavior.java index dd44467..71df2cb 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/dispenser/AoADispenserBehavior.java +++ b/src/main/java/dev/cafeteria/artofalchemy/dispenser/AoADispenserBehavior.java @@ -1,8 +1,9 @@ -package com.cumulusmc.artofalchemy.dispenser; +package dev.cafeteria.artofalchemy.dispenser; + +import dev.cafeteria.artofalchemy.item.AoAItems; +import dev.cafeteria.artofalchemy.item.ItemEssentiaVessel; +import dev.cafeteria.artofalchemy.transport.HasAlkahest; -import com.cumulusmc.artofalchemy.transport.HasAlkahest; -import com.cumulusmc.artofalchemy.item.AoAItems; -import com.cumulusmc.artofalchemy.item.ItemEssentiaVessel; import net.minecraft.block.DispenserBlock; import net.minecraft.block.dispenser.DispenserBehavior; import net.minecraft.block.entity.BlockEntity; diff --git a/src/main/java/com/cumulusmc/artofalchemy/essentia/AoAEssentia.java b/src/main/java/dev/cafeteria/artofalchemy/essentia/AoAEssentia.java similarity index 94% rename from src/main/java/com/cumulusmc/artofalchemy/essentia/AoAEssentia.java rename to src/main/java/dev/cafeteria/artofalchemy/essentia/AoAEssentia.java index bed9898..ad17519 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/essentia/AoAEssentia.java +++ b/src/main/java/dev/cafeteria/artofalchemy/essentia/AoAEssentia.java @@ -1,6 +1,7 @@ -package com.cumulusmc.artofalchemy.essentia; +package dev.cafeteria.artofalchemy.essentia; + +import dev.cafeteria.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; import net.minecraft.util.registry.Registry; public class AoAEssentia { diff --git a/src/main/java/com/cumulusmc/artofalchemy/essentia/Essentia.java b/src/main/java/dev/cafeteria/artofalchemy/essentia/Essentia.java similarity index 90% rename from src/main/java/com/cumulusmc/artofalchemy/essentia/Essentia.java rename to src/main/java/dev/cafeteria/artofalchemy/essentia/Essentia.java index 4107aa9..91bab2f 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/essentia/Essentia.java +++ b/src/main/java/dev/cafeteria/artofalchemy/essentia/Essentia.java @@ -1,4 +1,4 @@ -package com.cumulusmc.artofalchemy.essentia; +package dev.cafeteria.artofalchemy.essentia; import net.minecraft.text.TranslatableText; import net.minecraft.util.Identifier; diff --git a/src/main/java/com/cumulusmc/artofalchemy/essentia/EssentiaContainer.java b/src/main/java/dev/cafeteria/artofalchemy/essentia/EssentiaContainer.java similarity index 99% rename from src/main/java/com/cumulusmc/artofalchemy/essentia/EssentiaContainer.java rename to src/main/java/dev/cafeteria/artofalchemy/essentia/EssentiaContainer.java index 90b351b..5e7a01e 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/essentia/EssentiaContainer.java +++ b/src/main/java/dev/cafeteria/artofalchemy/essentia/EssentiaContainer.java @@ -1,4 +1,8 @@ -package com.cumulusmc.artofalchemy.essentia; +package dev.cafeteria.artofalchemy.essentia; + +import java.util.HashSet; +import java.util.Map.Entry; +import java.util.Set; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NbtCompound; @@ -6,10 +10,6 @@ import net.minecraft.nbt.NbtString; import net.minecraft.util.Identifier; -import java.util.HashSet; -import java.util.Map.Entry; -import java.util.Set; - public class EssentiaContainer { private final EssentiaStack contents = new EssentiaStack(); @@ -398,7 +398,7 @@ public EssentiaStack pullContents(EssentiaContainer other) { } public void mixPushContents(EssentiaContainer other) { - if (this.output == false || other.input == false) { + if (!this.output || !other.input) { return; } EssentiaContainer mixed = new EssentiaContainer().setUnlimitedCapacity(); diff --git a/src/main/java/com/cumulusmc/artofalchemy/essentia/EssentiaStack.java b/src/main/java/dev/cafeteria/artofalchemy/essentia/EssentiaStack.java similarity index 96% rename from src/main/java/com/cumulusmc/artofalchemy/essentia/EssentiaStack.java rename to src/main/java/dev/cafeteria/artofalchemy/essentia/EssentiaStack.java index d8ae5f0..8877ad1 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/essentia/EssentiaStack.java +++ b/src/main/java/dev/cafeteria/artofalchemy/essentia/EssentiaStack.java @@ -1,14 +1,19 @@ -package com.cumulusmc.artofalchemy.essentia; +package dev.cafeteria.artofalchemy.essentia; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Set; + +import dev.cafeteria.artofalchemy.util.AoAHelper; import com.google.gson.JsonObject; import com.google.gson.JsonSyntaxException; -import com.cumulusmc.artofalchemy.util.AoAHelper; + import net.minecraft.nbt.NbtCompound; import net.minecraft.util.Identifier; import net.minecraft.util.math.Vec3d; -import java.util.*; - @SuppressWarnings("serial") public class EssentiaStack extends HashMap { diff --git a/src/main/java/com/cumulusmc/artofalchemy/essentia/RegistryEssentia.java b/src/main/java/dev/cafeteria/artofalchemy/essentia/RegistryEssentia.java similarity index 84% rename from src/main/java/com/cumulusmc/artofalchemy/essentia/RegistryEssentia.java rename to src/main/java/dev/cafeteria/artofalchemy/essentia/RegistryEssentia.java index abceb0b..1b5983d 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/essentia/RegistryEssentia.java +++ b/src/main/java/dev/cafeteria/artofalchemy/essentia/RegistryEssentia.java @@ -1,15 +1,16 @@ -package com.cumulusmc.artofalchemy.essentia; +package dev.cafeteria.artofalchemy.essentia; +import java.util.function.BiConsumer; + +import dev.cafeteria.artofalchemy.ArtOfAlchemy; +import dev.cafeteria.artofalchemy.mixin.RegistryAccessor; import com.mojang.serialization.Lifecycle; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.mixin.RegistryAccessor; + import net.minecraft.util.Identifier; import net.minecraft.util.registry.Registry; import net.minecraft.util.registry.RegistryKey; import net.minecraft.util.registry.SimpleRegistry; -import java.util.function.BiConsumer; - public class RegistryEssentia extends SimpleRegistry { public static final RegistryKey> KEY = RegistryKey.ofRegistry(ArtOfAlchemy.id("essentia")); diff --git a/src/main/java/com/cumulusmc/artofalchemy/fluid/AoAFluids.java b/src/main/java/dev/cafeteria/artofalchemy/fluid/AoAFluids.java similarity index 87% rename from src/main/java/com/cumulusmc/artofalchemy/fluid/AoAFluids.java rename to src/main/java/dev/cafeteria/artofalchemy/fluid/AoAFluids.java index b1c11c8..1de6aef 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/fluid/AoAFluids.java +++ b/src/main/java/dev/cafeteria/artofalchemy/fluid/AoAFluids.java @@ -1,15 +1,16 @@ -package com.cumulusmc.artofalchemy.fluid; +package dev.cafeteria.artofalchemy.fluid; + +import java.util.HashMap; +import java.util.Map; + +import dev.cafeteria.artofalchemy.ArtOfAlchemy; +import dev.cafeteria.artofalchemy.essentia.Essentia; +import dev.cafeteria.artofalchemy.essentia.RegistryEssentia; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.essentia.Essentia; -import com.cumulusmc.artofalchemy.essentia.RegistryEssentia; import net.minecraft.fluid.FlowableFluid; import net.minecraft.util.Identifier; import net.minecraft.util.registry.Registry; -import java.util.HashMap; -import java.util.Map; - public class AoAFluids { public static FlowableFluid ALKAHEST; diff --git a/src/main/java/com/cumulusmc/artofalchemy/fluid/FluidAlkahest.java b/src/main/java/dev/cafeteria/artofalchemy/fluid/FluidAlkahest.java similarity index 78% rename from src/main/java/com/cumulusmc/artofalchemy/fluid/FluidAlkahest.java rename to src/main/java/dev/cafeteria/artofalchemy/fluid/FluidAlkahest.java index e58ab15..7df61b7 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/fluid/FluidAlkahest.java +++ b/src/main/java/dev/cafeteria/artofalchemy/fluid/FluidAlkahest.java @@ -1,10 +1,10 @@ -package com.cumulusmc.artofalchemy.fluid; +package dev.cafeteria.artofalchemy.fluid; + +import dev.cafeteria.artofalchemy.block.AoABlocks; +import dev.cafeteria.artofalchemy.item.AoAItems; -import com.cumulusmc.artofalchemy.block.AoABlocks; -import com.cumulusmc.artofalchemy.item.AoAItems; import net.minecraft.block.Block; import net.minecraft.block.BlockState; -import net.minecraft.block.entity.BlockEntity; import net.minecraft.fluid.FlowableFluid; import net.minecraft.fluid.Fluid; import net.minecraft.fluid.FluidState; @@ -89,18 +89,18 @@ protected void appendProperties(StateManager.Builder builder) builder.add(LEVEL); } -// @Override -// protected boolean canBeReplacedWith(FluidState state, BlockView world, BlockPos pos, Fluid fluid, -// Direction direction) { -// if (AoAFluids.ESSENTIA_FLUIDS.containsValue(fluid) || -// AoAFluids.ESSENTIA_FLUIDS_FLOWING.containsValue(fluid) || -// AoAFluids.ALKAHEST == fluid || -// AoAFluids.ALKAHEST_FLOWING == fluid) { -// return true; -// } else { -// return super.canBeReplacedWith(state, world, pos, fluid, direction); -// } -// } + // @Override + // protected boolean canBeReplacedWith(FluidState state, BlockView world, BlockPos pos, Fluid fluid, + // Direction direction) { + // if (AoAFluids.ESSENTIA_FLUIDS.containsValue(fluid) || + // AoAFluids.ESSENTIA_FLUIDS_FLOWING.containsValue(fluid) || + // AoAFluids.ALKAHEST == fluid || + // AoAFluids.ALKAHEST_FLOWING == fluid) { + // return true; + // } else { + // return super.canBeReplacedWith(state, world, pos, fluid, direction); + // } + // } @Override public int getLevel(FluidState state) { diff --git a/src/main/java/com/cumulusmc/artofalchemy/fluid/FluidEssentia.java b/src/main/java/dev/cafeteria/artofalchemy/fluid/FluidEssentia.java similarity index 79% rename from src/main/java/com/cumulusmc/artofalchemy/fluid/FluidEssentia.java rename to src/main/java/dev/cafeteria/artofalchemy/fluid/FluidEssentia.java index 727d1c2..7e4504e 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/fluid/FluidEssentia.java +++ b/src/main/java/dev/cafeteria/artofalchemy/fluid/FluidEssentia.java @@ -1,11 +1,11 @@ -package com.cumulusmc.artofalchemy.fluid; +package dev.cafeteria.artofalchemy.fluid; + +import dev.cafeteria.artofalchemy.block.AoABlocks; +import dev.cafeteria.artofalchemy.essentia.Essentia; +import dev.cafeteria.artofalchemy.item.AoAItems; -import com.cumulusmc.artofalchemy.block.AoABlocks; -import com.cumulusmc.artofalchemy.essentia.Essentia; -import com.cumulusmc.artofalchemy.item.AoAItems; import net.minecraft.block.Block; import net.minecraft.block.BlockState; -import net.minecraft.block.entity.BlockEntity; import net.minecraft.fluid.FlowableFluid; import net.minecraft.fluid.Fluid; import net.minecraft.fluid.FluidState; @@ -98,18 +98,18 @@ public Flowing(Essentia essentia) { super(essentia); } -// @Override -// protected boolean canBeReplacedWith(FluidState state, BlockView world, BlockPos pos, Fluid fluid, -// Direction direction) { -// if (AoAFluids.ESSENTIA_FLUIDS.containsValue(fluid) || -// AoAFluids.ESSENTIA_FLUIDS_FLOWING.containsValue(fluid) || -// AoAFluids.ALKAHEST == fluid || -// AoAFluids.ALKAHEST_FLOWING == fluid) { -// return true; -// } else { -// return super.canBeReplacedWith(state, world, pos, fluid, direction); -// } -// } + // @Override + // protected boolean canBeReplacedWith(FluidState state, BlockView world, BlockPos pos, Fluid fluid, + // Direction direction) { + // if (AoAFluids.ESSENTIA_FLUIDS.containsValue(fluid) || + // AoAFluids.ESSENTIA_FLUIDS_FLOWING.containsValue(fluid) || + // AoAFluids.ALKAHEST == fluid || + // AoAFluids.ALKAHEST_FLOWING == fluid) { + // return true; + // } else { + // return super.canBeReplacedWith(state, world, pos, fluid, direction); + // } + // } @Override protected void appendProperties(StateManager.Builder builder) { diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/handler/AoAHandlers.java b/src/main/java/dev/cafeteria/artofalchemy/gui/handler/AoAHandlers.java similarity index 75% rename from src/main/java/com/cumulusmc/artofalchemy/gui/handler/AoAHandlers.java rename to src/main/java/dev/cafeteria/artofalchemy/gui/handler/AoAHandlers.java index 47aba94..9f0e210 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/handler/AoAHandlers.java +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/handler/AoAHandlers.java @@ -1,15 +1,23 @@ -package com.cumulusmc.artofalchemy.gui.handler; +package dev.cafeteria.artofalchemy.gui.handler; + +import java.lang.reflect.InvocationTargetException; + +import dev.cafeteria.artofalchemy.ArtOfAlchemy; +import dev.cafeteria.artofalchemy.block.BlockAnalyzer; +import dev.cafeteria.artofalchemy.block.BlockCalcinator; +import dev.cafeteria.artofalchemy.block.BlockDissolver; +import dev.cafeteria.artofalchemy.block.BlockDistiller; +import dev.cafeteria.artofalchemy.block.BlockProjector; +import dev.cafeteria.artofalchemy.block.BlockSynthesizer; +import dev.cafeteria.artofalchemy.item.ItemJournal; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.block.*; -import com.cumulusmc.artofalchemy.item.ItemJournal; import io.github.cottonmc.cotton.gui.SyncedGuiDescription; import io.github.cottonmc.cotton.gui.widget.WBar; -import io.github.cottonmc.cotton.gui.widget.WItemSlot; +import io.github.cottonmc.cotton.gui.widget.WBar.Direction; import io.github.cottonmc.cotton.gui.widget.WGridPanel; +import io.github.cottonmc.cotton.gui.widget.WItemSlot; import io.github.cottonmc.cotton.gui.widget.WLabel; import io.github.cottonmc.cotton.gui.widget.WSprite; -import io.github.cottonmc.cotton.gui.widget.WBar.Direction; import io.github.cottonmc.cotton.gui.widget.data.HorizontalAlignment; import net.fabricmc.fabric.api.screenhandler.v1.ScreenHandlerRegistry; import net.minecraft.entity.player.PlayerInventory; @@ -20,8 +28,6 @@ import net.minecraft.util.Hand; import net.minecraft.util.Identifier; -import java.lang.reflect.InvocationTargetException; - public class AoAHandlers { // Constants public static int PANEL_WIDTH = 176; @@ -61,7 +67,7 @@ private static ScreenHandlerRegistry.ExtendedClientHan } }; } - + public static WGridPanel makePanel(SyncedGuiDescription gui) { WGridPanel panel = new WGridPanel(1); gui.setRootPanel(panel); @@ -69,16 +75,16 @@ public static WGridPanel makePanel(SyncedGuiDescription gui) { makeBackground(panel); return panel; } - + public static void makeBackground(WGridPanel panel) { WSprite background = new WSprite(new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/rune_bg.png")); panel.add( - background, - AoAHandlers.OFFSET, - AoAHandlers.OFFSET, - 9 * AoAHandlers.BASIS, - (5 * AoAHandlers.BASIS) - AoAHandlers.OFFSET - ); + background, + AoAHandlers.OFFSET, + AoAHandlers.OFFSET, + 9 * AoAHandlers.BASIS, + (5 * AoAHandlers.BASIS) - AoAHandlers.OFFSET + ); } public static void makeTitle(WGridPanel panel, TranslatableText text) { makeTitle(panel, new WLabel(text, WLabel.DEFAULT_TEXT_COLOR)); @@ -86,40 +92,43 @@ public static void makeTitle(WGridPanel panel, TranslatableText text) { public static void makeTitle(WGridPanel panel, WLabel title) { title.setHorizontalAlignment(HorizontalAlignment.CENTER); panel.add( - title, - 0, - 3, - 9 * AoAHandlers.BASIS, - AoAHandlers.BASIS - ); + title, + 0, + 3, + 9 * AoAHandlers.BASIS, + AoAHandlers.BASIS + ); } public static void addCentralProgressBar(WGridPanel panel, Identifier type) { + addCentralProgressBar(panel, type, 0, 1); + } + public static void addCentralProgressBar(WGridPanel panel, Identifier type, int progressId, int maxProgressId) { panel.add( - new WBar( - new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/progress_off.png"), - type, - 0, - 1, - Direction.RIGHT - ), - 3 * AoAHandlers.BASIS + 7, - 2 * AoAHandlers.BASIS + 4, - 3 * AoAHandlers.BASIS, - AoAHandlers.BASIS - ); + new WBar( + new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/progress_off.png"), + type, + progressId, + maxProgressId, + Direction.RIGHT + ), + 3 * AoAHandlers.BASIS + 7, + 2 * AoAHandlers.BASIS + 4, + 3 * AoAHandlers.BASIS, + AoAHandlers.BASIS + ); } public static void addBigOutput(WGridPanel panel, WItemSlot slot) { panel.add( - slot, - 6 * AoAHandlers.BASIS + 7 + 4, - 2 * AoAHandlers.BASIS + 4 - ); + slot, + 6 * AoAHandlers.BASIS + 7 + 4, + 2 * AoAHandlers.BASIS + 4 + ); } public static void addInventory(WGridPanel panel, SyncedGuiDescription gui) { panel.add( - gui.createPlayerInventoryPanel(), - AoAHandlers.OFFSET, - (5 * AoAHandlers.BASIS) - AoAHandlers.OFFSET - ); + gui.createPlayerInventoryPanel(), + AoAHandlers.OFFSET, + (5 * AoAHandlers.BASIS) - AoAHandlers.OFFSET + ); } } diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerAnalyzer.java b/src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerAnalyzer.java similarity index 72% rename from src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerAnalyzer.java rename to src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerAnalyzer.java index 6a884cb..2d93e9e 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerAnalyzer.java +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerAnalyzer.java @@ -1,15 +1,14 @@ -package com.cumulusmc.artofalchemy.gui.handler; +package dev.cafeteria.artofalchemy.gui.handler; + +import dev.cafeteria.artofalchemy.ArtOfAlchemy; +import dev.cafeteria.artofalchemy.item.AoAItems; +import dev.cafeteria.artofalchemy.item.ItemAlchemyFormula; +import dev.cafeteria.artofalchemy.util.AoAHelper; import io.github.cottonmc.cotton.gui.SyncedGuiDescription; import io.github.cottonmc.cotton.gui.widget.WGridPanel; import io.github.cottonmc.cotton.gui.widget.WItemSlot; -import io.github.cottonmc.cotton.gui.widget.WLabel; import io.github.cottonmc.cotton.gui.widget.WSprite; -import io.github.cottonmc.cotton.gui.widget.data.HorizontalAlignment; -import com.cumulusmc.artofalchemy.util.AoAHelper; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.item.AoAItems; -import com.cumulusmc.artofalchemy.item.ItemAlchemyFormula; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.entity.player.PlayerInventory; import net.minecraft.inventory.Inventory; @@ -47,60 +46,60 @@ public HandlerAnalyzer(int syncId, PlayerInventory playerInventory, ScreenHandle // Paper Icon panel.add( - new WSprite(new Identifier("minecraft", "textures/item/paper.png")), - 2 * AoAHandlers.BASIS + 7 + 1, - 2 * AoAHandlers.BASIS + 4 + 1, - 16, - 16 - ); + new WSprite(new Identifier("minecraft", "textures/item/paper.png")), + 2 * AoAHandlers.BASIS + 7 + 1, + 2 * AoAHandlers.BASIS + 4 + 1, + 16, + 16 + ); // Paper Slot panel.add( - WItemSlot.of(inventory, 0), - 2 * AoAHandlers.BASIS + 7, - 2 * AoAHandlers.BASIS + 4 - ); + WItemSlot.of(inventory, 0), + 2 * AoAHandlers.BASIS + 7, + 2 * AoAHandlers.BASIS + 4 + ); // Ink Icon panel.add( - new WSprite(new Identifier("minecraft", "textures/item/ink_sac.png")), - (4 * AoAHandlers.BASIS) + 7 + 1, - AoAHandlers.BASIS + 1, - 16, - 16 - ); + new WSprite(new Identifier("minecraft", "textures/item/ink_sac.png")), + (4 * AoAHandlers.BASIS) + 7 + 1, + AoAHandlers.BASIS + 1, + 16, + 16 + ); // Ink Slot panel.add( - WItemSlot.of(inventory, 1), - (4 * AoAHandlers.BASIS) + 7, - AoAHandlers.BASIS - ); + WItemSlot.of(inventory, 1), + (4 * AoAHandlers.BASIS) + 7, + AoAHandlers.BASIS + ); // Target Icon panel.add( - new WSprite(new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/target.png")), - 4 * AoAHandlers.BASIS + 7 + 1, - 3 * AoAHandlers.BASIS + 8 + 1, - AoAHandlers.BASIS, - AoAHandlers.BASIS - ); + new WSprite(new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/target.png")), + 4 * AoAHandlers.BASIS + 7 + 1, + 3 * AoAHandlers.BASIS + 8 + 1, + AoAHandlers.BASIS, + AoAHandlers.BASIS + ); // Target Slot panel.add( - WItemSlot.of(inventory, 2), - 4 * AoAHandlers.BASIS + 7, - 3 * AoAHandlers.BASIS + 8 - ); + WItemSlot.of(inventory, 2), + 4 * AoAHandlers.BASIS + 7, + 3 * AoAHandlers.BASIS + 8 + ); // Progress Bar panel.add( - new WSprite(new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/progress_off.png")), - 3 * AoAHandlers.BASIS + 7, - 2 * AoAHandlers.BASIS + 4, - 3 * AoAHandlers.BASIS, - AoAHandlers.BASIS - ); + new WSprite(new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/progress_off.png")), + 3 * AoAHandlers.BASIS + 7, + 2 * AoAHandlers.BASIS + 4, + 3 * AoAHandlers.BASIS, + AoAHandlers.BASIS + ); panel.validate(this); } diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerCalcinator.java b/src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerCalcinator.java similarity index 57% rename from src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerCalcinator.java rename to src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerCalcinator.java index 6693948..af61616 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerCalcinator.java +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerCalcinator.java @@ -1,9 +1,12 @@ -package com.cumulusmc.artofalchemy.gui.handler; +package dev.cafeteria.artofalchemy.gui.handler; + +import dev.cafeteria.artofalchemy.ArtOfAlchemy; import io.github.cottonmc.cotton.gui.SyncedGuiDescription; -import io.github.cottonmc.cotton.gui.widget.*; +import io.github.cottonmc.cotton.gui.widget.WBar; import io.github.cottonmc.cotton.gui.widget.WBar.Direction; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; +import io.github.cottonmc.cotton.gui.widget.WGridPanel; +import io.github.cottonmc.cotton.gui.widget.WItemSlot; import net.minecraft.entity.player.PlayerInventory; import net.minecraft.screen.ScreenHandlerContext; import net.minecraft.text.TranslatableText; @@ -22,32 +25,32 @@ public HandlerCalcinator(int syncId, PlayerInventory playerInventory, ScreenHand // Input panel.add( - WItemSlot.of(blockInventory, 0), - 2 * AoAHandlers.BASIS + 4, - AoAHandlers.BASIS + 4 - ); + WItemSlot.of(blockInventory, 0), + 2 * AoAHandlers.BASIS + 4, + AoAHandlers.BASIS + 4 + ); // Fuel panel.add( - WItemSlot.of(blockInventory, 1), - 2 * AoAHandlers.BASIS + 4, - 3 * AoAHandlers.BASIS + 4 - ); - + WItemSlot.of(blockInventory, 1), + 2 * AoAHandlers.BASIS + 4, + 3 * AoAHandlers.BASIS + 4 + ); + // Fuel Bar panel.add( - new WBar( - new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/fire_off.png"), - new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/fire_on.png"), - 0, - 1, - Direction.UP - ), - 2 * AoAHandlers.BASIS + 4 + 1 + 2, - 2 * AoAHandlers.BASIS + 4 + 2, - AoAHandlers.BASIS - 4, - AoAHandlers.BASIS - 4 - ); + new WBar( + new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/fire_off.png"), + new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/fire_on.png"), + 0, + 1, + Direction.UP + ), + 2 * AoAHandlers.BASIS + 4 + 1 + 2, + 2 * AoAHandlers.BASIS + 4 + 2, + AoAHandlers.BASIS - 4, + AoAHandlers.BASIS - 4 + ); panel.validate(this); } diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerDissolver.java b/src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerDissolver.java similarity index 64% rename from src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerDissolver.java rename to src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerDissolver.java index 56624d0..4139f4c 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerDissolver.java +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerDissolver.java @@ -1,15 +1,16 @@ -package com.cumulusmc.artofalchemy.gui.handler; +package dev.cafeteria.artofalchemy.gui.handler; + +import dev.cafeteria.artofalchemy.ArtOfAlchemy; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; +import dev.cafeteria.artofalchemy.gui.widget.WEssentiaPanel; +import dev.cafeteria.artofalchemy.transport.HasEssentia; import io.github.cottonmc.cotton.gui.SyncedGuiDescription; -import io.github.cottonmc.cotton.gui.widget.*; +import io.github.cottonmc.cotton.gui.widget.WBar; import io.github.cottonmc.cotton.gui.widget.WBar.Direction; -import io.github.cottonmc.cotton.gui.widget.data.HorizontalAlignment; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.transport.HasEssentia; -import com.cumulusmc.artofalchemy.gui.widget.WEssentiaPanel; +import io.github.cottonmc.cotton.gui.widget.WGridPanel; +import io.github.cottonmc.cotton.gui.widget.WItemSlot; import net.minecraft.block.entity.BlockEntity; -import net.minecraft.client.resource.language.I18n; import net.minecraft.entity.player.PlayerInventory; import net.minecraft.screen.ScreenHandlerContext; import net.minecraft.text.TranslatableText; @@ -21,7 +22,6 @@ public class HandlerDissolver extends SyncedGuiDescription { final BlockPos pos; final WEssentiaPanel essentiaPanel; - @SuppressWarnings("MethodCallSideOnly") public HandlerDissolver(int syncId, PlayerInventory playerInventory, ScreenHandlerContext ctx) { super(AoAHandlers.DISSOLVER, syncId, playerInventory, getBlockInventory(ctx), getBlockPropertyDelegate(ctx)); @@ -30,32 +30,33 @@ public HandlerDissolver(int syncId, PlayerInventory playerInventory, ScreenHandl WGridPanel panel = AoAHandlers.makePanel(this); AoAHandlers.makeTitle(panel, new TranslatableText("block.artofalchemy.dissolution_chamber")); AoAHandlers.addInventory(panel, this); - AoAHandlers.addCentralProgressBar(panel, new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/progress_magenta.png")); + AoAHandlers.addCentralProgressBar(panel, new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/progress_magenta.png"), 2, 3); // Item Input panel.add( - WItemSlot.of(blockInventory, 0), - 2 * AoAHandlers.BASIS + 7, - 2 * AoAHandlers.BASIS + 4 - ); + WItemSlot.of(blockInventory, 0), + 2 * AoAHandlers.BASIS + 7, + 2 * AoAHandlers.BASIS + 4 + ); WBar tankBar = new WBar( - new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/tank_empty.png"), - new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/tank_full.png"), - 0, - 1, - Direction.UP - ); + new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/tank_empty.png"), + new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/tank_full.png"), + 0, + 1, + Direction.UP + ); tankBar.withTooltip("gui." + ArtOfAlchemy.MOD_ID + ".alkahest_tooltip"); panel.add( - tankBar, - 0, - AoAHandlers.BASIS, - 2 * AoAHandlers.BASIS, - 3 * AoAHandlers.BASIS + 6 - ); + tankBar, + 0, + AoAHandlers.BASIS, + 2 * AoAHandlers.BASIS, + 3 * AoAHandlers.BASIS + 6 + ); - WDynamicLabel alert = new WDynamicLabel(() -> { + // KG: Unsure if we should keep alerts. I can see cause for adding them to help new players. A manual would achieve this too. They tend to look a little out of place. + /*WDynamicLabel alert = new WDynamicLabel(() -> { switch (propertyDelegate.get(4)) { case 2: return I18n.translate("gui." + ArtOfAlchemy.MOD_ID + ".alkahest_warning"); @@ -72,16 +73,16 @@ public HandlerDissolver(int syncId, PlayerInventory playerInventory, ScreenHandl 0 * AoAHandlers.BASIS, 9 * AoAHandlers.BASIS, AoAHandlers.BASIS - ); + );*/ this.essentiaPanel = new WEssentiaPanel(getEssentia(ctx)); panel.add( this.essentiaPanel, - 6 * AoAHandlers.BASIS - 1, - AoAHandlers.BASIS - AoAHandlers.OFFSET, - 3 * AoAHandlers.BASIS, - 4 * AoAHandlers.BASIS - ); + 6 * AoAHandlers.BASIS - 1, + AoAHandlers.BASIS - AoAHandlers.OFFSET, + 3 * AoAHandlers.BASIS, + 4 * AoAHandlers.BASIS + ); panel.validate(this); } diff --git a/src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerDistiller.java b/src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerDistiller.java new file mode 100644 index 0000000..5ea20e1 --- /dev/null +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerDistiller.java @@ -0,0 +1,115 @@ +package dev.cafeteria.artofalchemy.gui.handler; + +import dev.cafeteria.artofalchemy.ArtOfAlchemy; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; +import dev.cafeteria.artofalchemy.gui.widget.WEssentiaPanel; +import dev.cafeteria.artofalchemy.transport.HasEssentia; + +import io.github.cottonmc.cotton.gui.SyncedGuiDescription; +import io.github.cottonmc.cotton.gui.widget.WBar; +import io.github.cottonmc.cotton.gui.widget.WBar.Direction; +import io.github.cottonmc.cotton.gui.widget.WGridPanel; +import io.github.cottonmc.cotton.gui.widget.WItemSlot; +import net.minecraft.block.entity.BlockEntity; +import net.minecraft.entity.player.PlayerInventory; +import net.minecraft.screen.ScreenHandlerContext; +import net.minecraft.text.TranslatableText; +import net.minecraft.util.Identifier; +import net.minecraft.util.math.BlockPos; + +public class HandlerDistiller extends SyncedGuiDescription { + + final BlockPos pos; + final WEssentiaPanel essentiaPanel; + + public HandlerDistiller(int syncId, PlayerInventory playerInventory, ScreenHandlerContext ctx) { + super(AoAHandlers.DISTILLER, syncId, playerInventory, getBlockInventory(ctx), getBlockPropertyDelegate(ctx)); + + pos = ctx.get((world, pos) -> pos, null); + + WGridPanel panel = AoAHandlers.makePanel(this); + AoAHandlers.makeTitle(panel, new TranslatableText("block.artofalchemy.distillation_apparatus")); + AoAHandlers.addInventory(panel, this); + AoAHandlers.addCentralProgressBar(panel, new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/progress_magenta.png")); + + // Azoth Slot + panel.add( + WItemSlot.of(blockInventory, 0), + AoAHandlers.BASIS * 2, + AoAHandlers.BASIS * 1 + 3 + ); + + // Fuel Slot + panel.add( + WItemSlot.of(blockInventory, 1), + AoAHandlers.BASIS * 2, + AoAHandlers.BASIS * 3 + 3 + 2 + ); + + // Fuel Indicator + panel.add( + new WBar( + new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/fire_off.png"), + new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/fire_on.png"), + 2, + 3, + Direction.UP + ), + (AoAHandlers.BASIS * 2) + 2, + (AoAHandlers.BASIS * 2) + 3 + 2, + 16, + 16 + ); + + // Essentia Tank + WBar essentiaTankBar = new WBar( + new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/tank_empty.png"), + new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/tank_full.png"), + 4, + 6, + Direction.UP + ); + essentiaTankBar.withTooltip("gui." + ArtOfAlchemy.MOD_ID + ".mixed_essentia_tooltip"); + panel.add( + essentiaTankBar, + 0, + AoAHandlers.BASIS + 3, + AoAHandlers.BASIS * 2, + AoAHandlers.BASIS * 3 + ); + + WBar alkahestTankBar = new WBar( + new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/tank_empty.png"), + new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/tank_full.png"), + 5, + 6, + Direction.UP + ); + alkahestTankBar.withTooltip("gui." + ArtOfAlchemy.MOD_ID + ".alkahest_tooltip"); + panel.add( + alkahestTankBar, + AoAHandlers.PANEL_WIDTH - AoAHandlers.BASIS * 3, + AoAHandlers.BASIS + 3, + AoAHandlers.BASIS * 2, + AoAHandlers.BASIS * 3 + ); + + EssentiaContainer essentia = getEssentia(ctx); + essentiaPanel = new WEssentiaPanel(essentia); + + panel.validate(this); + } + + public void updateEssentia(int essentiaId, EssentiaContainer essentia, BlockPos pos) { + if (pos.equals(this.pos)) essentiaPanel.updateEssentia(essentia); + } + + private static EssentiaContainer getEssentia(ScreenHandlerContext ctx) { + return ctx.get((world, pos) -> { + BlockEntity be = world.getBlockEntity(pos); + if (be instanceof HasEssentia) return ((HasEssentia) be).getContainer(0); + else return new EssentiaContainer(); + }, new EssentiaContainer()); + } + +} diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerJournal.java b/src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerJournal.java similarity index 68% rename from src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerJournal.java rename to src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerJournal.java index 401e3a0..36fb2c7 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerJournal.java +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerJournal.java @@ -1,14 +1,20 @@ -package com.cumulusmc.artofalchemy.gui.handler; +package dev.cafeteria.artofalchemy.gui.handler; + +import dev.cafeteria.artofalchemy.ArtOfAlchemy; +import dev.cafeteria.artofalchemy.gui.widget.WFormulaList; +import dev.cafeteria.artofalchemy.item.AbstractItemFormula; +import dev.cafeteria.artofalchemy.item.ItemJournal; +import dev.cafeteria.artofalchemy.network.AoAClientNetworking; +import dev.cafeteria.artofalchemy.util.AoAHelper; import io.github.cottonmc.cotton.gui.SyncedGuiDescription; -import io.github.cottonmc.cotton.gui.widget.*; +import io.github.cottonmc.cotton.gui.widget.WButton; +import io.github.cottonmc.cotton.gui.widget.WGridPanel; +import io.github.cottonmc.cotton.gui.widget.WItemSlot; +import io.github.cottonmc.cotton.gui.widget.WLabel; +import io.github.cottonmc.cotton.gui.widget.WSprite; +import io.github.cottonmc.cotton.gui.widget.WTextField; import io.github.cottonmc.cotton.gui.widget.data.HorizontalAlignment; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.gui.widget.WFormulaList; -import com.cumulusmc.artofalchemy.item.AbstractItemFormula; -import com.cumulusmc.artofalchemy.item.ItemJournal; -import com.cumulusmc.artofalchemy.network.AoAClientNetworking; -import com.cumulusmc.artofalchemy.util.AoAHelper; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.entity.player.PlayerInventory; import net.minecraft.inventory.Inventory; @@ -38,7 +44,6 @@ public boolean isValid(int slot, ItemStack stack) { } }; - @SuppressWarnings("MethodCallSideOnly") public HandlerJournal(int syncId, PlayerInventory playerInventory, ScreenHandlerContext ctx, Hand hand) { super(AoAHandlers.JOURNAL, syncId, playerInventory); blockInventory = inventory; @@ -53,21 +58,22 @@ public HandlerJournal(int syncId, PlayerInventory playerInventory, ScreenHandler // Input Icon panel.add( - new WSprite(new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/add_formula.png")), - 4 + 1, - AoAHandlers.BASIS - 1, - AoAHandlers.BASIS - 2, - AoAHandlers.BASIS - 2 - ); + new WSprite(new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/add_formula.png")), + 4 + 1, + AoAHandlers.BASIS - 1, + AoAHandlers.BASIS - 2, + AoAHandlers.BASIS - 2 + ); // Input Slot panel.add( - WItemSlot.of(inventory, 0), - 4, - AoAHandlers.BASIS - 2 - ); + WItemSlot.of(inventory, 0), + 4, + AoAHandlers.BASIS - 2 + ); searchBar = new WTextField() { + @Override public void setSize(int x, int y) { super.setSize(x, y); } @@ -79,52 +85,52 @@ public void onKeyPressed(int ch, int key, int modifiers) { } }; panel.add( - searchBar, - AoAHandlers.BASIS + 8, - AoAHandlers.BASIS - 4, - (6 * AoAHandlers.BASIS) + 12, - AoAHandlers.BASIS - 6 - ); + searchBar, + AoAHandlers.BASIS + 8, + AoAHandlers.BASIS - 4, + (6 * AoAHandlers.BASIS) + 12, + AoAHandlers.BASIS - 6 + ); // Background panel.add( - new WSprite(new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/rune_bg.png")), - 4, - (2 * AoAHandlers.BASIS) + 10, - 9 * AoAHandlers.BASIS, - 5 * AoAHandlers.BASIS - ); + new WSprite(new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/rune_bg.png")), + 4, + (2 * AoAHandlers.BASIS) + 10, + 9 * AoAHandlers.BASIS, + 5 * AoAHandlers.BASIS + ); formulaList = new WFormulaList(journal, hand); formulaList.refresh(); panel.add( - formulaList, - 0, - 2 * AoAHandlers.BASIS, - 9 * AoAHandlers.BASIS + 8, - 6 * AoAHandlers.BASIS - 2 - ); + formulaList, + 0, + 2 * AoAHandlers.BASIS, + 9 * AoAHandlers.BASIS + 8, + 6 * AoAHandlers.BASIS - 2 + ); clearButton = new WButton(new LiteralText("❌")); clearButton.setAlignment(HorizontalAlignment.CENTER); clearButton.setParent(panel); panel.add( - clearButton, - (8 * AoAHandlers.BASIS) + 6, - AoAHandlers.BASIS - 4, - AoAHandlers.BASIS + 2, - AoAHandlers.BASIS + 2 - ); + clearButton, + (8 * AoAHandlers.BASIS) + 6, + AoAHandlers.BASIS - 4, + AoAHandlers.BASIS + 2, + AoAHandlers.BASIS + 2 + ); clearButton.setOnClick(() -> { AoAClientNetworking.sendJournalSelectPacket(Registry.ITEM.getId(Items.AIR), hand); }); clearButton.setEnabled(ItemJournal.getFormula(this.journal) != Items.AIR); - + panel.add( - this.createPlayerInventoryPanel(), - AoAHandlers.OFFSET, - 8 * AoAHandlers.BASIS - ); + this.createPlayerInventoryPanel(), + AoAHandlers.OFFSET, + 8 * AoAHandlers.BASIS + ); panel.validate(this); } diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerProjector.java b/src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerProjector.java similarity index 63% rename from src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerProjector.java rename to src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerProjector.java index 0877aed..efc89ad 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerProjector.java +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerProjector.java @@ -1,10 +1,12 @@ -package com.cumulusmc.artofalchemy.gui.handler; +package dev.cafeteria.artofalchemy.gui.handler; + +import dev.cafeteria.artofalchemy.ArtOfAlchemy; import io.github.cottonmc.cotton.gui.SyncedGuiDescription; -import io.github.cottonmc.cotton.gui.widget.*; +import io.github.cottonmc.cotton.gui.widget.WBar; import io.github.cottonmc.cotton.gui.widget.WBar.Direction; -import io.github.cottonmc.cotton.gui.widget.data.HorizontalAlignment; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; +import io.github.cottonmc.cotton.gui.widget.WGridPanel; +import io.github.cottonmc.cotton.gui.widget.WItemSlot; import net.minecraft.entity.player.PlayerInventory; import net.minecraft.screen.ScreenHandlerContext; import net.minecraft.text.TranslatableText; @@ -23,26 +25,26 @@ public HandlerProjector(int syncId, PlayerInventory playerInventory, ScreenHandl // Input Slot panel.add( - WItemSlot.of(blockInventory, 0), - 2 * AoAHandlers.BASIS + 7, - 2 * AoAHandlers.BASIS + 4 - ); + WItemSlot.of(blockInventory, 0), + 2 * AoAHandlers.BASIS + 7, + 2 * AoAHandlers.BASIS + 4 + ); WBar tankBar = new WBar( - new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/tank_empty.png"), - new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/tank_full.png"), - 0, - 1, - Direction.UP - ); + new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/tank_empty.png"), + new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/tank_full.png"), + 0, + 1, + Direction.UP + ); tankBar.withTooltip("gui." + ArtOfAlchemy.MOD_ID + ".alkahest_tooltip"); panel.add( - tankBar, - 0, - AoAHandlers.BASIS, - 2 * AoAHandlers.BASIS, - 3 * AoAHandlers.BASIS + 6 - ); + tankBar, + 0, + AoAHandlers.BASIS, + 2 * AoAHandlers.BASIS, + 3 * AoAHandlers.BASIS + 6 + ); panel.validate(this); } diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerSynthesizer.java b/src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerSynthesizer.java similarity index 68% rename from src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerSynthesizer.java rename to src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerSynthesizer.java index 9d355da..dc7ff0e 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/handler/HandlerSynthesizer.java +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/handler/HandlerSynthesizer.java @@ -1,17 +1,17 @@ -package com.cumulusmc.artofalchemy.gui.handler; +package dev.cafeteria.artofalchemy.gui.handler; + +import dev.cafeteria.artofalchemy.ArtOfAlchemy; +import dev.cafeteria.artofalchemy.blockentity.BlockEntitySynthesizer; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; +import dev.cafeteria.artofalchemy.essentia.EssentiaStack; +import dev.cafeteria.artofalchemy.gui.widget.WEssentiaPanel; +import dev.cafeteria.artofalchemy.transport.HasEssentia; import io.github.cottonmc.cotton.gui.SyncedGuiDescription; -import io.github.cottonmc.cotton.gui.widget.*; -import io.github.cottonmc.cotton.gui.widget.WBar.Direction; -import io.github.cottonmc.cotton.gui.widget.data.HorizontalAlignment; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.blockentity.BlockEntitySynthesizer; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.essentia.EssentiaStack; -import com.cumulusmc.artofalchemy.transport.HasEssentia; -import com.cumulusmc.artofalchemy.gui.widget.WEssentiaPanel; +import io.github.cottonmc.cotton.gui.widget.WGridPanel; +import io.github.cottonmc.cotton.gui.widget.WItemSlot; +import io.github.cottonmc.cotton.gui.widget.WSprite; import net.minecraft.block.entity.BlockEntity; -import net.minecraft.client.resource.language.I18n; import net.minecraft.entity.player.PlayerInventory; import net.minecraft.screen.ScreenHandlerContext; import net.minecraft.text.TranslatableText; @@ -23,7 +23,6 @@ public class HandlerSynthesizer extends SyncedGuiDescription { final BlockPos pos; final WEssentiaPanel essentiaPanel; - @SuppressWarnings("MethodCallSideOnly") public HandlerSynthesizer(int syncId, PlayerInventory playerInventory, ScreenHandlerContext ctx) { super(AoAHandlers.SYNTHESIZER, syncId, playerInventory, getBlockInventory(ctx), getBlockPropertyDelegate(ctx)); @@ -37,28 +36,29 @@ public HandlerSynthesizer(int syncId, PlayerInventory playerInventory, ScreenHan // Input Slot panel.add( - WItemSlot.of(blockInventory, 0), - (4 * AoAHandlers.BASIS) + 7, - AoAHandlers.BASIS - ); + WItemSlot.of(blockInventory, 0), + (4 * AoAHandlers.BASIS) + 7, + AoAHandlers.BASIS + ); // Target Icon panel.add( - new WSprite(new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/target.png")), - 4 * AoAHandlers.BASIS + 7 + 1, - 3 * AoAHandlers.BASIS + 8 + 1, - AoAHandlers.BASIS, - AoAHandlers.BASIS - ); + new WSprite(new Identifier(ArtOfAlchemy.MOD_ID, "textures/gui/target.png")), + 4 * AoAHandlers.BASIS + 7 + 1, + 3 * AoAHandlers.BASIS + 8 + 1, + AoAHandlers.BASIS, + AoAHandlers.BASIS + ); // Target Slot panel.add( - WItemSlot.of(blockInventory, 2), - 4 * AoAHandlers.BASIS + 7, - 3 * AoAHandlers.BASIS + 8 - ); + WItemSlot.of(blockInventory, 2), + 4 * AoAHandlers.BASIS + 7, + 3 * AoAHandlers.BASIS + 8 + ); - WDynamicLabel alert = new WDynamicLabel(() -> { + // KG: Unsure if we should keep alerts. I can see cause for adding them to help new players. A manual would achieve this too. They tend to look a little out of place. + /*WDynamicLabel alert = new WDynamicLabel(() -> { switch (propertyDelegate.get(2)) { case 2: return I18n.translate("gui." + ArtOfAlchemy.MOD_ID + ".target_warning"); @@ -81,16 +81,16 @@ public HandlerSynthesizer(int syncId, PlayerInventory playerInventory, ScreenHan -1 * AoAHandlers.BASIS, 9 * AoAHandlers.BASIS, AoAHandlers.BASIS - ); + );*/ essentiaPanel = new WEssentiaPanel(getEssentia(ctx), getRequirements(ctx)); panel.add( - essentiaPanel, - 2, - AoAHandlers.BASIS - AoAHandlers.OFFSET, - 3 * AoAHandlers.BASIS, - 4 * AoAHandlers.BASIS - ); + essentiaPanel, + 2, + AoAHandlers.BASIS - AoAHandlers.OFFSET, + 3 * AoAHandlers.BASIS, + 4 * AoAHandlers.BASIS + ); panel.validate(this); @@ -103,7 +103,7 @@ public void updateEssentia(int essentiaId, EssentiaContainer essentia, BlockPos } public void updateEssentia(int essentiaId, EssentiaContainer essentia, - EssentiaStack required, BlockPos pos) { + EssentiaStack required, BlockPos pos) { if (pos.equals(this.pos)) { essentiaPanel.updateEssentia(essentia, required); } diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/screen/AoAScreens.java b/src/main/java/dev/cafeteria/artofalchemy/gui/screen/AoAScreens.java similarity index 71% rename from src/main/java/com/cumulusmc/artofalchemy/gui/screen/AoAScreens.java rename to src/main/java/dev/cafeteria/artofalchemy/gui/screen/AoAScreens.java index cd7af3b..2eb416a 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/screen/AoAScreens.java +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/screen/AoAScreens.java @@ -1,6 +1,14 @@ -package com.cumulusmc.artofalchemy.gui.screen; +package dev.cafeteria.artofalchemy.gui.screen; + +import dev.cafeteria.artofalchemy.gui.handler.AoAHandlers; +import dev.cafeteria.artofalchemy.gui.handler.HandlerAnalyzer; +import dev.cafeteria.artofalchemy.gui.handler.HandlerCalcinator; +import dev.cafeteria.artofalchemy.gui.handler.HandlerDissolver; +import dev.cafeteria.artofalchemy.gui.handler.HandlerDistiller; +import dev.cafeteria.artofalchemy.gui.handler.HandlerJournal; +import dev.cafeteria.artofalchemy.gui.handler.HandlerProjector; +import dev.cafeteria.artofalchemy.gui.handler.HandlerSynthesizer; -import com.cumulusmc.artofalchemy.gui.handler.*; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.fabricmc.fabric.api.client.screenhandler.v1.ScreenRegistry; diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/screen/EssentiaScreen.java b/src/main/java/dev/cafeteria/artofalchemy/gui/screen/EssentiaScreen.java similarity index 65% rename from src/main/java/com/cumulusmc/artofalchemy/gui/screen/EssentiaScreen.java rename to src/main/java/dev/cafeteria/artofalchemy/gui/screen/EssentiaScreen.java index b4cfe0f..1bb619b 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/screen/EssentiaScreen.java +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/screen/EssentiaScreen.java @@ -1,7 +1,8 @@ -package com.cumulusmc.artofalchemy.gui.screen; +package dev.cafeteria.artofalchemy.gui.screen; + +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; +import dev.cafeteria.artofalchemy.essentia.EssentiaStack; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.essentia.EssentiaStack; import net.minecraft.util.math.BlockPos; public interface EssentiaScreen { diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenAnalyzer.java b/src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenAnalyzer.java similarity index 78% rename from src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenAnalyzer.java rename to src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenAnalyzer.java index 4b6d385..b9f19cf 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenAnalyzer.java +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenAnalyzer.java @@ -1,7 +1,8 @@ -package com.cumulusmc.artofalchemy.gui.screen; +package dev.cafeteria.artofalchemy.gui.screen; + +import dev.cafeteria.artofalchemy.gui.handler.HandlerAnalyzer; import io.github.cottonmc.cotton.gui.client.CottonInventoryScreen; -import com.cumulusmc.artofalchemy.gui.handler.HandlerAnalyzer; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.entity.player.PlayerEntity; diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenCalcinator.java b/src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenCalcinator.java similarity index 78% rename from src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenCalcinator.java rename to src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenCalcinator.java index 8431bee..d6057f4 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenCalcinator.java +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenCalcinator.java @@ -1,7 +1,8 @@ -package com.cumulusmc.artofalchemy.gui.screen; +package dev.cafeteria.artofalchemy.gui.screen; + +import dev.cafeteria.artofalchemy.gui.handler.HandlerCalcinator; import io.github.cottonmc.cotton.gui.client.CottonInventoryScreen; -import com.cumulusmc.artofalchemy.gui.handler.HandlerCalcinator; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.entity.player.PlayerEntity; diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenDissolver.java b/src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenDissolver.java similarity index 74% rename from src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenDissolver.java rename to src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenDissolver.java index 5c92beb..32d0580 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenDissolver.java +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenDissolver.java @@ -1,8 +1,9 @@ -package com.cumulusmc.artofalchemy.gui.screen; +package dev.cafeteria.artofalchemy.gui.screen; + +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; +import dev.cafeteria.artofalchemy.gui.handler.HandlerDissolver; import io.github.cottonmc.cotton.gui.client.CottonInventoryScreen; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.gui.handler.HandlerDissolver; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.entity.player.PlayerEntity; @@ -10,7 +11,7 @@ @Environment(EnvType.CLIENT) public class ScreenDissolver extends CottonInventoryScreen - implements EssentiaScreen { +implements EssentiaScreen { public ScreenDissolver(HandlerDissolver container, PlayerEntity player) { super(container, player); diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenDistiller.java b/src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenDistiller.java similarity index 74% rename from src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenDistiller.java rename to src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenDistiller.java index 5e33585..283db9f 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenDistiller.java +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenDistiller.java @@ -1,9 +1,9 @@ -package com.cumulusmc.artofalchemy.gui.screen; +package dev.cafeteria.artofalchemy.gui.screen; -import io.github.cottonmc.cotton.gui.client.CottonInventoryScreen; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.gui.handler.HandlerDistiller; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; +import dev.cafeteria.artofalchemy.gui.handler.HandlerDistiller; +import io.github.cottonmc.cotton.gui.client.CottonInventoryScreen; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.entity.player.PlayerEntity; @@ -11,7 +11,7 @@ @Environment(EnvType.CLIENT) public class ScreenDistiller extends CottonInventoryScreen - implements EssentiaScreen { +implements EssentiaScreen { public ScreenDistiller(HandlerDistiller container, PlayerEntity player) { super(container, player); diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenJournal.java b/src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenJournal.java similarity index 82% rename from src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenJournal.java rename to src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenJournal.java index 879cc7e..9057b62 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenJournal.java +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenJournal.java @@ -1,7 +1,8 @@ -package com.cumulusmc.artofalchemy.gui.screen; +package dev.cafeteria.artofalchemy.gui.screen; + +import dev.cafeteria.artofalchemy.gui.handler.HandlerJournal; import io.github.cottonmc.cotton.gui.client.CottonInventoryScreen; -import com.cumulusmc.artofalchemy.gui.handler.HandlerJournal; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.entity.player.PlayerEntity; diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenProjector.java b/src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenProjector.java similarity index 78% rename from src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenProjector.java rename to src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenProjector.java index d995126..e31d46c 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenProjector.java +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenProjector.java @@ -1,7 +1,8 @@ -package com.cumulusmc.artofalchemy.gui.screen; +package dev.cafeteria.artofalchemy.gui.screen; + +import dev.cafeteria.artofalchemy.gui.handler.HandlerProjector; import io.github.cottonmc.cotton.gui.client.CottonInventoryScreen; -import com.cumulusmc.artofalchemy.gui.handler.HandlerProjector; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.entity.player.PlayerEntity; diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenSynthesizer.java b/src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenSynthesizer.java similarity index 75% rename from src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenSynthesizer.java rename to src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenSynthesizer.java index 58f3fa6..5324a77 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/screen/ScreenSynthesizer.java +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/screen/ScreenSynthesizer.java @@ -1,9 +1,10 @@ -package com.cumulusmc.artofalchemy.gui.screen; +package dev.cafeteria.artofalchemy.gui.screen; + +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; +import dev.cafeteria.artofalchemy.essentia.EssentiaStack; +import dev.cafeteria.artofalchemy.gui.handler.HandlerSynthesizer; import io.github.cottonmc.cotton.gui.client.CottonInventoryScreen; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.essentia.EssentiaStack; -import com.cumulusmc.artofalchemy.gui.handler.HandlerSynthesizer; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.entity.player.PlayerEntity; @@ -11,7 +12,7 @@ @Environment(EnvType.CLIENT) public class ScreenSynthesizer extends CottonInventoryScreen - implements EssentiaScreen { +implements EssentiaScreen { public ScreenSynthesizer(HandlerSynthesizer container, PlayerEntity player) { super(container, player); diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/widget/WEssentiaPanel.java b/src/main/java/dev/cafeteria/artofalchemy/gui/widget/WEssentiaPanel.java similarity index 88% rename from src/main/java/com/cumulusmc/artofalchemy/gui/widget/WEssentiaPanel.java rename to src/main/java/dev/cafeteria/artofalchemy/gui/widget/WEssentiaPanel.java index 3765cc8..2d92b8b 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/widget/WEssentiaPanel.java +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/widget/WEssentiaPanel.java @@ -1,16 +1,21 @@ -package com.cumulusmc.artofalchemy.gui.widget; +package dev.cafeteria.artofalchemy.gui.widget; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Set; + +import dev.cafeteria.artofalchemy.essentia.Essentia; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; +import dev.cafeteria.artofalchemy.essentia.EssentiaStack; import io.github.cottonmc.cotton.gui.widget.WListPanel; -import com.cumulusmc.artofalchemy.essentia.Essentia; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.essentia.EssentiaStack; import io.github.cottonmc.cotton.gui.widget.data.InputResult; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; -import java.util.*; -import java.util.Map.Entry; - public class WEssentiaPanel extends WListPanel { protected EssentiaContainer container; diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/widget/WEssentiaSubPanel.java b/src/main/java/dev/cafeteria/artofalchemy/gui/widget/WEssentiaSubPanel.java similarity index 94% rename from src/main/java/com/cumulusmc/artofalchemy/gui/widget/WEssentiaSubPanel.java rename to src/main/java/dev/cafeteria/artofalchemy/gui/widget/WEssentiaSubPanel.java index 3a60695..99dd8de 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/widget/WEssentiaSubPanel.java +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/widget/WEssentiaSubPanel.java @@ -1,12 +1,13 @@ -package com.cumulusmc.artofalchemy.gui.widget; +package dev.cafeteria.artofalchemy.gui.widget; + +import dev.cafeteria.artofalchemy.ArtOfAlchemy; +import dev.cafeteria.artofalchemy.essentia.Essentia; +import dev.cafeteria.artofalchemy.essentia.RegistryEssentia; import io.github.cottonmc.cotton.gui.widget.WLabel; import io.github.cottonmc.cotton.gui.widget.WPlainPanel; import io.github.cottonmc.cotton.gui.widget.WSprite; import io.github.cottonmc.cotton.gui.widget.data.HorizontalAlignment; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.essentia.Essentia; -import com.cumulusmc.artofalchemy.essentia.RegistryEssentia; import io.github.cottonmc.cotton.gui.widget.data.InputResult; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/widget/WFormulaList.java b/src/main/java/dev/cafeteria/artofalchemy/gui/widget/WFormulaList.java similarity index 89% rename from src/main/java/com/cumulusmc/artofalchemy/gui/widget/WFormulaList.java rename to src/main/java/dev/cafeteria/artofalchemy/gui/widget/WFormulaList.java index 16880d4..5eb66dd 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/widget/WFormulaList.java +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/widget/WFormulaList.java @@ -1,9 +1,11 @@ -package com.cumulusmc.artofalchemy.gui.widget; +package dev.cafeteria.artofalchemy.gui.widget; -import io.github.cottonmc.cotton.gui.widget.WListPanel; +import java.util.Map; + +import dev.cafeteria.artofalchemy.gui.handler.AoAHandlers; +import dev.cafeteria.artofalchemy.item.ItemJournal; -import com.cumulusmc.artofalchemy.gui.handler.AoAHandlers; -import com.cumulusmc.artofalchemy.item.ItemJournal; +import io.github.cottonmc.cotton.gui.widget.WListPanel; import net.fabricmc.api.EnvType; import net.fabricmc.loader.api.FabricLoader; import net.minecraft.item.Item; @@ -11,8 +13,6 @@ import net.minecraft.util.Hand; import net.minecraft.util.registry.Registry; -import java.util.Map; - public class WFormulaList extends WListPanel { protected ItemStack journal; @@ -29,7 +29,6 @@ public WFormulaList(ItemStack journal, Hand hand) { }; } - @SuppressWarnings("MethodCallSideOnly") public void refresh(ItemStack journal, String filter) { this.journal = journal; if (FabricLoader.getInstance().getEnvironmentType() == EnvType.CLIENT) { diff --git a/src/main/java/com/cumulusmc/artofalchemy/gui/widget/WFormulaListItem.java b/src/main/java/dev/cafeteria/artofalchemy/gui/widget/WFormulaListItem.java similarity index 83% rename from src/main/java/com/cumulusmc/artofalchemy/gui/widget/WFormulaListItem.java rename to src/main/java/dev/cafeteria/artofalchemy/gui/widget/WFormulaListItem.java index f968d0c..e9e6759 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/gui/widget/WFormulaListItem.java +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/widget/WFormulaListItem.java @@ -1,15 +1,17 @@ -package com.cumulusmc.artofalchemy.gui.widget; +package dev.cafeteria.artofalchemy.gui.widget; + +import java.util.ArrayList; +import java.util.List; + +import dev.cafeteria.artofalchemy.gui.handler.AoAHandlers; +import dev.cafeteria.artofalchemy.item.ItemJournal; +import dev.cafeteria.artofalchemy.network.AoAClientNetworking; import io.github.cottonmc.cotton.gui.widget.WButton; import io.github.cottonmc.cotton.gui.widget.WLabel; import io.github.cottonmc.cotton.gui.widget.WPlainPanel; import io.github.cottonmc.cotton.gui.widget.data.HorizontalAlignment; - -import com.cumulusmc.artofalchemy.gui.handler.AoAHandlers; -import com.cumulusmc.artofalchemy.item.ItemJournal; -import com.cumulusmc.artofalchemy.network.AoAClientNetworking; import net.fabricmc.api.EnvType; -import net.fabricmc.api.Environment; import net.fabricmc.loader.api.FabricLoader; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; @@ -18,9 +20,6 @@ import net.minecraft.util.Hand; import net.minecraft.util.registry.Registry; -import java.util.ArrayList; -import java.util.List; - public class WFormulaListItem extends WPlainPanel { private ItemStack journal; @@ -28,10 +27,9 @@ public class WFormulaListItem extends WPlainPanel { private final WItemScalable itemDisplay; private final WLabel formulaLabel; private final Hand hand; -// private final WLabel typeLabel; + // private final WLabel typeLabel; private WButton setButton; - @SuppressWarnings("MethodCallSideOnly") public WFormulaListItem(ItemStack journal, Item formula, Hand hand) { super(); this.journal = journal; @@ -53,12 +51,12 @@ public WFormulaListItem(ItemStack journal, Item formula, Hand hand) { setButton.setAlignment(HorizontalAlignment.CENTER); setButton.setParent(this); add( - setButton, - (8 * AoAHandlers.BASIS) - 8, - -4, - AoAHandlers.BASIS + 2, - AoAHandlers.BASIS + 2 - ); + setButton, + (8 * AoAHandlers.BASIS) - 8, + -4, + AoAHandlers.BASIS + 2, + AoAHandlers.BASIS + 2 + ); setButton.setOnClick(() -> { AoAClientNetworking.sendJournalSelectPacket(Registry.ITEM.getId(this.formula), hand); }); diff --git a/src/main/java/dev/cafeteria/artofalchemy/gui/widget/WItemScalable.java b/src/main/java/dev/cafeteria/artofalchemy/gui/widget/WItemScalable.java new file mode 100644 index 0000000..0a1c7ee --- /dev/null +++ b/src/main/java/dev/cafeteria/artofalchemy/gui/widget/WItemScalable.java @@ -0,0 +1,39 @@ +package dev.cafeteria.artofalchemy.gui.widget; + +import java.util.List; + +import io.github.cottonmc.cotton.gui.widget.WItem; +import net.minecraft.item.ItemConvertible; +import net.minecraft.item.ItemStack; +import net.minecraft.tag.Tag; + +public class WItemScalable extends WItem { + public WItemScalable(List items) { + super(items); + } + + public WItemScalable(Tag tag) { + super(tag); + } + + public WItemScalable(ItemStack stack) { + super(stack); + } + + // @Environment(EnvType.CLIENT) + // @Override + // public void paintBackground(int x, int y, int mouseX, int mouseY) { + // RenderSystem.pushMatrix(); + // RenderSystem.enableDepthTest(); + // RenderSystem.translatef(x, y, 0); + // RenderSystem.scalef((1.0f * width) / 16, (1.0f * height) / 16, 1.0f); + // + // MinecraftClient mc = MinecraftClient.getInstance(); + // ItemRenderer renderer = mc.getItemRenderer(); + // renderer.zOffset = 100f; + // renderer.renderGuiItem(mc.player, getItems().get(0), getWidth() / 2 - 9, getHeight() / 2 - 9); + // renderer.zOffset = 0f; + // + // RenderSystem.popMatrix(); + // } +} diff --git a/src/main/java/com/cumulusmc/artofalchemy/integration/AoAxModMenu.java b/src/main/java/dev/cafeteria/artofalchemy/integration/AoAxModMenu.java similarity index 84% rename from src/main/java/com/cumulusmc/artofalchemy/integration/AoAxModMenu.java rename to src/main/java/dev/cafeteria/artofalchemy/integration/AoAxModMenu.java index 998e59a..6315f5b 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/integration/AoAxModMenu.java +++ b/src/main/java/dev/cafeteria/artofalchemy/integration/AoAxModMenu.java @@ -1,8 +1,9 @@ -package com.cumulusmc.artofalchemy.integration; +package dev.cafeteria.artofalchemy.integration; + +import dev.cafeteria.artofalchemy.AoAConfig; import io.github.prospector.modmenu.api.ConfigScreenFactory; import io.github.prospector.modmenu.api.ModMenuApi; -import com.cumulusmc.artofalchemy.AoAConfig; import me.shedaniel.autoconfig.AutoConfig; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; diff --git a/src/main/java/com/cumulusmc/artofalchemy/item/AbstractItemFormula.java b/src/main/java/dev/cafeteria/artofalchemy/item/AbstractItemFormula.java similarity index 80% rename from src/main/java/com/cumulusmc/artofalchemy/item/AbstractItemFormula.java rename to src/main/java/dev/cafeteria/artofalchemy/item/AbstractItemFormula.java index 1a2125d..3c83421 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/item/AbstractItemFormula.java +++ b/src/main/java/dev/cafeteria/artofalchemy/item/AbstractItemFormula.java @@ -1,4 +1,4 @@ -package com.cumulusmc.artofalchemy.item; +package dev.cafeteria.artofalchemy.item; import net.minecraft.item.Item; diff --git a/src/main/java/com/cumulusmc/artofalchemy/item/AoAItems.java b/src/main/java/dev/cafeteria/artofalchemy/item/AoAItems.java similarity index 88% rename from src/main/java/com/cumulusmc/artofalchemy/item/AoAItems.java rename to src/main/java/dev/cafeteria/artofalchemy/item/AoAItems.java index 029568f..bd03835 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/item/AoAItems.java +++ b/src/main/java/dev/cafeteria/artofalchemy/item/AoAItems.java @@ -1,12 +1,15 @@ -package com.cumulusmc.artofalchemy.item; - -import com.cumulusmc.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityPipe; -import com.cumulusmc.artofalchemy.util.MateriaRank; -import com.cumulusmc.artofalchemy.block.BlockPipe; -import com.cumulusmc.artofalchemy.essentia.Essentia; -import com.cumulusmc.artofalchemy.essentia.RegistryEssentia; -import com.cumulusmc.artofalchemy.fluid.AoAFluids; +package dev.cafeteria.artofalchemy.item; + +import java.util.HashMap; +import java.util.Map; + +import dev.cafeteria.artofalchemy.ArtOfAlchemy; +import dev.cafeteria.artofalchemy.blockentity.BlockEntityPipe; +import dev.cafeteria.artofalchemy.essentia.Essentia; +import dev.cafeteria.artofalchemy.essentia.RegistryEssentia; +import dev.cafeteria.artofalchemy.fluid.AoAFluids; +import dev.cafeteria.artofalchemy.util.MateriaRank; + import net.minecraft.item.BucketItem; import net.minecraft.item.Item; import net.minecraft.item.Item.Settings; @@ -15,9 +18,6 @@ import net.minecraft.util.Rarity; import net.minecraft.util.registry.Registry; -import java.util.HashMap; -import java.util.Map; - public class AoAItems { public static final Item ESSENTIA_PORT = new ItemEssentiaPort(defaults(), BlockEntityPipe.IOFace.PASSIVE); diff --git a/src/main/java/com/cumulusmc/artofalchemy/item/BlockItemMateria.java b/src/main/java/dev/cafeteria/artofalchemy/item/BlockItemMateria.java similarity index 80% rename from src/main/java/com/cumulusmc/artofalchemy/item/BlockItemMateria.java rename to src/main/java/dev/cafeteria/artofalchemy/item/BlockItemMateria.java index 650d776..b0e51f8 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/item/BlockItemMateria.java +++ b/src/main/java/dev/cafeteria/artofalchemy/item/BlockItemMateria.java @@ -1,7 +1,8 @@ -package com.cumulusmc.artofalchemy.item; +package dev.cafeteria.artofalchemy.item; + +import dev.cafeteria.artofalchemy.block.BlockMateria; +import dev.cafeteria.artofalchemy.util.MateriaRank; -import com.cumulusmc.artofalchemy.util.MateriaRank; -import com.cumulusmc.artofalchemy.block.BlockMateria; import net.minecraft.item.BlockItem; import net.minecraft.item.ItemStack; diff --git a/src/main/java/com/cumulusmc/artofalchemy/item/ItemAlchemyFormula.java b/src/main/java/dev/cafeteria/artofalchemy/item/ItemAlchemyFormula.java similarity index 97% rename from src/main/java/com/cumulusmc/artofalchemy/item/ItemAlchemyFormula.java rename to src/main/java/dev/cafeteria/artofalchemy/item/ItemAlchemyFormula.java index 72fa796..ed98709 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/item/ItemAlchemyFormula.java +++ b/src/main/java/dev/cafeteria/artofalchemy/item/ItemAlchemyFormula.java @@ -1,4 +1,6 @@ -package com.cumulusmc.artofalchemy.item; +package dev.cafeteria.artofalchemy.item; + +import java.util.List; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; @@ -15,8 +17,6 @@ import net.minecraft.util.registry.Registry; import net.minecraft.world.World; -import java.util.List; - public class ItemAlchemyFormula extends AbstractItemFormula { public ItemAlchemyFormula(Settings settings) { diff --git a/src/main/java/com/cumulusmc/artofalchemy/item/ItemEssentiaPort.java b/src/main/java/dev/cafeteria/artofalchemy/item/ItemEssentiaPort.java similarity index 69% rename from src/main/java/com/cumulusmc/artofalchemy/item/ItemEssentiaPort.java rename to src/main/java/dev/cafeteria/artofalchemy/item/ItemEssentiaPort.java index f678677..1e91ad6 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/item/ItemEssentiaPort.java +++ b/src/main/java/dev/cafeteria/artofalchemy/item/ItemEssentiaPort.java @@ -1,7 +1,7 @@ -package com.cumulusmc.artofalchemy.item; +package dev.cafeteria.artofalchemy.item; -import com.cumulusmc.artofalchemy.block.AoABlocks; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityPipe; +import dev.cafeteria.artofalchemy.block.AoABlocks; +import dev.cafeteria.artofalchemy.blockentity.BlockEntityPipe; import net.minecraft.block.BlockState; import net.minecraft.entity.player.PlayerEntity; @@ -24,14 +24,14 @@ public ItemEssentiaPort(Settings settings, BlockEntityPipe.IOFace ioFace) { public static Item getItem(BlockEntityPipe.IOFace ioFace) { switch (ioFace) { - case INSERTER: - return AoAItems.ESSENTIA_INSERTER; - case EXTRACTOR: - return AoAItems.ESSENTIA_EXTRACTOR; - case PASSIVE: - return AoAItems.ESSENTIA_PORT; - default: - return Items.AIR; + case INSERTER: + return AoAItems.ESSENTIA_INSERTER; + case EXTRACTOR: + return AoAItems.ESSENTIA_EXTRACTOR; + case PASSIVE: + return AoAItems.ESSENTIA_PORT; + default: + return Items.AIR; } } @@ -44,14 +44,14 @@ public ActionResult useOnBlock(ItemUsageContext context) { PlayerEntity player = context.getPlayer(); if (state.getBlock() == AoABlocks.PIPE) { return state.onUse(world, player, context.getHand(), - new BlockHitResult(context.getHitPos(), side, pos, context.hitsInsideBlock())); + new BlockHitResult(context.getHitPos(), side, pos, context.hitsInsideBlock())); } else { BlockPos offPos = pos.offset(side); BlockState offState = world.getBlockState(offPos); if (offState.getBlock() == AoABlocks.PIPE) { return offState.onUse(world, player, context.getHand(), - new BlockHitResult(context.getHitPos(), player.isSneaking() ? side : side.getOpposite(), - offPos, context.hitsInsideBlock())); + new BlockHitResult(context.getHitPos(), player.isSneaking() ? side : side.getOpposite(), + offPos, context.hitsInsideBlock())); } } return super.useOnBlock(context); diff --git a/src/main/java/com/cumulusmc/artofalchemy/item/ItemEssentiaVessel.java b/src/main/java/dev/cafeteria/artofalchemy/item/ItemEssentiaVessel.java similarity index 92% rename from src/main/java/com/cumulusmc/artofalchemy/item/ItemEssentiaVessel.java rename to src/main/java/dev/cafeteria/artofalchemy/item/ItemEssentiaVessel.java index f00d3d5..261703c 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/item/ItemEssentiaVessel.java +++ b/src/main/java/dev/cafeteria/artofalchemy/item/ItemEssentiaVessel.java @@ -1,9 +1,13 @@ -package com.cumulusmc.artofalchemy.item; +package dev.cafeteria.artofalchemy.item; + +import java.util.HashSet; +import java.util.List; + +import dev.cafeteria.artofalchemy.AoAConfig; +import dev.cafeteria.artofalchemy.essentia.Essentia; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; +import dev.cafeteria.artofalchemy.transport.HasEssentia; -import com.cumulusmc.artofalchemy.AoAConfig; -import com.cumulusmc.artofalchemy.essentia.Essentia; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.transport.HasEssentia; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.fabricmc.fabric.api.util.NbtType; @@ -18,14 +22,15 @@ import net.minecraft.sound.SoundEvents; import net.minecraft.text.Text; import net.minecraft.text.TranslatableText; -import net.minecraft.util.*; +import net.minecraft.util.ActionResult; +import net.minecraft.util.Formatting; +import net.minecraft.util.Hand; +import net.minecraft.util.TypedActionResult; +import net.minecraft.util.Util; import net.minecraft.util.math.BlockPos; import net.minecraft.util.registry.Registry; import net.minecraft.world.World; -import java.util.HashSet; -import java.util.List; - public class ItemEssentiaVessel extends Item { public final int capacity; @@ -202,7 +207,7 @@ public void appendTooltip(ItemStack stack, World world, List tooltip, Tool } else { for (Essentia essentia : container.getWhitelist()) { tooltip.add(new TranslatableText(prefix + "component_inf", - essentia.getName()).formatted(Formatting.GOLD)); + essentia.getName()).formatted(Formatting.GOLD)); } } } @@ -211,7 +216,7 @@ public void appendTooltip(ItemStack stack, World world, List tooltip, Tool if (container.isWhitelistEnabled() && container.getWhitelist().size() == 1) { for (Essentia essentia : container.getWhitelist()) { tooltip.add(new TranslatableText(prefix + "single_unlim", - essentia.getName(), container.getCount(essentia)).formatted(Formatting.GREEN)); + essentia.getName(), container.getCount(essentia)).formatted(Formatting.GREEN)); } } else if (container.isWhitelistEnabled() && container.getWhitelist().isEmpty()) { tooltip.add(new TranslatableText(prefix + "empty").formatted(Formatting.GRAY)); @@ -229,17 +234,17 @@ public void appendTooltip(ItemStack stack, World world, List tooltip, Tool if (container.isWhitelistEnabled() && container.getWhitelist().size() == 1) { for (Essentia essentia : container.getWhitelist()) { tooltip.add(new TranslatableText(prefix + "single", essentia.getName(), - container.getCount(essentia), container.getCapacity()).formatted(Formatting.GREEN)); + container.getCount(essentia), container.getCapacity()).formatted(Formatting.GREEN)); } } else if (container.isWhitelistEnabled() && container.getWhitelist().isEmpty()) { tooltip.add(new TranslatableText(prefix + "empty").formatted(Formatting.GRAY)); } else { tooltip.add(new TranslatableText(prefix + "mixed", container.getCount(), - container.getCapacity()).formatted(Formatting.AQUA)); + container.getCapacity()).formatted(Formatting.AQUA)); for (Essentia essentia : container.getContents().sortedList()) { if (container.getCount(essentia) != 0 && container.whitelisted(essentia)) { tooltip.add(new TranslatableText(prefix + "component", - essentia.getName(), container.getCount(essentia)).formatted(Formatting.GOLD)); + essentia.getName(), container.getCount(essentia)).formatted(Formatting.GOLD)); } } } diff --git a/src/main/java/com/cumulusmc/artofalchemy/item/ItemJournal.java b/src/main/java/dev/cafeteria/artofalchemy/item/ItemJournal.java similarity index 97% rename from src/main/java/com/cumulusmc/artofalchemy/item/ItemJournal.java rename to src/main/java/dev/cafeteria/artofalchemy/item/ItemJournal.java index 044257d..360b32b 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/item/ItemJournal.java +++ b/src/main/java/dev/cafeteria/artofalchemy/item/ItemJournal.java @@ -1,6 +1,10 @@ -package com.cumulusmc.artofalchemy.item; +package dev.cafeteria.artofalchemy.item; + +import java.util.ArrayList; +import java.util.List; + +import dev.cafeteria.artofalchemy.gui.handler.HandlerJournal; -import com.cumulusmc.artofalchemy.gui.handler.HandlerJournal; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.fabricmc.fabric.api.screenhandler.v1.ExtendedScreenHandlerFactory; @@ -27,9 +31,6 @@ import net.minecraft.util.registry.Registry; import net.minecraft.world.World; -import java.util.ArrayList; -import java.util.List; - public class ItemJournal extends AbstractItemFormula { public ItemJournal(Settings settings) { diff --git a/src/main/java/com/cumulusmc/artofalchemy/item/ItemMateria.java b/src/main/java/dev/cafeteria/artofalchemy/item/ItemMateria.java similarity index 76% rename from src/main/java/com/cumulusmc/artofalchemy/item/ItemMateria.java rename to src/main/java/dev/cafeteria/artofalchemy/item/ItemMateria.java index 8100e36..78f8637 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/item/ItemMateria.java +++ b/src/main/java/dev/cafeteria/artofalchemy/item/ItemMateria.java @@ -1,6 +1,7 @@ -package com.cumulusmc.artofalchemy.item; +package dev.cafeteria.artofalchemy.item; + +import dev.cafeteria.artofalchemy.util.MateriaRank; -import com.cumulusmc.artofalchemy.util.MateriaRank; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; @@ -27,7 +28,7 @@ public int getTier() { @Override public boolean hasGlint(ItemStack stack) { - return (stack.hasEnchantments() || getTier() >= 6); + return (stack.hasEnchantments() || getTier() >= 6); } } diff --git a/src/main/java/com/cumulusmc/artofalchemy/mixin/MixinClientRecipeBook.java b/src/main/java/dev/cafeteria/artofalchemy/mixin/MixinClientRecipeBook.java similarity index 91% rename from src/main/java/com/cumulusmc/artofalchemy/mixin/MixinClientRecipeBook.java rename to src/main/java/dev/cafeteria/artofalchemy/mixin/MixinClientRecipeBook.java index 743a4ac..86dcadb 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/mixin/MixinClientRecipeBook.java +++ b/src/main/java/dev/cafeteria/artofalchemy/mixin/MixinClientRecipeBook.java @@ -1,16 +1,18 @@ -package com.cumulusmc.artofalchemy.mixin; +package dev.cafeteria.artofalchemy.mixin; + +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import dev.cafeteria.artofalchemy.recipe.AoARecipes; -import com.cumulusmc.artofalchemy.recipe.AoARecipes; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.client.recipebook.ClientRecipeBook; import net.minecraft.client.recipebook.RecipeBookGroup; import net.minecraft.recipe.Recipe; import net.minecraft.recipe.RecipeType; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; @Environment(EnvType.CLIENT) @Mixin(ClientRecipeBook.class) diff --git a/src/main/java/com/cumulusmc/artofalchemy/mixin/MixinRecipeManager.java b/src/main/java/dev/cafeteria/artofalchemy/mixin/MixinRecipeManager.java similarity index 89% rename from src/main/java/com/cumulusmc/artofalchemy/mixin/MixinRecipeManager.java rename to src/main/java/dev/cafeteria/artofalchemy/mixin/MixinRecipeManager.java index af3f2dd..051dedf 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/mixin/MixinRecipeManager.java +++ b/src/main/java/dev/cafeteria/artofalchemy/mixin/MixinRecipeManager.java @@ -1,15 +1,15 @@ -package com.cumulusmc.artofalchemy.mixin; +package dev.cafeteria.artofalchemy.mixin; import java.util.Optional; -import com.cumulusmc.artofalchemy.item.AoAItems; - import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; import org.spongepowered.asm.mixin.injection.callback.LocalCapture; +import dev.cafeteria.artofalchemy.item.AoAItems; + import net.minecraft.inventory.Inventory; import net.minecraft.item.ItemStack; import net.minecraft.recipe.Recipe; @@ -22,7 +22,7 @@ public abstract class MixinRecipeManager { @Inject(at = @At(value = "RETURN", ordinal = 0), method = "getRemainingStacks", cancellable = true, - locals = LocalCapture.CAPTURE_FAILHARD) + locals = LocalCapture.CAPTURE_FAILHARD) private > void replaceRemainingStacks(RecipeType recipeType, C inventory, World world, CallbackInfoReturnable> info, Optional optional) { if (optional.get().getOutput().getItem() == AoAItems.ALKAHEST_BUCKET) { diff --git a/src/main/java/com/cumulusmc/artofalchemy/mixin/RegistryAccessor.java b/src/main/java/dev/cafeteria/artofalchemy/mixin/RegistryAccessor.java similarity index 93% rename from src/main/java/com/cumulusmc/artofalchemy/mixin/RegistryAccessor.java rename to src/main/java/dev/cafeteria/artofalchemy/mixin/RegistryAccessor.java index 96cc9b0..e640221 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/mixin/RegistryAccessor.java +++ b/src/main/java/dev/cafeteria/artofalchemy/mixin/RegistryAccessor.java @@ -1,13 +1,15 @@ -package com.cumulusmc.artofalchemy.mixin; +package dev.cafeteria.artofalchemy.mixin; + +import java.util.function.Supplier; + +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.gen.Invoker; import com.mojang.serialization.Lifecycle; + import net.minecraft.util.registry.MutableRegistry; import net.minecraft.util.registry.Registry; import net.minecraft.util.registry.RegistryKey; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.gen.Invoker; - -import java.util.function.Supplier; // Thanks, UpcraftLP! @Mixin(Registry.class) diff --git a/src/main/java/com/cumulusmc/artofalchemy/network/AoAClientNetworking.java b/src/main/java/dev/cafeteria/artofalchemy/network/AoAClientNetworking.java similarity index 68% rename from src/main/java/com/cumulusmc/artofalchemy/network/AoAClientNetworking.java rename to src/main/java/dev/cafeteria/artofalchemy/network/AoAClientNetworking.java index 629fa64..06cb569 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/network/AoAClientNetworking.java +++ b/src/main/java/dev/cafeteria/artofalchemy/network/AoAClientNetworking.java @@ -1,11 +1,12 @@ -package com.cumulusmc.artofalchemy.network; +package dev.cafeteria.artofalchemy.network; + +import dev.cafeteria.artofalchemy.block.BlockPipe; +import dev.cafeteria.artofalchemy.blockentity.BlockEntityPipe; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; +import dev.cafeteria.artofalchemy.essentia.EssentiaStack; +import dev.cafeteria.artofalchemy.gui.screen.EssentiaScreen; +import dev.cafeteria.artofalchemy.gui.screen.ScreenJournal; -import com.cumulusmc.artofalchemy.block.BlockPipe; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityPipe; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.essentia.EssentiaStack; -import com.cumulusmc.artofalchemy.gui.screen.EssentiaScreen; -import com.cumulusmc.artofalchemy.gui.screen.ScreenJournal; import io.netty.buffer.Unpooled; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; @@ -29,18 +30,19 @@ public class AoAClientNetworking { @Environment(EnvType.CLIENT) public static void initializeClientNetworking() { ClientSidePacketRegistry.INSTANCE.register(AoANetworking.ESSENTIA_PACKET, - (ctx, data) -> { - int essentiaId = data.readInt(); - NbtCompound tag = data.readNbt(); - BlockPos pos = data.readBlockPos(); - ctx.getTaskQueue().execute(() -> { - EssentiaContainer container = new EssentiaContainer(tag); - Screen screen = MinecraftClient.getInstance().currentScreen; - if (screen instanceof EssentiaScreen) { - ((EssentiaScreen) screen).updateEssentia(essentiaId, container, pos); - } + (ctx, data) -> { + int essentiaId = data.readInt(); + NbtCompound tag = data.readNbt(); + BlockPos pos = data.readBlockPos(); + ctx.getTaskQueue().execute(() -> { + EssentiaContainer container = new EssentiaContainer(tag); + MinecraftClient client = MinecraftClient.getInstance(); + Screen screen = client.currentScreen; + if (screen instanceof EssentiaScreen) { + ((EssentiaScreen) screen).updateEssentia(essentiaId, container, pos); + } + }); }); - }); ClientSidePacketRegistry.INSTANCE.register(AoANetworking.ESSENTIA_PACKET_REQ, (ctx, data) -> { @@ -51,7 +53,8 @@ public static void initializeClientNetworking() { ctx.getTaskQueue().execute(() -> { EssentiaContainer container = new EssentiaContainer(essentiaTag); EssentiaStack required = new EssentiaStack(requiredTag); - Screen screen = MinecraftClient.getInstance().currentScreen; + MinecraftClient client = MinecraftClient.getInstance(); + Screen screen = client.currentScreen; if (screen instanceof EssentiaScreen) { ((EssentiaScreen) screen).updateEssentia(essentiaId, container, required, pos); } @@ -62,7 +65,8 @@ public static void initializeClientNetworking() { (ctx, data) -> { ItemStack journal = data.readItemStack(); ctx.getTaskQueue().execute(() -> { - Screen screen = MinecraftClient.getInstance().currentScreen; + MinecraftClient client = MinecraftClient.getInstance(); + Screen screen = client.currentScreen; if (screen instanceof ScreenJournal) { ((ScreenJournal) screen).refresh(journal); } @@ -75,7 +79,8 @@ public static void initializeClientNetworking() { BlockEntityPipe.IOFace face = data.readEnumConstant(BlockEntityPipe.IOFace.class); BlockPos pos = data.readBlockPos(); ctx.getTaskQueue().execute(() -> { - World world = MinecraftClient.getInstance().world; + MinecraftClient client = MinecraftClient.getInstance(); + World world = client.world; BlockEntity be = world.getBlockEntity(pos); if (be instanceof BlockEntityPipe) { ((BlockEntityPipe) be).setFace(dir, face); diff --git a/src/main/java/com/cumulusmc/artofalchemy/network/AoANetworking.java b/src/main/java/dev/cafeteria/artofalchemy/network/AoANetworking.java similarity index 88% rename from src/main/java/com/cumulusmc/artofalchemy/network/AoANetworking.java rename to src/main/java/dev/cafeteria/artofalchemy/network/AoANetworking.java index 8beccae..b919282 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/network/AoANetworking.java +++ b/src/main/java/dev/cafeteria/artofalchemy/network/AoANetworking.java @@ -1,10 +1,13 @@ -package com.cumulusmc.artofalchemy.network; +package dev.cafeteria.artofalchemy.network; + +import java.util.stream.Stream; + +import dev.cafeteria.artofalchemy.ArtOfAlchemy; +import dev.cafeteria.artofalchemy.blockentity.BlockEntityPipe; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; +import dev.cafeteria.artofalchemy.essentia.EssentiaStack; +import dev.cafeteria.artofalchemy.item.ItemJournal; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityPipe; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.essentia.EssentiaStack; -import com.cumulusmc.artofalchemy.item.ItemJournal; import io.netty.buffer.Unpooled; import net.fabricmc.fabric.api.network.ServerSidePacketRegistry; import net.fabricmc.fabric.api.server.PlayerStream; @@ -17,8 +20,6 @@ import net.minecraft.util.math.Direction; import net.minecraft.world.World; -import java.util.stream.Stream; - public class AoANetworking { public static final Identifier ESSENTIA_PACKET = ArtOfAlchemy.id("update_essentia"); @@ -55,7 +56,7 @@ public static void sendEssentiaPacket(World world, BlockPos pos, int essentiaId, } public static void sendEssentiaPacketWithRequirements(World world, BlockPos pos, int essentiaId, - EssentiaContainer container, EssentiaStack required) { + EssentiaContainer container, EssentiaStack required) { Stream players = PlayerStream.watching(world, pos); PacketByteBuf data = new PacketByteBuf(Unpooled.buffer()); diff --git a/src/main/java/com/cumulusmc/artofalchemy/recipe/AoARecipes.java b/src/main/java/dev/cafeteria/artofalchemy/recipe/AoARecipes.java similarity index 88% rename from src/main/java/com/cumulusmc/artofalchemy/recipe/AoARecipes.java rename to src/main/java/dev/cafeteria/artofalchemy/recipe/AoARecipes.java index e3de303..bf62498 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/recipe/AoARecipes.java +++ b/src/main/java/dev/cafeteria/artofalchemy/recipe/AoARecipes.java @@ -1,6 +1,7 @@ -package com.cumulusmc.artofalchemy.recipe; +package dev.cafeteria.artofalchemy.recipe; + +import dev.cafeteria.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; import net.minecraft.recipe.Recipe; import net.minecraft.recipe.RecipeSerializer; import net.minecraft.recipe.RecipeType; @@ -36,11 +37,12 @@ public static void registerRecipes() { public static > RecipeType register(String name) { return Registry.register(Registry.RECIPE_TYPE, ArtOfAlchemy.id(name), - new RecipeType() { - public String toString() { - return ArtOfAlchemy.id(name).toString(); - } - }); + new RecipeType() { + @Override + public String toString() { + return ArtOfAlchemy.id(name).toString(); + } + }); } public static , T extends Recipe> S register(String name, S serializer) { diff --git a/src/main/java/com/cumulusmc/artofalchemy/recipe/RecipeCalcination.java b/src/main/java/dev/cafeteria/artofalchemy/recipe/RecipeCalcination.java similarity index 95% rename from src/main/java/com/cumulusmc/artofalchemy/recipe/RecipeCalcination.java rename to src/main/java/dev/cafeteria/artofalchemy/recipe/RecipeCalcination.java index 2a84717..3506151 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/recipe/RecipeCalcination.java +++ b/src/main/java/dev/cafeteria/artofalchemy/recipe/RecipeCalcination.java @@ -1,6 +1,7 @@ -package com.cumulusmc.artofalchemy.recipe; +package dev.cafeteria.artofalchemy.recipe; + +import dev.cafeteria.artofalchemy.block.AoABlocks; -import com.cumulusmc.artofalchemy.block.AoABlocks; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.inventory.Inventory; diff --git a/src/main/java/com/cumulusmc/artofalchemy/recipe/RecipeDissolution.java b/src/main/java/dev/cafeteria/artofalchemy/recipe/RecipeDissolution.java similarity index 93% rename from src/main/java/com/cumulusmc/artofalchemy/recipe/RecipeDissolution.java rename to src/main/java/dev/cafeteria/artofalchemy/recipe/RecipeDissolution.java index 5611dd0..89729e5 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/recipe/RecipeDissolution.java +++ b/src/main/java/dev/cafeteria/artofalchemy/recipe/RecipeDissolution.java @@ -1,8 +1,9 @@ -package com.cumulusmc.artofalchemy.recipe; +package dev.cafeteria.artofalchemy.recipe; -import com.cumulusmc.artofalchemy.block.AoABlocks; -import com.cumulusmc.artofalchemy.essentia.EssentiaStack; +import dev.cafeteria.artofalchemy.block.AoABlocks; +import dev.cafeteria.artofalchemy.essentia.EssentiaStack; + import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.inventory.Inventory; diff --git a/src/main/java/com/cumulusmc/artofalchemy/recipe/RecipeProjection.java b/src/main/java/dev/cafeteria/artofalchemy/recipe/RecipeProjection.java similarity index 95% rename from src/main/java/com/cumulusmc/artofalchemy/recipe/RecipeProjection.java rename to src/main/java/dev/cafeteria/artofalchemy/recipe/RecipeProjection.java index 5e84fe3..b58d15c 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/recipe/RecipeProjection.java +++ b/src/main/java/dev/cafeteria/artofalchemy/recipe/RecipeProjection.java @@ -1,7 +1,8 @@ -package com.cumulusmc.artofalchemy.recipe; +package dev.cafeteria.artofalchemy.recipe; -import com.cumulusmc.artofalchemy.block.AoABlocks; +import dev.cafeteria.artofalchemy.block.AoABlocks; + import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.inventory.Inventory; diff --git a/src/main/java/com/cumulusmc/artofalchemy/recipe/RecipeSynthesis.java b/src/main/java/dev/cafeteria/artofalchemy/recipe/RecipeSynthesis.java similarity index 91% rename from src/main/java/com/cumulusmc/artofalchemy/recipe/RecipeSynthesis.java rename to src/main/java/dev/cafeteria/artofalchemy/recipe/RecipeSynthesis.java index ee68fb6..695965d 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/recipe/RecipeSynthesis.java +++ b/src/main/java/dev/cafeteria/artofalchemy/recipe/RecipeSynthesis.java @@ -1,9 +1,10 @@ -package com.cumulusmc.artofalchemy.recipe; +package dev.cafeteria.artofalchemy.recipe; -import com.cumulusmc.artofalchemy.util.AoAHelper; -import com.cumulusmc.artofalchemy.block.AoABlocks; -import com.cumulusmc.artofalchemy.essentia.EssentiaStack; +import dev.cafeteria.artofalchemy.block.AoABlocks; +import dev.cafeteria.artofalchemy.essentia.EssentiaStack; +import dev.cafeteria.artofalchemy.util.AoAHelper; + import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.inventory.Inventory; diff --git a/src/main/java/com/cumulusmc/artofalchemy/recipe/SerializerCalcination.java b/src/main/java/dev/cafeteria/artofalchemy/recipe/SerializerCalcination.java similarity index 97% rename from src/main/java/com/cumulusmc/artofalchemy/recipe/SerializerCalcination.java rename to src/main/java/dev/cafeteria/artofalchemy/recipe/SerializerCalcination.java index e4a6223..69a753f 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/recipe/SerializerCalcination.java +++ b/src/main/java/dev/cafeteria/artofalchemy/recipe/SerializerCalcination.java @@ -1,6 +1,7 @@ -package com.cumulusmc.artofalchemy.recipe; +package dev.cafeteria.artofalchemy.recipe; import com.google.gson.JsonObject; + import net.minecraft.item.ItemStack; import net.minecraft.network.PacketByteBuf; import net.minecraft.recipe.Ingredient; diff --git a/src/main/java/com/cumulusmc/artofalchemy/recipe/SerializerDissolution.java b/src/main/java/dev/cafeteria/artofalchemy/recipe/SerializerDissolution.java similarity index 94% rename from src/main/java/com/cumulusmc/artofalchemy/recipe/SerializerDissolution.java rename to src/main/java/dev/cafeteria/artofalchemy/recipe/SerializerDissolution.java index ccfd395..c69b648 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/recipe/SerializerDissolution.java +++ b/src/main/java/dev/cafeteria/artofalchemy/recipe/SerializerDissolution.java @@ -1,7 +1,8 @@ -package com.cumulusmc.artofalchemy.recipe; +package dev.cafeteria.artofalchemy.recipe; +import dev.cafeteria.artofalchemy.essentia.EssentiaStack; import com.google.gson.JsonObject; -import com.cumulusmc.artofalchemy.essentia.EssentiaStack; + import net.minecraft.item.ItemStack; import net.minecraft.network.PacketByteBuf; import net.minecraft.recipe.Ingredient; diff --git a/src/main/java/com/cumulusmc/artofalchemy/recipe/SerializerProjection.java b/src/main/java/dev/cafeteria/artofalchemy/recipe/SerializerProjection.java similarity index 97% rename from src/main/java/com/cumulusmc/artofalchemy/recipe/SerializerProjection.java rename to src/main/java/dev/cafeteria/artofalchemy/recipe/SerializerProjection.java index 9ded7bc..c4afc05 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/recipe/SerializerProjection.java +++ b/src/main/java/dev/cafeteria/artofalchemy/recipe/SerializerProjection.java @@ -1,6 +1,7 @@ -package com.cumulusmc.artofalchemy.recipe; +package dev.cafeteria.artofalchemy.recipe; import com.google.gson.JsonObject; + import net.minecraft.item.ItemStack; import net.minecraft.network.PacketByteBuf; import net.minecraft.recipe.Ingredient; diff --git a/src/main/java/com/cumulusmc/artofalchemy/recipe/SerializerSynthesis.java b/src/main/java/dev/cafeteria/artofalchemy/recipe/SerializerSynthesis.java similarity index 93% rename from src/main/java/com/cumulusmc/artofalchemy/recipe/SerializerSynthesis.java rename to src/main/java/dev/cafeteria/artofalchemy/recipe/SerializerSynthesis.java index 507ead7..919b605 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/recipe/SerializerSynthesis.java +++ b/src/main/java/dev/cafeteria/artofalchemy/recipe/SerializerSynthesis.java @@ -1,8 +1,9 @@ -package com.cumulusmc.artofalchemy.recipe; +package dev.cafeteria.artofalchemy.recipe; +import dev.cafeteria.artofalchemy.essentia.EssentiaStack; +import dev.cafeteria.artofalchemy.item.ItemMateria; import com.google.gson.JsonObject; -import com.cumulusmc.artofalchemy.essentia.EssentiaStack; -import com.cumulusmc.artofalchemy.item.ItemMateria; + import net.minecraft.item.Item; import net.minecraft.network.PacketByteBuf; import net.minecraft.recipe.Ingredient; diff --git a/src/main/java/com/cumulusmc/artofalchemy/render/AoARenderers.java b/src/main/java/dev/cafeteria/artofalchemy/render/AoARenderers.java similarity index 81% rename from src/main/java/com/cumulusmc/artofalchemy/render/AoARenderers.java rename to src/main/java/dev/cafeteria/artofalchemy/render/AoARenderers.java index 6b6baa6..4ec51bc 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/render/AoARenderers.java +++ b/src/main/java/dev/cafeteria/artofalchemy/render/AoARenderers.java @@ -1,14 +1,17 @@ -package com.cumulusmc.artofalchemy.render; +package dev.cafeteria.artofalchemy.render; + +import static dev.cafeteria.artofalchemy.item.AoAItems.ESSENTIA_VESSEL; + +import dev.cafeteria.artofalchemy.block.AoABlocks; +import dev.cafeteria.artofalchemy.blockentity.AoABlockEntities; +import dev.cafeteria.artofalchemy.essentia.Essentia; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; +import dev.cafeteria.artofalchemy.essentia.RegistryEssentia; +import dev.cafeteria.artofalchemy.fluid.AoAFluids; +import dev.cafeteria.artofalchemy.item.AoAItems; +import dev.cafeteria.artofalchemy.item.ItemEssentiaVessel; +import dev.cafeteria.artofalchemy.render.model.ModelPipe; -import com.cumulusmc.artofalchemy.block.AoABlocks; -import com.cumulusmc.artofalchemy.blockentity.AoABlockEntities; -import com.cumulusmc.artofalchemy.essentia.Essentia; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.essentia.RegistryEssentia; -import com.cumulusmc.artofalchemy.fluid.AoAFluids; -import com.cumulusmc.artofalchemy.item.AoAItems; -import com.cumulusmc.artofalchemy.item.ItemEssentiaVessel; -import com.cumulusmc.artofalchemy.render.model.ModelPipe; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.fabricmc.fabric.api.blockrenderlayer.v1.BlockRenderLayerMap; @@ -20,14 +23,11 @@ import net.fabricmc.fabric.api.client.rendering.v1.ColorProviderRegistry; import net.fabricmc.fabric.mixin.object.builder.ModelPredicateProviderRegistrySpecificAccessor; import net.minecraft.client.render.RenderLayer; -import net.minecraft.client.render.block.entity.BlockEntityRendererFactory; import net.minecraft.client.render.model.UnbakedModel; import net.minecraft.fluid.Fluid; import net.minecraft.util.Identifier; import net.minecraft.util.math.MathHelper; -import static com.cumulusmc.artofalchemy.item.AoAItems.ESSENTIA_VESSEL; - @Environment(EnvType.CLIENT) public class AoARenderers { diff --git a/src/main/java/com/cumulusmc/artofalchemy/render/RendererFluid.java b/src/main/java/dev/cafeteria/artofalchemy/render/RendererFluid.java similarity index 96% rename from src/main/java/com/cumulusmc/artofalchemy/render/RendererFluid.java rename to src/main/java/dev/cafeteria/artofalchemy/render/RendererFluid.java index 6c8e38c..008f031 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/render/RendererFluid.java +++ b/src/main/java/dev/cafeteria/artofalchemy/render/RendererFluid.java @@ -1,4 +1,6 @@ -package com.cumulusmc.artofalchemy.render; +package dev.cafeteria.artofalchemy.render; + +import java.util.function.Function; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; @@ -21,8 +23,6 @@ import net.minecraft.util.registry.Registry; import net.minecraft.world.BlockRenderView; -import java.util.function.Function; - @Environment(EnvType.CLIENT) public class RendererFluid { @@ -40,7 +40,7 @@ public static void setupFluidRendering(Fluid still, Fluid flowing, Identifier te Sprite[] sprites = { null, null }; ResourceManagerHelper.get(ResourceType.CLIENT_RESOURCES) - .registerReloadListener(new SimpleSynchronousResourceReloadListener() { + .registerReloadListener(new SimpleSynchronousResourceReloadListener() { @Override public void reload(ResourceManager manager) { diff --git a/src/main/java/com/cumulusmc/artofalchemy/render/RendererTank.java b/src/main/java/dev/cafeteria/artofalchemy/render/RendererTank.java similarity index 94% rename from src/main/java/com/cumulusmc/artofalchemy/render/RendererTank.java rename to src/main/java/dev/cafeteria/artofalchemy/render/RendererTank.java index c6c2cef..42057e3 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/render/RendererTank.java +++ b/src/main/java/dev/cafeteria/artofalchemy/render/RendererTank.java @@ -1,9 +1,12 @@ -package com.cumulusmc.artofalchemy.render; +package dev.cafeteria.artofalchemy.render; + +import java.util.Collection; + +import dev.cafeteria.artofalchemy.block.AoABlocks; +import dev.cafeteria.artofalchemy.blockentity.BlockEntityTank; +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; +import dev.cafeteria.artofalchemy.util.AoAHelper; -import com.cumulusmc.artofalchemy.util.AoAHelper; -import com.cumulusmc.artofalchemy.block.AoABlocks; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityTank; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; import net.minecraft.block.BlockState; import net.minecraft.block.entity.BlockEntity; import net.minecraft.client.MinecraftClient; @@ -11,7 +14,6 @@ import net.minecraft.client.render.RenderLayer; import net.minecraft.client.render.VertexConsumer; import net.minecraft.client.render.VertexConsumerProvider; -import net.minecraft.client.render.block.entity.BlockEntityRenderDispatcher; import net.minecraft.client.render.block.entity.BlockEntityRenderer; import net.minecraft.client.render.block.entity.BlockEntityRendererFactory; import net.minecraft.client.texture.Sprite; @@ -22,8 +24,6 @@ import net.minecraft.util.math.Vec3i; import net.minecraft.world.World; -import java.util.Collection; - // Shoutouts to 2xsaiko public class RendererTank implements BlockEntityRenderer { @@ -118,7 +118,7 @@ public void render(BlockEntityTank blockEntity, float tickDelta, MatrixStack mat buffer.vertex(model, max, midY, max).color(r, g, b, a).texture(maxU, maxV).light(light).normal(normal, 0.0f, -1.0f, 0.0f).next(); buffer.vertex(model, max, midY, min).color(r, g, b, a).texture(maxU, minV).light(light).normal(normal, 0.0f, -1.0f, 0.0f).next(); } - } + } } } diff --git a/src/main/java/com/cumulusmc/artofalchemy/render/model/ModelPipe.java b/src/main/java/dev/cafeteria/artofalchemy/render/model/ModelPipe.java similarity index 93% rename from src/main/java/com/cumulusmc/artofalchemy/render/model/ModelPipe.java rename to src/main/java/dev/cafeteria/artofalchemy/render/model/ModelPipe.java index 48bb048..f1ea8c8 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/render/model/ModelPipe.java +++ b/src/main/java/dev/cafeteria/artofalchemy/render/model/ModelPipe.java @@ -1,7 +1,5 @@ -package com.cumulusmc.artofalchemy.render.model; +package dev.cafeteria.artofalchemy.render.model; -import com.mojang.datafixers.util.Pair; -import com.cumulusmc.artofalchemy.blockentity.BlockEntityPipe; import java.util.Arrays; import java.util.Collection; import java.util.Collections; @@ -10,6 +8,10 @@ import java.util.Set; import java.util.function.Function; import java.util.function.Supplier; + +import dev.cafeteria.artofalchemy.blockentity.BlockEntityPipe; +import com.mojang.datafixers.util.Pair; + import net.fabricmc.fabric.api.renderer.v1.Renderer; import net.fabricmc.fabric.api.renderer.v1.RendererAccess; import net.fabricmc.fabric.api.renderer.v1.mesh.Mesh; @@ -28,21 +30,25 @@ import net.minecraft.client.texture.Sprite; import net.minecraft.client.texture.SpriteAtlasTexture; import net.minecraft.client.util.SpriteIdentifier; -import net.minecraft.client.util.math.Vector3d; import net.minecraft.item.ItemStack; import net.minecraft.util.Identifier; -import net.minecraft.util.math.*; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.Direction; +import net.minecraft.util.math.Matrix4f; +import net.minecraft.util.math.Quaternion; +import net.minecraft.util.math.Vec3f; +import net.minecraft.util.math.Vector4f; import net.minecraft.world.BlockRenderView; public class ModelPipe implements UnbakedModel, BakedModel, FabricBakedModel { private static final int DIRECTION_COUNT = Direction.values().length; private static final SpriteIdentifier[] SPRITE_IDS = new SpriteIdentifier[] { - new SpriteIdentifier(SpriteAtlasTexture.BLOCK_ATLAS_TEXTURE, new Identifier("artofalchemy:block/essentia_pipe_core")), - new SpriteIdentifier(SpriteAtlasTexture.BLOCK_ATLAS_TEXTURE, new Identifier("artofalchemy:block/essentia_pipe_tube")), - new SpriteIdentifier(SpriteAtlasTexture.BLOCK_ATLAS_TEXTURE, new Identifier("artofalchemy:block/essentia_pipe_blocker")), - new SpriteIdentifier(SpriteAtlasTexture.BLOCK_ATLAS_TEXTURE, new Identifier("artofalchemy:block/essentia_pipe_sidecap")), - new SpriteIdentifier(SpriteAtlasTexture.BLOCK_ATLAS_TEXTURE, new Identifier("artofalchemy:block/essentia_pipe_endcap")), + new SpriteIdentifier(SpriteAtlasTexture.BLOCK_ATLAS_TEXTURE, new Identifier("artofalchemy:block/essentia_pipe_core")), + new SpriteIdentifier(SpriteAtlasTexture.BLOCK_ATLAS_TEXTURE, new Identifier("artofalchemy:block/essentia_pipe_tube")), + new SpriteIdentifier(SpriteAtlasTexture.BLOCK_ATLAS_TEXTURE, new Identifier("artofalchemy:block/essentia_pipe_blocker")), + new SpriteIdentifier(SpriteAtlasTexture.BLOCK_ATLAS_TEXTURE, new Identifier("artofalchemy:block/essentia_pipe_sidecap")), + new SpriteIdentifier(SpriteAtlasTexture.BLOCK_ATLAS_TEXTURE, new Identifier("artofalchemy:block/essentia_pipe_endcap")), }; private Sprite blockBreakSprite; @@ -437,26 +443,26 @@ public void emitBlockQuads(BlockRenderView blockRenderView, BlockState blockStat final FaceMeshes meshes = faceMeshes[i]; switch (faceConfig[i]) { - case NONE: + case NONE: break; - case CONNECT: + case CONNECT: renderContext.meshConsumer().accept(meshes.tube); break; - case BLOCK: + case BLOCK: renderContext.meshConsumer().accept(meshes.blocker); break; - case INSERTER: + case INSERTER: renderContext.meshConsumer().accept(meshes.inserterPort); break; - case EXTRACTOR: + case EXTRACTOR: renderContext.meshConsumer().accept(meshes.extractorPort); break; - case PASSIVE: + case PASSIVE: renderContext.meshConsumer().accept(meshes.passivePort); break; } diff --git a/src/main/java/com/cumulusmc/artofalchemy/transport/EssentiaNetwork.java b/src/main/java/dev/cafeteria/artofalchemy/transport/EssentiaNetwork.java similarity index 94% rename from src/main/java/com/cumulusmc/artofalchemy/transport/EssentiaNetwork.java rename to src/main/java/dev/cafeteria/artofalchemy/transport/EssentiaNetwork.java index 01d3def..ad22982 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/transport/EssentiaNetwork.java +++ b/src/main/java/dev/cafeteria/artofalchemy/transport/EssentiaNetwork.java @@ -1,5 +1,10 @@ -package com.cumulusmc.artofalchemy.transport; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; +package dev.cafeteria.artofalchemy.transport; +import java.util.HashSet; +import java.util.Set; +import java.util.UUID; + +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; + import net.minecraft.block.Block; import net.minecraft.block.entity.BlockEntity; import net.minecraft.nbt.NbtElement; @@ -8,10 +13,6 @@ import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; -import java.util.HashSet; -import java.util.Set; -import java.util.UUID; - public class EssentiaNetwork { protected final World world; protected final Set positions = new HashSet<>(); @@ -96,15 +97,15 @@ public void rebuildNodes() { passives.clear(); for (NetworkNode node : nodes) { switch (node.getType()) { - case PULL: - pullers.add(node); - break; - case PUSH: - pushers.add(node); - break; - case PASSIVE: - passives.add(node); - break; + case PULL: + pullers.add(node); + break; + case PUSH: + pushers.add(node); + break; + case PASSIVE: + passives.add(node); + break; } } } @@ -123,15 +124,15 @@ public void addNodes(BlockPos pos) { for (NetworkNode node : newNodes) { nodes.add(node); switch (node.getType()) { - case PULL: - pullers.add(node); - break; - case PUSH: - pushers.add(node); - break; - case PASSIVE: - passives.add(node); - break; + case PULL: + pullers.add(node); + break; + case PUSH: + pushers.add(node); + break; + case PASSIVE: + passives.add(node); + break; } } } diff --git a/src/main/java/com/cumulusmc/artofalchemy/transport/EssentiaNetworker.java b/src/main/java/dev/cafeteria/artofalchemy/transport/EssentiaNetworker.java similarity index 94% rename from src/main/java/com/cumulusmc/artofalchemy/transport/EssentiaNetworker.java rename to src/main/java/dev/cafeteria/artofalchemy/transport/EssentiaNetworker.java index 0db6f9b..76fdf07 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/transport/EssentiaNetworker.java +++ b/src/main/java/dev/cafeteria/artofalchemy/transport/EssentiaNetworker.java @@ -1,18 +1,26 @@ -package com.cumulusmc.artofalchemy.transport; +package dev.cafeteria.artofalchemy.transport; + +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.Optional; +import java.util.Set; + +import org.apache.logging.log4j.Level; + +import dev.cafeteria.artofalchemy.AoAConfig; +import dev.cafeteria.artofalchemy.ArtOfAlchemy; -import com.cumulusmc.artofalchemy.AoAConfig; -import com.cumulusmc.artofalchemy.ArtOfAlchemy; import net.fabricmc.fabric.api.util.NbtType; import net.minecraft.block.Block; -import net.minecraft.nbt.*; +import net.minecraft.nbt.NbtCompound; +import net.minecraft.nbt.NbtElement; +import net.minecraft.nbt.NbtInt; import net.minecraft.nbt.NbtList; import net.minecraft.server.world.ServerWorld; import net.minecraft.util.math.BlockPos; import net.minecraft.world.PersistentState; import net.minecraft.world.dimension.DimensionType; -import org.apache.logging.log4j.Level; - -import java.util.*; // Thanks, 2xsaiko! public class EssentiaNetworker extends PersistentState { @@ -97,7 +105,6 @@ public static EssentiaNetworker get(ServerWorld world) { return world.getPersistentStateManager().getOrCreate((tag) -> EssentiaNetworker.fromNbt(world, tag), () -> new EssentiaNetworker(world), getName(world.getDimension())); } - @SuppressWarnings("deprecation") public static String getName(DimensionType dimension) { return "essentia" + dimension.getSuffix(); } diff --git a/src/main/java/com/cumulusmc/artofalchemy/transport/HasAlkahest.java b/src/main/java/dev/cafeteria/artofalchemy/transport/HasAlkahest.java similarity index 84% rename from src/main/java/com/cumulusmc/artofalchemy/transport/HasAlkahest.java rename to src/main/java/dev/cafeteria/artofalchemy/transport/HasAlkahest.java index 7824ef2..db2baae 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/transport/HasAlkahest.java +++ b/src/main/java/dev/cafeteria/artofalchemy/transport/HasAlkahest.java @@ -1,4 +1,4 @@ -package com.cumulusmc.artofalchemy.transport; +package dev.cafeteria.artofalchemy.transport; public interface HasAlkahest { diff --git a/src/main/java/com/cumulusmc/artofalchemy/transport/HasEssentia.java b/src/main/java/dev/cafeteria/artofalchemy/transport/HasEssentia.java similarity index 71% rename from src/main/java/com/cumulusmc/artofalchemy/transport/HasEssentia.java rename to src/main/java/dev/cafeteria/artofalchemy/transport/HasEssentia.java index bc1b3db..01507cc 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/transport/HasEssentia.java +++ b/src/main/java/dev/cafeteria/artofalchemy/transport/HasEssentia.java @@ -1,6 +1,7 @@ -package com.cumulusmc.artofalchemy.transport; +package dev.cafeteria.artofalchemy.transport; + +import dev.cafeteria.artofalchemy.essentia.EssentiaContainer; -import com.cumulusmc.artofalchemy.essentia.EssentiaContainer; import net.minecraft.util.math.Direction; public interface HasEssentia { diff --git a/src/main/java/com/cumulusmc/artofalchemy/transport/NetworkElement.java b/src/main/java/dev/cafeteria/artofalchemy/transport/NetworkElement.java similarity index 96% rename from src/main/java/com/cumulusmc/artofalchemy/transport/NetworkElement.java rename to src/main/java/dev/cafeteria/artofalchemy/transport/NetworkElement.java index 2c6f13f..e52dca1 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/transport/NetworkElement.java +++ b/src/main/java/dev/cafeteria/artofalchemy/transport/NetworkElement.java @@ -1,11 +1,11 @@ -package com.cumulusmc.artofalchemy.transport; +package dev.cafeteria.artofalchemy.transport; + +import java.util.Set; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.Direction; import net.minecraft.world.World; -import java.util.Set; - public interface NetworkElement { boolean hasNodes(World world, BlockPos pos); Set getNodes(World world, BlockPos pos); diff --git a/src/main/java/com/cumulusmc/artofalchemy/transport/NetworkNode.java b/src/main/java/dev/cafeteria/artofalchemy/transport/NetworkNode.java similarity index 96% rename from src/main/java/com/cumulusmc/artofalchemy/transport/NetworkNode.java rename to src/main/java/dev/cafeteria/artofalchemy/transport/NetworkNode.java index 96df546..cda65b1 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/transport/NetworkNode.java +++ b/src/main/java/dev/cafeteria/artofalchemy/transport/NetworkNode.java @@ -1,4 +1,6 @@ -package com.cumulusmc.artofalchemy.transport; +package dev.cafeteria.artofalchemy.transport; + +import java.util.Optional; import net.minecraft.block.entity.BlockEntity; import net.minecraft.util.StringIdentifiable; @@ -6,8 +8,6 @@ import net.minecraft.util.math.Direction; import net.minecraft.world.World; -import java.util.Optional; - public class NetworkNode { private World world; diff --git a/src/main/java/com/cumulusmc/artofalchemy/util/AoAHelper.java b/src/main/java/dev/cafeteria/artofalchemy/util/AoAHelper.java similarity index 91% rename from src/main/java/com/cumulusmc/artofalchemy/util/AoAHelper.java rename to src/main/java/dev/cafeteria/artofalchemy/util/AoAHelper.java index e28efce..cd82f9e 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/util/AoAHelper.java +++ b/src/main/java/dev/cafeteria/artofalchemy/util/AoAHelper.java @@ -1,7 +1,8 @@ -package com.cumulusmc.artofalchemy.util; +package dev.cafeteria.artofalchemy.util; + +import dev.cafeteria.artofalchemy.item.ItemAlchemyFormula; +import dev.cafeteria.artofalchemy.item.ItemJournal; -import com.cumulusmc.artofalchemy.item.ItemAlchemyFormula; -import com.cumulusmc.artofalchemy.item.ItemJournal; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.util.math.MathHelper; diff --git a/src/main/java/com/cumulusmc/artofalchemy/util/AoALoot.java b/src/main/java/dev/cafeteria/artofalchemy/util/AoALoot.java similarity index 90% rename from src/main/java/com/cumulusmc/artofalchemy/util/AoALoot.java rename to src/main/java/dev/cafeteria/artofalchemy/util/AoALoot.java index a2114ef..e6d18c3 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/util/AoALoot.java +++ b/src/main/java/dev/cafeteria/artofalchemy/util/AoALoot.java @@ -1,17 +1,18 @@ -package com.cumulusmc.artofalchemy.util; +package dev.cafeteria.artofalchemy.util; + +import dev.cafeteria.artofalchemy.AoAConfig; +import dev.cafeteria.artofalchemy.item.AoAItems; +import dev.cafeteria.artofalchemy.item.ItemAlchemyFormula; -import com.cumulusmc.artofalchemy.AoAConfig; -import com.cumulusmc.artofalchemy.item.AoAItems; -import com.cumulusmc.artofalchemy.item.ItemAlchemyFormula; import net.fabricmc.fabric.api.loot.v1.FabricLootPoolBuilder; import net.fabricmc.fabric.api.loot.v1.event.LootTableLoadingCallback; import net.minecraft.item.ItemStack; -import net.minecraft.loot.provider.number.ConstantLootNumberProvider; import net.minecraft.loot.LootTables; import net.minecraft.loot.context.LootContext; import net.minecraft.loot.entry.ItemEntry; import net.minecraft.loot.function.LootFunction; import net.minecraft.loot.function.LootFunctionType; +import net.minecraft.loot.provider.number.ConstantLootNumberProvider; import net.minecraft.util.Identifier; public class AoALoot { diff --git a/src/main/java/dev/cafeteria/artofalchemy/util/AoATags.java b/src/main/java/dev/cafeteria/artofalchemy/util/AoATags.java new file mode 100644 index 0000000..33fe6c6 --- /dev/null +++ b/src/main/java/dev/cafeteria/artofalchemy/util/AoATags.java @@ -0,0 +1,13 @@ +package dev.cafeteria.artofalchemy.util; + +import dev.cafeteria.artofalchemy.ArtOfAlchemy; + +import net.fabricmc.fabric.api.tag.TagRegistry; +import net.minecraft.item.Item; +import net.minecraft.tag.Tag; + +public class AoATags { + public static final Tag CONTAINERS = TagRegistry.item(ArtOfAlchemy.id("containers")); + + public static void init() { } +} diff --git a/src/main/java/com/cumulusmc/artofalchemy/util/Chain.java b/src/main/java/dev/cafeteria/artofalchemy/util/Chain.java similarity index 89% rename from src/main/java/com/cumulusmc/artofalchemy/util/Chain.java rename to src/main/java/dev/cafeteria/artofalchemy/util/Chain.java index 51a6bcd..0600a53 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/util/Chain.java +++ b/src/main/java/dev/cafeteria/artofalchemy/util/Chain.java @@ -1,19 +1,21 @@ -package com.cumulusmc.artofalchemy.util; +package dev.cafeteria.artofalchemy.util; -import java.util.*; +import java.util.List; +import java.util.Map; +import java.util.Set; public class Chain { public static ChainMap start(Map map) { - return new ChainMap(map); + return new ChainMap<>(map); } public static ChainList start(List list) { - return new ChainList(list); + return new ChainList<>(list); } public static ChainSet start(Set set) { - return new ChainSet(set); + return new ChainSet<>(set); } public static class ChainMap { diff --git a/src/main/java/com/cumulusmc/artofalchemy/util/FuelHelper.java b/src/main/java/dev/cafeteria/artofalchemy/util/FuelHelper.java similarity index 94% rename from src/main/java/com/cumulusmc/artofalchemy/util/FuelHelper.java rename to src/main/java/dev/cafeteria/artofalchemy/util/FuelHelper.java index 89f8e28..6013e2c 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/util/FuelHelper.java +++ b/src/main/java/dev/cafeteria/artofalchemy/util/FuelHelper.java @@ -1,4 +1,4 @@ -package com.cumulusmc.artofalchemy.util; +package dev.cafeteria.artofalchemy.util; import net.minecraft.block.entity.AbstractFurnaceBlockEntity; import net.minecraft.item.Item; diff --git a/src/main/java/com/cumulusmc/artofalchemy/util/ImplementedInventory.java b/src/main/java/dev/cafeteria/artofalchemy/util/ImplementedInventory.java similarity index 98% rename from src/main/java/com/cumulusmc/artofalchemy/util/ImplementedInventory.java rename to src/main/java/dev/cafeteria/artofalchemy/util/ImplementedInventory.java index 796a482..5d06e5d 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/util/ImplementedInventory.java +++ b/src/main/java/dev/cafeteria/artofalchemy/util/ImplementedInventory.java @@ -1,4 +1,4 @@ -package com.cumulusmc.artofalchemy.util; +package dev.cafeteria.artofalchemy.util; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.inventory.Inventories; diff --git a/src/main/java/com/cumulusmc/artofalchemy/util/MateriaRank.java b/src/main/java/dev/cafeteria/artofalchemy/util/MateriaRank.java similarity index 93% rename from src/main/java/com/cumulusmc/artofalchemy/util/MateriaRank.java rename to src/main/java/dev/cafeteria/artofalchemy/util/MateriaRank.java index 536dd07..476030f 100644 --- a/src/main/java/com/cumulusmc/artofalchemy/util/MateriaRank.java +++ b/src/main/java/dev/cafeteria/artofalchemy/util/MateriaRank.java @@ -1,4 +1,4 @@ -package com.cumulusmc.artofalchemy.util; +package dev.cafeteria.artofalchemy.util; import net.minecraft.util.Rarity; diff --git a/src/main/resources/artofalchemy.mixins.json b/src/main/resources/artofalchemy.mixins.json index d8cf463..fae7ea7 100644 --- a/src/main/resources/artofalchemy.mixins.json +++ b/src/main/resources/artofalchemy.mixins.json @@ -1,7 +1,7 @@ { "required": true, "minVersion": "0.8", - "package": "com.cumulusmc.artofalchemy.mixin", + "package": "dev.cafeteria.artofalchemy.mixin", "compatibilityLevel": "JAVA_8", "mixins": [ "RegistryAccessor", diff --git a/src/main/resources/assets/artofalchemy/blockstates/distillation_aparatus.json b/src/main/resources/assets/artofalchemy/blockstates/distillation_aparatus.json deleted file mode 100644 index 91df8fc..0000000 --- a/src/main/resources/assets/artofalchemy/blockstates/distillation_aparatus.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "variants": { - "lit=false": { - "model": "artofalchemy:block/distillation_aparatus" - }, - "lit=true": { - "model": "artofalchemy:block/distillation_aparatus" - } - } -} diff --git a/src/main/resources/assets/artofalchemy/blockstates/distillation_apparatus.json b/src/main/resources/assets/artofalchemy/blockstates/distillation_apparatus.json new file mode 100644 index 0000000..46de6fa --- /dev/null +++ b/src/main/resources/assets/artofalchemy/blockstates/distillation_apparatus.json @@ -0,0 +1,10 @@ +{ + "variants": { + "lit=false": { + "model": "artofalchemy:block/distillation_apparatus" + }, + "lit=true": { + "model": "artofalchemy:block/distillation_apparatus" + } + } +} diff --git a/src/main/resources/assets/artofalchemy/lang/en_us.json b/src/main/resources/assets/artofalchemy/lang/en_us.json index ef46d73..48116dd 100644 --- a/src/main/resources/assets/artofalchemy/lang/en_us.json +++ b/src/main/resources/assets/artofalchemy/lang/en_us.json @@ -14,7 +14,7 @@ "block.artofalchemy.calcination_furnace": "Calcination Furnace", "block.artofalchemy.dissolution_chamber": "Dissolution Chamber", - "block.artofalchemy.distillation_aparatus": "Distillation Aparatus", + "block.artofalchemy.distillation_apparatus": "Distillation Apparatus", "block.artofalchemy.synthesis_table": "Synthesis Table", "block.artofalchemy.analysis_desk": "Analysis Desk", "block.artofalchemy.calcination_furnace_plus": "Calcination Furnace +", diff --git a/src/main/resources/assets/artofalchemy/models/block/distillation_aparatus.json b/src/main/resources/assets/artofalchemy/models/block/distillation_apparatus.json similarity index 100% rename from src/main/resources/assets/artofalchemy/models/block/distillation_aparatus.json rename to src/main/resources/assets/artofalchemy/models/block/distillation_apparatus.json diff --git a/src/main/resources/assets/artofalchemy/models/item/distillation_aparatus.json b/src/main/resources/assets/artofalchemy/models/item/distillation_aparatus.json deleted file mode 100644 index 493bf77..0000000 --- a/src/main/resources/assets/artofalchemy/models/item/distillation_aparatus.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "artofalchemy:block/distillation_aparatus" -} diff --git a/src/main/resources/assets/artofalchemy/models/item/distillation_apparatus.json b/src/main/resources/assets/artofalchemy/models/item/distillation_apparatus.json new file mode 100644 index 0000000..7bc8a79 --- /dev/null +++ b/src/main/resources/assets/artofalchemy/models/item/distillation_apparatus.json @@ -0,0 +1,3 @@ +{ + "parent": "artofalchemy:block/distillation_apparatus" +} diff --git a/src/main/resources/data/artofalchemy/loot_tables/blocks/distillation_apparatus.json b/src/main/resources/data/artofalchemy/loot_tables/blocks/distillation_apparatus.json new file mode 100644 index 0000000..65229e6 --- /dev/null +++ b/src/main/resources/data/artofalchemy/loot_tables/blocks/distillation_apparatus.json @@ -0,0 +1,20 @@ + { + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "artofalchemy:distillation_apparatus" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] + } + diff --git a/src/main/resources/data/artofalchemy/recipes/calcination/moss.json b/src/main/resources/data/artofalchemy/recipes/calcination/moss.json deleted file mode 100644 index 1350f23..0000000 --- a/src/main/resources/data/artofalchemy/recipes/calcination/moss.json +++ /dev/null @@ -1 +0,0 @@ -{"type":"artofalchemy:calcination","ingredient":{"item":"minecraft:moss"},"result":{"item":"artofalchemy:materia_f","count":1},"factor":1.0} \ No newline at end of file diff --git a/src/main/resources/data/artofalchemy/recipes/calcination/moss_block.json b/src/main/resources/data/artofalchemy/recipes/calcination/moss_block.json new file mode 100644 index 0000000..c9298e0 --- /dev/null +++ b/src/main/resources/data/artofalchemy/recipes/calcination/moss_block.json @@ -0,0 +1 @@ +{"type":"artofalchemy:calcination","ingredient":{"item":"minecraft:moss_block"},"result":{"item":"artofalchemy:materia_f","count":1},"factor":1.0} \ No newline at end of file diff --git a/src/main/resources/data/artofalchemy/recipes/crafting/distillation_apparatus.json b/src/main/resources/data/artofalchemy/recipes/crafting/distillation_apparatus.json new file mode 100644 index 0000000..c1949af --- /dev/null +++ b/src/main/resources/data/artofalchemy/recipes/crafting/distillation_apparatus.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "QMQ", + "ABA", + "QMQ" + ], + "key": { + "A": { "item":"artofalchemy:azoth" }, + "B": { "item":"minecraft:brewing_stand" }, + "Q": { "item":"minecraft:quartz" }, + "M": { "item":"minecraft:bone_meal" } + }, + "result": { + "item": "artofalchemy:distillation_apparatus" + } +} diff --git a/src/main/resources/data/artofalchemy/recipes/dissolution/moss.json b/src/main/resources/data/artofalchemy/recipes/dissolution/moss_block.json similarity index 50% rename from src/main/resources/data/artofalchemy/recipes/dissolution/moss.json rename to src/main/resources/data/artofalchemy/recipes/dissolution/moss_block.json index 94d8098..ebc5361 100644 --- a/src/main/resources/data/artofalchemy/recipes/dissolution/moss.json +++ b/src/main/resources/data/artofalchemy/recipes/dissolution/moss_block.json @@ -1 +1 @@ -{"type":"artofalchemy:dissolution","ingredient":{"item":"minecraft:moss"},"result":{"artofalchemy:tellus":2},"factor":1.0} \ No newline at end of file +{"type":"artofalchemy:dissolution","ingredient":{"item":"minecraft:moss_block"},"result":{"artofalchemy:tellus":2},"factor":1.0} \ No newline at end of file diff --git a/src/main/resources/data/artofalchemy/recipes/sheet.csv b/src/main/resources/data/artofalchemy/recipes/sheet.csv index 054d754..0c0262e 100644 --- a/src/main/resources/data/artofalchemy/recipes/sheet.csv +++ b/src/main/resources/data/artofalchemy/recipes/sheet.csv @@ -1,545 +1,545 @@ Name,ID,Tag?,Restrict?,Rank,Amount,Mercury,Venus,Tellus,Mars,Jupiter,Saturn,Uranus,Neptune,Apollo,Diana,Ceres,Pluto,Void,M. Recov.,E. Recov.,Total E.,Expected E. -Activator Rail,activator_rail,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Allium,allium,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Aluminum Ingot,c:aluminum_ingots,X,,C,4,80,,,,,,80,,,,,,,1.00,1.00,160,160 -Amethyst,c:amethysts,X,,B,4,,12,,,,,,,,12,,,,1.00,1.00,24,24 -Amethyst Block,amethyst_block,,,B,16,,48,,,,,,,,48,,,,1.00,1.00,96,96 -Ancient Debris,ancient_debris,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Andesite,andesite,,,F,1,2,,,,,,,,,,2,,,1.00,0.50,4,4 -Andesite Slab,andesite_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Andesite Slab, Polished",polished_andesite_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Andesite Stairs,andesite_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Andesite Stairs, Polished",polished_andesite_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Andesite Wall,andesite_wall,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Andesite, Polished",polished_andesite,,,F,1,2,,,,,,,,,,2,,,1.00,1.00,4,4 -Anvil,anvil,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Apple,apple,,,E,2,,12,12,,,,,,,,,,,1.00,1.00,24,24 -Armor Stand,armor_stand,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Arrow,arrow,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Azure Bluet,azure_bluet,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Baked Potato,baked_potato,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Bamboo,bamboo,,,E,1,,,12,,,,,,,,,,,1.00,1.00,12,12 -Banner Patterns,c:banner_patterns,X,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Banners,banners,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Barrel,barrel,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Basalt,basalt,,,E,1,4,,,,,,,,,,4,4,,1.00,1.00,12,12 -"Basalt, Polished",polished_basalt,,,E,1,4,,,,,,,,,,4,4,,1.00,1.00,12,12 -Beacon,beacon,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Beds,beds,X,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Bee Nest,bee_nest,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Beef, Cooked (Steak)",cooked_beef,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Beef, Raw",beef,,,E,2,,,,24,,,,,,,,,,1.00,1.00,24,24 -Beehive,beehive,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Beetroot,beetroot,,,E,2,,,16,8,,,,,,,,,,1.00,1.00,24,24 -Beetroot Seeds,beetroot_seeds,,,E,1,,,4,2,,,,,,,,,,0.50,1.00,6,12 -Beetroot Soup,beetroot_soup,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Bell,bell,,,B,12,360,,,,,,,,360,,,,,1.00,1.00,720,720 -Blackstone,blackstone,,,F,1,2,,,,,,,,,,2,2,,1.00,1.00,6,4 -Blast Furnace,blast_furnace,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Blaze Powder,blaze_powder,,,C,1,,,,,20,,,,,,,20,,1.00,1.00,40,40 -Blaze Rod,blaze_rod,,,C,4,,,,,80,,,,,,,80,,1.00,1.00,160,160 -Blue Ice,blue_ice,,,D,1,,,,,,,,12,,12,,,,1.00,1.00,24,24 -Blue Orchid,blue_orchid,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Boats,boats,X,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Bone,bone,,,E,4,,16,,,,24,,,,,,,,1.00,1.00,40,48 -Bone Block,bone_block,,,E,9,,36,,,,72,,,,,,,,1.00,1.00,108,108 -Bone Meal,bone_meal,,,E,1,,4,,,,8,,,,,,,,1.00,1.00,12,12 -Book,book,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Book and Quill,writable_book,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Bookshelf,bookshelf,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Bow,bow,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Bowl,bowl,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Brain Coral Block,brain_coral_block,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Brain Corals,c:brain_corals,X,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Bread,bread,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Brewing Stand,brewing_stand,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Brick,brick,,,D,1,,,,,,16,,,,,8,,,1.00,1.00,24,24 -Brick Slab,brick_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Brick Stairs,brick_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Brick Wall,brick_wall,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Bricks,bricks,,,D,4,,,,,,64,,,,,32,,,1.00,1.00,96,96 -Brown Mushroom,brown_mushroom,,,,,,4,,,,,,,,,4,4,,1.00,1.00,12,0 -Brown Mushroom Block,brown_mushroom_block,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Bubble Coral Block,bubble_coral_block,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Bubble Corals,c:bubble_corals,X,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Bucket,bucket,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Cactus,cactus,,,E,4,,8,32,,,,,8,,,,,,1.00,1.00,48,48 -Cake,cake,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Campfire,campfire,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Carpets,carpets,X,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Carrot,carrot,,,E,2,,,16,,8,,,,,,,,,1.00,1.00,24,24 -Carrot on a Stick,carrot_on_a_stick,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Cartography Table,cartography_table,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Cauldron,cauldron,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Chainmail Boots,chainmail_boots,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Chainmail Chestplate,chainmail_chestplate,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Chainmail Helmet,chainmail_helmet,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Chainmail Leggings,chainmail_leggings,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Charcoal,charcoal,,,E,2,,,,,,,,,,,24,,,1.00,1.00,24,24 -Chest,chest,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Chicken, Cooked",cooked_chicken,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Chicken, Raw",chicken,,,E,2,,,,24,,,,,,,,,,1.00,1.00,24,24 -Chorus Flower,chorus_flower,,,C,4,80,,,,,,40,,,,,,40,1.00,1.00,160,160 -Chorus Fruit,chorus_fruit,,,C,2,40,,,,,,20,,,,,,20,1.00,1.00,80,80 -Clay,clay,,,D,4,,,,,,64,,32,,,,,,1.00,1.00,96,96 -Clay Ball,clay_ball,,,D,1,,,,,,16,,8,,,,,,1.00,1.00,24,24 -Clock,clock,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Coal,coal,,,D,2,,,,,16,,,,,,32,,,1.00,1.00,48,48 -Coal Block,coal_block,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Coal Ore,coal_ore,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Coarse Dirt,coarse_dirt,,,F,1,,,1,,,2,,,,,1,,,1.00,1.00,4,4 -Cobalt Ingot,c:cobalt_ingots,X,,B,4,120,,,60,,,,60,,,,,,1.00,1.00,240,240 -Cobblestone,cobblestone,,,F,1,2,,,,,2,,,,,,,,0.50,0.50,4,4 -Cobblestone Slab,cobblestone_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Cobblestone Slab, Mossy",mossy_cobblestone_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Cobblestone Stairs,cobblestone_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Cobblestone Stairs, Mossy",mossy_cobblestone_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Cobblestone Wall,cobblestone_wall,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Cobblestone Wall, Mossy",mossy_cobblestone_wall,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Cobblestone, Mossy",mossy_cobblestone,,,F,1,2,,2,,,2,,,,,,,,1.00,1.00,6,4 -Cobweb,cobweb,,,E,9,54,,,,27,,27,,,,,,,1.00,1.00,108,108 -Cocoa Beans,cocoa_beans,,,E,2,,6,12,,,,,,,,6,,,1.00,1.00,24,24 -Cod Bucket,cod_bucket,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Cod, Cooked",cooked_cod,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Cod, Raw",cod,,,E,2,,,,12,,,,12,,,,,,1.00,1.00,24,24 -Compass,compass,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Composter,composter,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Concrete,c:concrete,X,,F,1,,,,,,2,,,,1,1,,,1.00,1.00,4,4 -Concrete Powder,c:concrete_powders,X,,F,1,,,,,,2,,,,1,1,,,1.00,1.00,4,4 -Conduit,conduit,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Cookie,cookie,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Copper Ingot,c:copper_ingots,X,,C,4,80,80,,,,,,,,,,,,1.00,1.00,160,160 -Cornflower,cornflower,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Crafting Table,crafting_table,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Creeper Head,creeper_head,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Crimson Fungus,crimson_fungus,,,E,1,4,,,4,,,,,4,,,,,1.00,1.00,12,12 -Crimson Nylium,crimson_nylium,,,F,1,2,,,2,2,,,,,,,2,,1.00,1.00,8,4 -Crimson Roots,crimson_roots,,,E,1,,,4,4,,,,,,,,4,,1.00,1.00,12,12 -Crossbow,crossbow,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Crying Obsidian,crying_obsidian,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Dandelion,dandelion,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Dark Prismarine,dark_prismarine,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Dark Prismarine Slab,dark_prismarine_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Dark Prismarine Stairs,dark_prismarine_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Daylight Detector,daylight_detector,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Dead Bush,dead_bush,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Dead Coral Blocks,c:dead_coral_blocks,X,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Dead Corals,c:dead_corals,X,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Detector Rail,detector_rail,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Diamond,diamond,,,A,4,,,,,,,,,,240,120,,,1.00,1.00,360,360 -Diamond Axe,diamond_axe,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Diamond Block,diamond_block,,,A,36,,,,,,,,,,2160,1080,,,1.00,1.00,3240,3240 -Diamond Boots,diamond_boots,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Diamond Chestplate,diamond_chestplate,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Diamond Helmet,diamond_helmet,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Diamond Hoe,diamond_hoe,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Diamond Horse Armor,diamond_horse_armor,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Diamond Leggings,diamond_leggings,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Diamond Ore,diamond_ore,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Diamond Pickaxe,diamond_pickaxe,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Diamond Shovel,diamond_shovel,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Diamond Sword,diamond_sword,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Diorite,diorite,,,F,1,2,,,,,,,,,2,,,,1.00,0.50,4,4 -Diorite Slab,diorite_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Diorite Slab, Polished",polished_diorite_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Diorite Stairs, Polished",polished_diorite_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Diorite Wall,diorite_wall,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Diorite, Polished",polished_diorite,,,F,1,2,,,,,,,,,2,,,,1.00,1.00,4,4 -Dirt,dirt,,,F,1,,,2,,,2,,,,,,,,1.00,1.00,4,4 -Dispenser,dispenser,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Dragon Egg,dragon_egg,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Dragon Egg,dragon_egg,,,S,64,,,,,,,,,,,,1000,4000,1.00,1.00,5000,5000 -Dragon Head,dragon_head,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Dragon's Breath,dragon_breath,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Dried Kelp,dried_kelp,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Dried Kelp Block,dried_kelp_block,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Dropper,dropper,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Dyes,c:dyes,X,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Egg,egg,,,E,2,,12,,,,12,,,,,,,,1.00,1.00,24,24 -Elytra,elytra,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Elytra,elytra,,,S,24,,800,,,,,800,,,,,800,800,1.00,1.00,3200,3200 -Emerald,emerald,,,A,4,,,120,,,,,,,240,,,,1.00,1.00,360,360 -Emerald Block,emerald_block,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Emerald Ore,emerald_ore,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Enchanted Book,enchanted_book,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Enchanted Golden Apple,enchanted_golden_apple,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Enchanted Golden Apple,enchanted_golden_apple,,,S,32,1200,,1200,,,,,,1200,,,,,1.00,1.00,3600,3600 -Enchanting Table,enchanting_table,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -End Crystal,end_crystal,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -End Portal Frame,end_portal_frame,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -End Rod,end_rod,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -End Stone,end_stone,,,E,1,4,,,,,4,4,,,,,,,1.00,1.00,12,12 -End Stone Brick Slab,end_stone_brick_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -End Stone Brick Stairs,end_stone_brick_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -End Stone Brick Wall,end_stone_brick_wall,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -End Stone Bricks,end_stone_bricks,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Ender Chest,ender_chest,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Ender Pearl,ender_pearl,,,B,2,,,,,,40,60,,,,,,20,1.00,1.00,120,120 -Eye of Ender,ender_eye,,,B,2,,,,,30,30,45,,,,,,15,1.00,1.00,120,120 -Feather,feather,,,E,2,12,,,,,6,6,,,,,,,1.00,1.00,24,24 -Fermented Spider Eye,fermented_spider_eye,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Fern,fern,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Fire Charge,fire_charge,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Fire Coral Block,fire_coral_block,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Fire Corals,c:fire_corals,X,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Firework,firework_rocket,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Firework Star,firework_star,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Fishing Rod,fishing_rod,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Fletching Table,fletching_table,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Flint,flint,,,E,1,,,,,,6,,,,,6,,,1.00,1.00,12,12 -Flint and Steel,flint_and_steel,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Flower Pot,flower_pot,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Furnace,furnace,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Ghast Tear,ghast_tear,,,B,2,,60,,,,,,,,,,,60,1.00,1.00,120,120 -Glass,c:glass,X,,F,1,,,,,,2,,,,2,,,,1.00,1.00,4,4 -Glass Bottle,glass_bottle,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Glass Panes,c:glass_panes,X,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Glistering Melon Slice,glistering_melon_slice,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Glow Berries,glow_berries,,,D,2,,,8,,,,,,12,4,,,,1.00,1.00,24,24 -Glow Ink Sac,glow_ink_sac,,,D,2,,,,,,,,12,12,,,12,,1.00,1.00,36,36 -Glow Lichen,glow_lichen,,,E,2,,,6,,,,,,6,,,6,,1.00,1.00,18,18 -Glowstone,glowstone,,,C,8,,,,,80,,,,160,80,,,,1.00,1.00,320,320 -Glowstone Dust,glowstone_dust,,,C,2,,,,,20,,,,40,20,,,,1.00,1.00,80,80 -Gold Block,gold_block,,,B,36,1080,,,,,,,,1080,,,,,1.00,1.00,2160,2160 -Gold Ingot,gold_ingot,,,B,4,120,,,,,,,,120,,,,,1.00,1.00,240,240 -Gold Nugget,gold_nugget,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Gold Ore,gold_ore,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Golden Apple,golden_apple,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Golden Axe,golden_axe,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Golden Boots,golden_boots,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Golden Carrot,golden_carrot,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Golden Chestplate,golden_chestplate,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Golden Helmet,golden_helmet,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Golden Hoe,golden_hoe,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Golden Horse Armor,golden_horse_armor,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Golden Leggings,golden_leggings,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Golden Pickaxe,golden_pickaxe,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Golden Shovel,golden_shovel,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Golden Sword,golden_sword,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Granite,granite,,,F,1,,,,2,,,,,,2,,,,1.00,0.50,4,4 -Granite Slab,granite_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Granite Slab, Polished",polished_granite_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Granite Stairs,grainite_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Granite Stairs, Polished",polished_granite_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Granite Wall,granite_wall,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Granite, Polished",polished_granite,,,F,1,,,,2,,,,,,2,,,,1.00,1.00,4,4 -Grass,grass,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Grass Block,grass_block,,,F,1,,,4,,,2,,,,,,,,1.00,1.00,6,4 -Gravel,gravel,,,F,1,,,,,,2,,,,,2,,,1.00,1.00,4,4 -Grindstone,grindstone,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Gunpowder,gunpowder,,,D,2,,,,,16,16,,,,,16,,,1.00,1.00,48,48 -Hay Bale,hay_block,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Heart of the Sea,heart_of_the_sea,,,A,8,,,,,,,,360,,180,,,180,1.00,1.00,720,720 -Heavy Pressure Plate,heavy_weighted_pressure_plate,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Honey Block,honey_block,,,E,4,,24,,,,,,,24,,,,,1.00,1.00,48,48 -Honey Bottle,honey_bottle,,,E,1,,6,,,,,,,6,,,,,1.00,1.00,12,12 -Honeycomb,honeycomb,,,E,1,,,,,,,,,6,,6,,,1.00,1.00,12,12 -Honeycomb Block,honeycomb_block,,,E,4,,,,,,,,,24,,24,,,1.00,1.00,48,48 -Hopper,hopper,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Horn Coral Block,horn_coral_block,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Horn Corals,c:horn_corals,X,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Ice,ice,,,F,1,,,,,,,,2,,2,,,,1.00,1.00,4,4 -Ink Sac,ink_sac,,,E,2,,,,,,,,12,,,12,,,1.00,1.00,24,24 -Iridium Ingot,c:iridium_ingots,X,,A,4,180,,,,,,,,,90,,,90,1.00,1.00,360,360 -Iron Axe,iron_axe,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Iron Bars,iron_bars,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Iron Block,iron_block,,,C,36,720,,,720,,,,,,,,,,1.00,1.00,1440,1440 -Iron Boots,iron_boots,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Iron Chestplate,iron_chestplate,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Iron Door,iron_door,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Iron Helmet,iron_helmet,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Iron Hoe,iron_hoe,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Iron Horse Armor,iron_horse_armor,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Iron Ingot,iron_ingot,,,C,4,80,,,80,,,,,,,,,,1.00,1.00,160,160 -Iron Leggings,iron_leggings,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Iron Nugget,iron_nugget,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Iron Ore,iron_ore,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Iron Pickaxe,iron_pickaxe,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Iron Shovel,iron_shovel,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Iron Sword,iron_sword,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Iron Trapdoor,iron_trapdoor,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Iron Trapdoor,iron_trapdoor,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Item Frame,item_frame,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Jack o'Lantern,jack_o_lantern,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Jukebox,jukebox,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Kelp,kelp,,,E,1,,,6,,,,,6,,,,,,1.00,1.00,12,12 -Ladder,ladder,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Lantern,lantern,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Lapis Lazuli,lapis_lazuli,,,B,2,30,,,,,,,60,,,,,30,1.00,1.00,120,120 -Lapis Lazuli Block,lapis_block,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Lapis Lazuli Ore,lapis_ore,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Large Fern,large_fern,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Lava Bucket,lava_bucket,,,D,1,,,,,24,,,,,,,,,1.00,1.00,24,24 -Lead,lead,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Lead Ingot,c:lead_ingots,X,,C,4,80,,,,,80,,,,,,,,1.00,1.00,160,160 -Leather,leather,,,D,2,,,,24,,,,,,,24,,,1.00,1.00,48,48 -Leather Boots,leather_boots,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Leather Cap,leather_cap,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Leather Horse Armor,leather_horse_armor,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Leather Pants,leather_pants,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Leather Tunic,leather_tunic,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Leaves,leaves,X,,E,1,,,12,,,,,,,,,,,1.00,1.00,12,12 -Lectern,lectern,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Lever,lever,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Light Pressure Plate,light_weighted_pressure_plate,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Lilac,lilac,,,E,1,,,6,,6,,,,,,,,,1.00,1.00,12,12 -Lily of the Valley,lily_of_the_valley,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Lily Pad,lily_pad,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Logs,logs,X,,E,4,,,32,,,,,,,,16,,,1.00,1.00,48,48 -Loom,loom,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Magma Block,magma_block,,,D,4,,,,,32,32,,32,,,,,,1.00,1.00,96,96 -Magma Cream,magma_cream,,,D,1,,,,,8,8,,8,,,,,,1.00,1.00,24,24 -Map,map,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Melon,melon,,,E,4,,16,32,,,,,,,,,,,1.00,1.00,48,48 -Melon Seeds,melon_seeds,,,E,1,,2,4,,,,,,,,,,,0.50,1.00,6,12 -Melon Slice,melon_slice,,,E,1,,2,4,,,,,,,,,,,0.50,1.00,6,12 -Milk Bucket,milk_bucket,,,E,1,,4,4,,,,,4,,,,,,1.00,1.00,12,12 -Minecart,minecart,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Minecart with Chest,chest_minecart,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Minecart with Furnace,furnace_minecart,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Minecart with Hopper,hopper_minecart,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Minecart with TNT,tnt_minecart,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Moss,moss,,,F,1,,,2,,,,,,,,,,,1.00,1.00,2,2 -Mushroom Stem,mushroom_stem,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Music Discs,music_discs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Mutton, Cooked",cooked_mutton,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Mutton, Raw",mutton,,,E,2,,,,24,,,,,,,,,,1.00,1.00,24,24 -Mycelium,mycelium,,,,,,1,2,,,2,,,,,,1,,1.00,1.00,6,0 -Name Tag,name_tag,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Nautilus Shell,nautilus_shell,,,A,2,,,,,,90,30,60,,,,,,1.00,1.00,180,180 -Nether Brick,nether brick,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Nether Brick Fence,nether_brick_fence,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Nether Brick Slab,nether_brick_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Nether Brick Stairs,nether_brick_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Nether Brick Wall,nether_brick_wall,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Nether Bricks,nether_bricks,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Nether Gold Ore,nether_gold_ore,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Nether Quartz Ore,nether_quartz_ore,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Nether Sprouts,nether_sprouts,,,D,2,,,12,,,,24,,,,,12,,1.00,1.00,48,48 -Nether Star,nether_star,,,S,32,,,,,,,,,1280,1280,,,1280,1.00,1.00,3840,3840 -Nether Wart,nether_wart,,,D,2,,,12,24,,,,,,,,12,,1.00,1.00,48,48 -Nether Wart Block,nether_wart_block,,,E,4,,,12,24,,,,,,,,12,,1.00,1.00,48,48 -Netherite Axe,netherite_axe,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Netherite Block,netherite_block,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Netherite Boots,netherite_boots,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Netherite Chestplate,netherite_chestplate,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Netherite Helmet,netherite_helmet,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Netherite Hoe,netherite_hoe,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Netherite Ingot,netherite_ingot,,,S,16,960,,,,,,,,480,,,480,480,1.00,0.80,2400,1920 -Netherite Leggings,netherite_leggings,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Netherite Pickaxe,netherite_pickaxe,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Netherite Scrap,netherite_scrap,,,S,4,240,,,,,,,,,,,120,120,1.00,1.00,480,480 -Netherite Shovel,netherite_shovel,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Netherite Sword,netherite_sword,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Netherrack,netherrack,,,F,1,2,,,,2,,,,,,,2,,1.00,1.00,6,4 -Nickel Ingot,c:nickel_ingots,X,,B,4,120,,,60,,,60,,,,,,,1.00,1.00,240,240 -Note Block,note_block,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Observer,observer,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Obsidian,obsidian,,,D,4,,,,,32,,,32,,,32,,,1.00,1.00,96,96 -Orange Tulip,orange_tulip,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Osmium Ingot,c:osmium_ingots,X,,B,4,120,,,,,,,,,,60,,60,1.00,1.00,240,240 -Oxeye Daisy,oxeye_daisy,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Packed Ice,packed_ice,,,E,1,,,,,,,,6,,6,,,,1.00,1.00,12,12 -Painting,painting,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Palladium Ingot,c:palladium_ingots,X,,A,4,180,90,,,,,,,,,,,90,1.00,1.00,360,360 -Paper,paper,,,E,1,,,8,,,,,4,,,,,,1.00,0.67,12,12 -Peony,peony,,,E,1,6,,6,,,,,,,,,,,1.00,1.00,12,12 -Peridot,c:peridots,X,,B,4,,,,,,120,,,,120,,,,1.00,1.00,240,240 -Phantom Membrane,phantom_membrane,,,B,2,,,,,,,40,,40,40,,,,1.00,1.00,120,120 -Pink Tulip,pink_tulip,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Piston,piston,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Piston, Sticky",sticky_piston,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Planks,planks,X,,E,1,,,8,,,,,,,,4,,,1.00,1.00,12,12 -Platinum Ingot,c:platinum_ingots,X,,A,4,180,,,,,,,,,,,,180,1.00,1.00,360,360 -Plutonium Ingot,c:plutonium_ingots,X,,A,4,180,,,,,,,90,,,,90,,1.00,1.00,360,360 -Podzol,podzol,,,F,1,,,2,,,2,,,,,2,,,1.00,1.00,6,4 -Poisonous Potato,poisonous_potato,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Popped Chorus Fruit,popped_chorus_fruit,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Poppy,poppy,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Porkchop, Cooked",cooked_porkchop,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Porkchop, Raw",porkchop,,,E,2,,,,24,,,,,,,,,,1.00,1.00,24,24 -Potato,potato,,,E,2,,,16,,,,,,,,8,,,1.00,1.00,24,24 -Potions / Water Bottle,potion,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Powered Rail,powered_rail,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Prismarine,prismarine,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Prismarine Brick Slab,prismarine_brick_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Prismarine Brick Stairs,prismarine_brick_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Prismarine Bricks,prismarine_bricks,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Prismarine Crystals,prismarine_crystals,,,C,2,,,,,,,20,40,,20,,,,1.00,1.00,80,80 -Prismarine Shard,prismarine_shard,,,C,2,,,,,,20,20,40,,,,,,1.00,1.00,80,80 -Prismarine Slab,prismarine_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Prismarine Stairs,prismarine_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Prismarine Wall,prismarine_wall,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Pufferfish,pufferfish,,,E,2,,,,6,,,,12,6,,,,,1.00,1.00,24,24 -Pufferfish Bucket,pufferfish_bucket,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Pumpkin,pumpkin,,,E,4,,,32,,,,,,16,,,,,1.00,1.00,48,48 -Pumpkin Pie,pumpkin_pie,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Pumpkin Seeds,pumpkin_seeds,,,E,1,,,4,,,,,,2,,,,,0.50,1.00,6,12 -"Pumpkin, Carved",carved_pumpkin,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Quartz,quartz,,,C,2,,,,,,20,,,,40,,20,,1.00,1.00,80,80 -Quartz Block,quartz_block,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Quartz Block, Chiseled ",chiseled_quartz_block,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Quartz Block, Smooth",smooth_quartz,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Quartz Pillar,quartz_pillar,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Quartz Slab,quartz_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Quartz Slab, Smooth",smooth_quartz_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Quartz Stairs,quartz_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Quartz Stairs, Smooth",smooth_quartz_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Rabbit Foot,rabbit_foot,,,B,1,,,,20,,,,,20,,,,20,1.00,1.00,60,60 -Rabbit Hide,rabbit_hide,,,D,1,,,,12,,,,,,,12,,,1.00,1.00,24,24 -Rabbit Stew,rabbit_stew,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Rabbit, Cooked",cooked_rabbit,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Rabbit, Raw",rabbit,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Rail,rail,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Red Mushroom,red_mushroom,,,E,1,,4,,,4,,,,,,,4,,1.00,1.00,12,12 -Red Mushroom Block,red_mushroom_block,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Red Nether Brick Slab,red_nether_brick_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Red Nether Brick Stairs,red_nether_brick_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Red Nether Brick Wall,red_nether_brick_wall,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Red Nether Bricks,red_nether_bricks,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Red Sand,red_sand,,,F,1,,,,2,,2,,,,,,,,1.00,0.50,4,4 -Red Sandstone,red_sandstone,,,F,4,,,,8,,8,,,,,,,,1.00,0.50,16,16 -Red Sandstone Slab,red_sandstone_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Red Sandstone Slab, Cut",cut_red_sandstone_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Red Sandstone Slab, Smooth",smooth_red_sandstone_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Red Sandstone Stairs,red_sandstone_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Red Sandstone Stairs, Smooth",smooth_red_sandstone_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Red Sandstone Wall,red_sandstone_wall,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Red Sandstone, Chiseled ",chiseled_red_sandstone,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Red Sandstone, Cut",cut_red_sandstone,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Red Sandstone, Smooth",smooth_red_sandstone,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Red Tulip,red_tulip,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Redstone,redstone,,,C,2,20,40,,,,20,,,,,,,,1.00,1.00,80,80 -Redstone Block,redstone_block,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Redstone Comparator,comparator,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Redstone Lamp,redstone_lamp,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Redstone Ore,redstone_ore,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Redstone Torch,redstone_torch,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Respawn Anchor,respawn_anchor,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Rose Bush,rose_bush,,,E,1,,6,6,,,,,,,,,,,1.00,1.00,12,12 -Rotten Flesh,rotten_flesh,,,F,2,,,,4,,,,,,,,4,,1.00,1.00,8,8 -Ruby,c:rubies,X,,B,4,,,,120,,,,,,120,,,,1.00,1.00,240,240 -Saddle,saddle,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Salmon Bucket,salmon_bucket,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Salmon, Cooked",cooked_salmon,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Salmon, Raw",salmon,,,E,2,,,,12,,,,12,,,,,,1.00,1.00,24,24 -Sand,sand,,,F,1,,,,,,2,,,2,,,,,1.00,0.50,4,4 -Sandstone,sandstone,,,F,4,,,,,,8,,,8,,,,,1.00,0.50,16,16 -Sandstone Slab,sandstone_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Sandstone Slab, Cut",cut_sandstone_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Sandstone Slab, Smooth",smooth_sandstone_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Sandstone Stairs,sandstone_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Sandstone Stairs, Smooth",smooth_sandstone_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Sandstone Wall,sandstone_wall,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Sandstone, Chiseled ",chiseled_sandstone,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Sandstone, Cut",cut_sandstone,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Sandstone, Smooth",smooth_sandstone,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Saplings,saplings,X,,E,1,,,12,,,,,,,,,,,1.00,1.00,12,12 -Sapphire,c:sapphires,X,,B,4,,,,,,,,120,,120,,,,1.00,1.00,240,240 -Scaffolding,scaffolding,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Scute,scute,,,C,2,,,,,,20,,40,,,20,,,1.00,1.00,80,80 -Sea Lantern,sea_lantern,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Sea Pickle,sea_pickle,,,E,1,,4,4,,,,,4,,,,,,1.00,1.00,12,12 -Seagrass,seagrass,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Shears,shears,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Shield,shield,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Shroomlight,shroomlight,,,D,2,12,,,,12,,,,12,,,,,1.00,1.00,36,48 -Shulker Box,shulker_box,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Shulker Shell,shulker_shell,,,B,2,40,,,,,40,40,,,,,,,1.00,1.00,120,120 -Signs,signs,X,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Silver Ingot,c:silver_ingots,X,,B,4,120,,,,,,,,,120,,,,1.00,1.00,240,240 -Skeleton Skull,skeleton_skull,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Slime Block,slime_block,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Slimeball,slime_ball,,,C,1,,,,,,20,,20,,,,,,1.00,1.00,40,40 -Smithing Table,smithing_table,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Smoker,smoker,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Snow,snow,,,F,1,,,,,,,,3,,1,,,,1.00,1.00,4,4 -Snow Block,snow_block,,,F,4,,,,,,,,6,,2,,,,1.00,1.00,8,16 -Snowball,snowball,,,F,1,,,,,,,,3,,1,,,,0.50,0.50,4,4 -Soul Fire Lantern,soul_fire_lantern,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Soul Fire Torch,soul_fire_torch,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Soul Sand,soul_sand,,,E,1,,,,,,3,,,,,3,6,,1.00,1.00,12,12 -Soul Soil,soul_soil,,,E,1,,,,,,3,,3,,,,6,,1.00,1.00,12,12 -Spectral Arrow,spectral_arrow,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Spider Eye,spider_eye,,,F,2,4,,,,,,,,,,,4,,1.00,1.00,8,8 -Sponge,sponge,,,C,4,,,80,,,,,40,40,,,,,1.00,1.00,160,160 -Stick,stick,,,E,1,,4,,,,,,,,,2,,,0.50,1.00,6,12 -Stone,stone,,,F,1,2,,,,,2,,,,,,,,1.00,0.50,4,4 -Stone Axe,stone_axe,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Stone Brick Slab,stone_brick_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Stone Brick Slab, Mossy",mossy_stone_brick_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Stone Brick Stairs,stone_brick_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Stone Brick Stairs, Mossy",mossy_stone_brick_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Stone Brick Wall,stone_brick_wall,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Stone Brick Wall, Mossy",mossy_stone_brick_wall,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Stone Bricks,stone_bricks,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Stone Bricks, Chiseled ",chiseled_stone_bricks,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Stone Bricks, Cracked",cracked_stone_bricks,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Stone Bricks, Mossy",mossy_stone_bricks,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Stone Button,stone_button,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Stone Hoe,stone_hoe,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Stone Pickaxe,stone_pickaxe,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Stone Pressure Plate,stone_pressure_plate,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Stone Shovel,stone_shovel,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Stone Slab,stone_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Stone Slab, Smooth",smooth_stone_slab,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Stone Stairs,stone_stairs,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Stone Sword,stone_sword,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -"Stone, Smooth",smooth_stone,,,F,1,2,,,,,2,,,,,,,,1.00,1.00,4,4 -Stonecutter,stonecutter,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -String,string,,,E,1,6,,,,3,,3,,,,,,,1.00,1.00,12,12 -Sugar,sugar,,,E,1,,8,4,,,,,,,,,,,1.00,0.67,12,12 -Sugar Cane,sugar_cane,,,E,1,,4,4,,,,,4,,,,,,1.00,1.00,12,12 -Sunflower,sunflower,,,E,1,,,6,,,,,,6,,,,,1.00,1.00,12,12 -Suspicious Stew,suspicious_stew,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Sweet Berries,sweet_berries,,,E,1,,,8,,,,,,,4,,,,1.00,1.00,12,12 -Target,target,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Terracotta,terracotta,,,F,1,,,,,,2,,1,,,1,,,1.00,1.00,4,4 -Thorium Ingot,c:thorium_ingots,X,,A,4,180,90,,,,,,,,,,90,,1.00,1.00,360,360 -Tin Ingot,c:tin_ingots,X,,C,4,80,,,,80,,,,,,,,,1.00,1.00,160,160 -Tipped Arrow,tipped_arrow,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Titanium Ingot,c:titanium_ingots,X,,B,4,120,,,,,60,,,,,60,,,1.00,1.00,240,240 -TNT,tnt,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Topaz,c:topazes,X,,B,4,,120,,,120,,,,,,,,,1.00,1.00,240,240 -Torch,torch,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Totem of Undying,totem_of_undying,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Trapped Chest,trapped_chest,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Trident,trident,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Tripwire Hook,tripwire_hook,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Tropical Fish,tropical_fish,,,E,2,,,,12,,,,12,,,,,,1.00,1.00,24,24 -Tropical Fish Bucket,tropical_fish_bucket,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Tube Coral Block,tube_coral_block,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Tube Corals,c:tube_corals,X,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Tuff,tuff,,,E,2,12,,,,,,,,,,4,,,1.00,1.00,16,16 -Tungsten Ingot,c:tungsten_ingots,X,,B,4,120,,,,60,,,,,,60,,,1.00,1.00,240,240 -Turtle Egg,turtle_egg,,,D,2,,16,,,,16,,16,,,,,,1.00,1.00,48,48 -Turtle Shell,turtle_helmet,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Twisting Vines,twisting_vines,,,E,1,,,6,,,,6,,,,,,,1.00,1.00,12,12 -Uranium Ingot,c:uranium_ingots,X,,A,4,180,,,,,,90,,,,,90,,1.00,1.00,360,360 -Vines,vine,,,E,1,,,12,,,,,,,,,,,1.00,1.00,12,12 -Warped Fungus,warped_fungus,,,E,1,4,,,,,,4,,4,,,,,1.00,1.00,12,12 -Warped Nylium,warped_nylium,,,F,1,2,,,,2,,2,,,,,2,,1.00,1.00,8,4 -Warped Roots,warped_roots,,,E,1,,,4,,,,4,,,,,4,,1.00,1.00,12,12 -Warped Wart Block,warped_wart_block,,,E,4,,,12,,,,24,,,,,12,,1.00,1.00,48,48 -Water Bucket,water_bucket,,,F,1,,,,,,,,4,,,,,,1.00,0.50,4,4 -Weeping Vines,weeping_vines,,,E,1,,,6,6,,,,,,,,,,1.00,1.00,12,12 -Wheat,wheat,,,E,2,,,24,,,,,,,,,,,1.00,1.00,24,24 -Wheat Seeds,wheat_seeds,,,E,1,,,6,,,,,,,,,,,0.50,1.00,6,12 -White Tulip,white_tulip,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Wither Rose,wither_rose,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Wither Skeleton Skull,wither_skeleton_skull,,,A,4,,,,,90,90,,,,,90,90,,1.00,1.00,360,360 -Wooden Axe,wooden_axe,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Wooden Buttons,wooden_buttons,X,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Wooden Doors,wooden_doors,X,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Wooden Fence Gates,c:wooden_fence_gates,X,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Wooden Fences,wooden_fences,X,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Wooden Hoe,wooden_hoe,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Wooden Pickaxe,wooden_pickaxe,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Wooden Pressure Plates,wooden_pressure_plates,X,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Wooden Shovel,wooden_shovel,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Wooden Sword,wooden_sword,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Wooden Trapdoors,wooden_trapdoors,X,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Wool,wool,X,,E,4,24,,12,,,,12,,,,,,,1.00,1.00,48,48 -Written Book,written_book,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 -Zinc Ingot,c:zinc_ingots,X,,C,4,80,,80,,,,,,,,,,,1.00,1.00,160,160 -Zombie Head,zombie_head,,,,,,,,,,,,,,,,,,1.00,1.00,0,0 +Activator Rail,activator_rail,,,,,,,,,,,,,,,,,,1,1,0,0 +Allium,allium,,,,,,,,,,,,,,,,,,1,1,0,0 +Aluminum Ingot,c:aluminum_ingots,X,,C,4,80,,,,,,80,,,,,,,1,1,160,160 +Amethyst,c:amethysts,X,,B,4,,12,,,,,,,,12,,,,1,1,24,24 +Amethyst Block,amethyst_block,,,B,16,,48,,,,,,,,48,,,,1,1,96,96 +Ancient Debris,ancient_debris,,,,,,,,,,,,,,,,,,1,1,0,0 +Andesite,andesite,,,F,1,2,,,,,,,,,,2,,,1,0.5,4,4 +Andesite Slab,andesite_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +"Andesite Slab, Polished",polished_andesite_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +Andesite Stairs,andesite_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +"Andesite Stairs, Polished",polished_andesite_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +Andesite Wall,andesite_wall,,,,,,,,,,,,,,,,,,1,1,0,0 +"Andesite, Polished",polished_andesite,,,F,1,2,,,,,,,,,,2,,,1,1,4,4 +Anvil,anvil,,,,,,,,,,,,,,,,,,1,1,0,0 +Apple,apple,,,E,2,,12,12,,,,,,,,,,,1,1,24,24 +Armor Stand,armor_stand,,,,,,,,,,,,,,,,,,1,1,0,0 +Arrow,arrow,,,,,,,,,,,,,,,,,,1,1,0,0 +Azure Bluet,azure_bluet,,,,,,,,,,,,,,,,,,1,1,0,0 +Baked Potato,baked_potato,,,,,,,,,,,,,,,,,,1,1,0,0 +Bamboo,bamboo,,,E,1,,,12,,,,,,,,,,,1,1,12,12 +Banner Patterns,c:banner_patterns,X,,,,,,,,,,,,,,,,,1,1,0,0 +Banners,banners,,,,,,,,,,,,,,,,,,1,1,0,0 +Barrel,barrel,,,,,,,,,,,,,,,,,,1,1,0,0 +Basalt,basalt,,,E,1,4,,,,,,,,,,4,4,,1,1,12,12 +"Basalt, Polished",polished_basalt,,,E,1,4,,,,,,,,,,4,4,,1,1,12,12 +Beacon,beacon,,,,,,,,,,,,,,,,,,1,1,0,0 +Beds,beds,X,,,,,,,,,,,,,,,,,1,1,0,0 +Bee Nest,bee_nest,,,,,,,,,,,,,,,,,,1,1,0,0 +"Beef, Cooked (Steak)",cooked_beef,,,,,,,,,,,,,,,,,,1,1,0,0 +"Beef, Raw",beef,,,E,2,,,,24,,,,,,,,,,1,1,24,24 +Beehive,beehive,,,,,,,,,,,,,,,,,,1,1,0,0 +Beetroot,beetroot,,,E,2,,,16,8,,,,,,,,,,1,1,24,24 +Beetroot Seeds,beetroot_seeds,,,E,1,,,4,2,,,,,,,,,,0.5,1,6,12 +Beetroot Soup,beetroot_soup,,,,,,,,,,,,,,,,,,1,1,0,0 +Bell,bell,,,B,12,360,,,,,,,,360,,,,,1,1,720,720 +Blackstone,blackstone,,,F,1,2,,,,,,,,,,2,2,,1,1,6,4 +Blast Furnace,blast_furnace,,,,,,,,,,,,,,,,,,1,1,0,0 +Blaze Powder,blaze_powder,,,C,1,,,,,20,,,,,,,20,,1,1,40,40 +Blaze Rod,blaze_rod,,,C,4,,,,,80,,,,,,,80,,1,1,160,160 +Blue Ice,blue_ice,,,D,1,,,,,,,,12,,12,,,,1,1,24,24 +Blue Orchid,blue_orchid,,,,,,,,,,,,,,,,,,1,1,0,0 +Boats,boats,X,,,,,,,,,,,,,,,,,1,1,0,0 +Bone,bone,,,E,4,,16,,,,24,,,,,,,,1,1,40,48 +Bone Block,bone_block,,,E,9,,36,,,,72,,,,,,,,1,1,108,108 +Bone Meal,bone_meal,,,E,1,,4,,,,8,,,,,,,,1,1,12,12 +Book,book,,,,,,,,,,,,,,,,,,1,1,0,0 +Book and Quill,writable_book,,,,,,,,,,,,,,,,,,1,1,0,0 +Bookshelf,bookshelf,,,,,,,,,,,,,,,,,,1,1,0,0 +Bow,bow,,,,,,,,,,,,,,,,,,1,1,0,0 +Bowl,bowl,,,,,,,,,,,,,,,,,,1,1,0,0 +Brain Coral Block,brain_coral_block,,,,,,,,,,,,,,,,,,1,1,0,0 +Brain Corals,c:brain_corals,X,,,,,,,,,,,,,,,,,1,1,0,0 +Bread,bread,,,,,,,,,,,,,,,,,,1,1,0,0 +Brewing Stand,brewing_stand,,,,,,,,,,,,,,,,,,1,1,0,0 +Brick,brick,,,D,1,,,,,,16,,,,,8,,,1,1,24,24 +Brick Slab,brick_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +Brick Stairs,brick_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +Brick Wall,brick_wall,,,,,,,,,,,,,,,,,,1,1,0,0 +Bricks,bricks,,,D,4,,,,,,64,,,,,32,,,1,1,96,96 +Brown Mushroom,brown_mushroom,,,,,,4,,,,,,,,,4,4,,1,1,12,0 +Brown Mushroom Block,brown_mushroom_block,,,,,,,,,,,,,,,,,,1,1,0,0 +Bubble Coral Block,bubble_coral_block,,,,,,,,,,,,,,,,,,1,1,0,0 +Bubble Corals,c:bubble_corals,X,,,,,,,,,,,,,,,,,1,1,0,0 +Bucket,bucket,,,,,,,,,,,,,,,,,,1,1,0,0 +Cactus,cactus,,,E,4,,8,32,,,,,8,,,,,,1,1,48,48 +Cake,cake,,,,,,,,,,,,,,,,,,1,1,0,0 +Campfire,campfire,,,,,,,,,,,,,,,,,,1,1,0,0 +Carpets,carpets,X,,,,,,,,,,,,,,,,,1,1,0,0 +Carrot,carrot,,,E,2,,,16,,8,,,,,,,,,1,1,24,24 +Carrot on a Stick,carrot_on_a_stick,,,,,,,,,,,,,,,,,,1,1,0,0 +Cartography Table,cartography_table,,,,,,,,,,,,,,,,,,1,1,0,0 +Cauldron,cauldron,,,,,,,,,,,,,,,,,,1,1,0,0 +Chainmail Boots,chainmail_boots,,,,,,,,,,,,,,,,,,1,1,0,0 +Chainmail Chestplate,chainmail_chestplate,,,,,,,,,,,,,,,,,,1,1,0,0 +Chainmail Helmet,chainmail_helmet,,,,,,,,,,,,,,,,,,1,1,0,0 +Chainmail Leggings,chainmail_leggings,,,,,,,,,,,,,,,,,,1,1,0,0 +Charcoal,charcoal,,,E,2,,,,,,,,,,,24,,,1,1,24,24 +Chest,chest,,,,,,,,,,,,,,,,,,1,1,0,0 +"Chicken, Cooked",cooked_chicken,,,,,,,,,,,,,,,,,,1,1,0,0 +"Chicken, Raw",chicken,,,E,2,,,,24,,,,,,,,,,1,1,24,24 +Chorus Flower,chorus_flower,,,C,4,80,,,,,,40,,,,,,40,1,1,160,160 +Chorus Fruit,chorus_fruit,,,C,2,40,,,,,,20,,,,,,20,1,1,80,80 +Clay,clay,,,D,4,,,,,,64,,32,,,,,,1,1,96,96 +Clay Ball,clay_ball,,,D,1,,,,,,16,,8,,,,,,1,1,24,24 +Clock,clock,,,,,,,,,,,,,,,,,,1,1,0,0 +Coal,coal,,,D,2,,,,,16,,,,,,32,,,1,1,48,48 +Coal Block,coal_block,,,,,,,,,,,,,,,,,,1,1,0,0 +Coal Ore,coal_ore,,,,,,,,,,,,,,,,,,1,1,0,0 +Coarse Dirt,coarse_dirt,,,F,1,,,1,,,2,,,,,1,,,1,1,4,4 +Cobalt Ingot,c:cobalt_ingots,X,,B,4,120,,,60,,,,60,,,,,,1,1,240,240 +Cobblestone,cobblestone,,,F,1,2,,,,,2,,,,,,,,0.5,0.5,4,4 +Cobblestone Slab,cobblestone_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +"Cobblestone Slab, Mossy",mossy_cobblestone_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +Cobblestone Stairs,cobblestone_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +"Cobblestone Stairs, Mossy",mossy_cobblestone_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +Cobblestone Wall,cobblestone_wall,,,,,,,,,,,,,,,,,,1,1,0,0 +"Cobblestone Wall, Mossy",mossy_cobblestone_wall,,,,,,,,,,,,,,,,,,1,1,0,0 +"Cobblestone, Mossy",mossy_cobblestone,,,F,1,2,,2,,,2,,,,,,,,1,1,6,4 +Cobweb,cobweb,,,E,9,54,,,,27,,27,,,,,,,1,1,108,108 +Cocoa Beans,cocoa_beans,,,E,2,,6,12,,,,,,,,6,,,1,1,24,24 +Cod Bucket,cod_bucket,,,,,,,,,,,,,,,,,,1,1,0,0 +"Cod, Cooked",cooked_cod,,,,,,,,,,,,,,,,,,1,1,0,0 +"Cod, Raw",cod,,,E,2,,,,12,,,,12,,,,,,1,1,24,24 +Compass,compass,,,,,,,,,,,,,,,,,,1,1,0,0 +Composter,composter,,,,,,,,,,,,,,,,,,1,1,0,0 +Concrete,c:concrete,X,,F,1,,,,,,2,,,,1,1,,,1,1,4,4 +Concrete Powder,c:concrete_powders,X,,F,1,,,,,,2,,,,1,1,,,1,1,4,4 +Conduit,conduit,,,,,,,,,,,,,,,,,,1,1,0,0 +Cookie,cookie,,,,,,,,,,,,,,,,,,1,1,0,0 +Copper Ingot,c:copper_ingots,X,,C,4,80,80,,,,,,,,,,,,1,1,160,160 +Cornflower,cornflower,,,,,,,,,,,,,,,,,,1,1,0,0 +Crafting Table,crafting_table,,,,,,,,,,,,,,,,,,1,1,0,0 +Creeper Head,creeper_head,,,,,,,,,,,,,,,,,,1,1,0,0 +Crimson Fungus,crimson_fungus,,,E,1,4,,,4,,,,,4,,,,,1,1,12,12 +Crimson Nylium,crimson_nylium,,,F,1,2,,,2,2,,,,,,,2,,1,1,8,4 +Crimson Roots,crimson_roots,,,E,1,,,4,4,,,,,,,,4,,1,1,12,12 +Crossbow,crossbow,,,,,,,,,,,,,,,,,,1,1,0,0 +Crying Obsidian,crying_obsidian,,,,,,,,,,,,,,,,,,1,1,0,0 +Dandelion,dandelion,,,,,,,,,,,,,,,,,,1,1,0,0 +Dark Prismarine,dark_prismarine,,,,,,,,,,,,,,,,,,1,1,0,0 +Dark Prismarine Slab,dark_prismarine_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +Dark Prismarine Stairs,dark_prismarine_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +Daylight Detector,daylight_detector,,,,,,,,,,,,,,,,,,1,1,0,0 +Dead Bush,dead_bush,,,,,,,,,,,,,,,,,,1,1,0,0 +Dead Coral Blocks,c:dead_coral_blocks,X,,,,,,,,,,,,,,,,,1,1,0,0 +Dead Corals,c:dead_corals,X,,,,,,,,,,,,,,,,,1,1,0,0 +Detector Rail,detector_rail,,,,,,,,,,,,,,,,,,1,1,0,0 +Diamond,diamond,,,A,4,,,,,,,,,,240,120,,,1,1,360,360 +Diamond Axe,diamond_axe,,,,,,,,,,,,,,,,,,1,1,0,0 +Diamond Block,diamond_block,,,A,36,,,,,,,,,,2160,1080,,,1,1,3240,3240 +Diamond Boots,diamond_boots,,,,,,,,,,,,,,,,,,1,1,0,0 +Diamond Chestplate,diamond_chestplate,,,,,,,,,,,,,,,,,,1,1,0,0 +Diamond Helmet,diamond_helmet,,,,,,,,,,,,,,,,,,1,1,0,0 +Diamond Hoe,diamond_hoe,,,,,,,,,,,,,,,,,,1,1,0,0 +Diamond Horse Armor,diamond_horse_armor,,,,,,,,,,,,,,,,,,1,1,0,0 +Diamond Leggings,diamond_leggings,,,,,,,,,,,,,,,,,,1,1,0,0 +Diamond Ore,diamond_ore,,,,,,,,,,,,,,,,,,1,1,0,0 +Diamond Pickaxe,diamond_pickaxe,,,,,,,,,,,,,,,,,,1,1,0,0 +Diamond Shovel,diamond_shovel,,,,,,,,,,,,,,,,,,1,1,0,0 +Diamond Sword,diamond_sword,,,,,,,,,,,,,,,,,,1,1,0,0 +Diorite,diorite,,,F,1,2,,,,,,,,,2,,,,1,0.5,4,4 +Diorite Slab,diorite_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +"Diorite Slab, Polished",polished_diorite_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +"Diorite Stairs, Polished",polished_diorite_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +Diorite Wall,diorite_wall,,,,,,,,,,,,,,,,,,1,1,0,0 +"Diorite, Polished",polished_diorite,,,F,1,2,,,,,,,,,2,,,,1,1,4,4 +Dirt,dirt,,,F,1,,,2,,,2,,,,,,,,1,1,4,4 +Dispenser,dispenser,,,,,,,,,,,,,,,,,,1,1,0,0 +Dragon Egg,dragon_egg,,,,,,,,,,,,,,,,,,1,1,0,0 +Dragon Egg,dragon_egg,,,S,64,,,,,,,,,,,,1000,4000,1,1,5000,5000 +Dragon Head,dragon_head,,,,,,,,,,,,,,,,,,1,1,0,0 +Dragon's Breath,dragon_breath,,,,,,,,,,,,,,,,,,1,1,0,0 +Dried Kelp,dried_kelp,,,,,,,,,,,,,,,,,,1,1,0,0 +Dried Kelp Block,dried_kelp_block,,,,,,,,,,,,,,,,,,1,1,0,0 +Dropper,dropper,,,,,,,,,,,,,,,,,,1,1,0,0 +Dyes,c:dyes,X,,,,,,,,,,,,,,,,,1,1,0,0 +Egg,egg,,,E,2,,12,,,,12,,,,,,,,1,1,24,24 +Elytra,elytra,,,,,,,,,,,,,,,,,,1,1,0,0 +Elytra,elytra,,,S,24,,800,,,,,800,,,,,800,800,1,1,3200,3200 +Emerald,emerald,,,A,4,,,120,,,,,,,240,,,,1,1,360,360 +Emerald Block,emerald_block,,,,,,,,,,,,,,,,,,1,1,0,0 +Emerald Ore,emerald_ore,,,,,,,,,,,,,,,,,,1,1,0,0 +Enchanted Book,enchanted_book,,,,,,,,,,,,,,,,,,1,1,0,0 +Enchanted Golden Apple,enchanted_golden_apple,,,,,,,,,,,,,,,,,,1,1,0,0 +Enchanted Golden Apple,enchanted_golden_apple,,,S,32,1200,,1200,,,,,,1200,,,,,1,1,3600,3600 +Enchanting Table,enchanting_table,,,,,,,,,,,,,,,,,,1,1,0,0 +End Crystal,end_crystal,,,,,,,,,,,,,,,,,,1,1,0,0 +End Portal Frame,end_portal_frame,,,,,,,,,,,,,,,,,,1,1,0,0 +End Rod,end_rod,,,,,,,,,,,,,,,,,,1,1,0,0 +End Stone,end_stone,,,E,1,4,,,,,4,4,,,,,,,1,1,12,12 +End Stone Brick Slab,end_stone_brick_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +End Stone Brick Stairs,end_stone_brick_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +End Stone Brick Wall,end_stone_brick_wall,,,,,,,,,,,,,,,,,,1,1,0,0 +End Stone Bricks,end_stone_bricks,,,,,,,,,,,,,,,,,,1,1,0,0 +Ender Chest,ender_chest,,,,,,,,,,,,,,,,,,1,1,0,0 +Ender Pearl,ender_pearl,,,B,2,,,,,,40,60,,,,,,20,1,1,120,120 +Eye of Ender,ender_eye,,,B,2,,,,,30,30,45,,,,,,15,1,1,120,120 +Feather,feather,,,E,2,12,,,,,6,6,,,,,,,1,1,24,24 +Fermented Spider Eye,fermented_spider_eye,,,,,,,,,,,,,,,,,,1,1,0,0 +Fern,fern,,,,,,,,,,,,,,,,,,1,1,0,0 +Fire Charge,fire_charge,,,,,,,,,,,,,,,,,,1,1,0,0 +Fire Coral Block,fire_coral_block,,,,,,,,,,,,,,,,,,1,1,0,0 +Fire Corals,c:fire_corals,X,,,,,,,,,,,,,,,,,1,1,0,0 +Firework,firework_rocket,,,,,,,,,,,,,,,,,,1,1,0,0 +Firework Star,firework_star,,,,,,,,,,,,,,,,,,1,1,0,0 +Fishing Rod,fishing_rod,,,,,,,,,,,,,,,,,,1,1,0,0 +Fletching Table,fletching_table,,,,,,,,,,,,,,,,,,1,1,0,0 +Flint,flint,,,E,1,,,,,,6,,,,,6,,,1,1,12,12 +Flint and Steel,flint_and_steel,,,,,,,,,,,,,,,,,,1,1,0,0 +Flower Pot,flower_pot,,,,,,,,,,,,,,,,,,1,1,0,0 +Furnace,furnace,,,,,,,,,,,,,,,,,,1,1,0,0 +Ghast Tear,ghast_tear,,,B,2,,60,,,,,,,,,,,60,1,1,120,120 +Glass,c:glass,X,,F,1,,,,,,2,,,,2,,,,1,1,4,4 +Glass Bottle,glass_bottle,,,,,,,,,,,,,,,,,,1,1,0,0 +Glass Panes,c:glass_panes,X,,,,,,,,,,,,,,,,,1,1,0,0 +Glistering Melon Slice,glistering_melon_slice,,,,,,,,,,,,,,,,,,1,1,0,0 +Glow Berries,glow_berries,,,D,2,,,8,,,,,,12,4,,,,1,1,24,24 +Glow Ink Sac,glow_ink_sac,,,D,2,,,,,,,,12,12,,,12,,1,1,36,36 +Glow Lichen,glow_lichen,,,E,2,,,6,,,,,,6,,,6,,1,1,18,18 +Glowstone,glowstone,,,C,8,,,,,80,,,,160,80,,,,1,1,320,320 +Glowstone Dust,glowstone_dust,,,C,2,,,,,20,,,,40,20,,,,1,1,80,80 +Gold Block,gold_block,,,B,36,1080,,,,,,,,1080,,,,,1,1,2160,2160 +Gold Ingot,gold_ingot,,,B,4,120,,,,,,,,120,,,,,1,1,240,240 +Gold Nugget,gold_nugget,,,,,,,,,,,,,,,,,,1,1,0,0 +Gold Ore,gold_ore,,,,,,,,,,,,,,,,,,1,1,0,0 +Golden Apple,golden_apple,,,,,,,,,,,,,,,,,,1,1,0,0 +Golden Axe,golden_axe,,,,,,,,,,,,,,,,,,1,1,0,0 +Golden Boots,golden_boots,,,,,,,,,,,,,,,,,,1,1,0,0 +Golden Carrot,golden_carrot,,,,,,,,,,,,,,,,,,1,1,0,0 +Golden Chestplate,golden_chestplate,,,,,,,,,,,,,,,,,,1,1,0,0 +Golden Helmet,golden_helmet,,,,,,,,,,,,,,,,,,1,1,0,0 +Golden Hoe,golden_hoe,,,,,,,,,,,,,,,,,,1,1,0,0 +Golden Horse Armor,golden_horse_armor,,,,,,,,,,,,,,,,,,1,1,0,0 +Golden Leggings,golden_leggings,,,,,,,,,,,,,,,,,,1,1,0,0 +Golden Pickaxe,golden_pickaxe,,,,,,,,,,,,,,,,,,1,1,0,0 +Golden Shovel,golden_shovel,,,,,,,,,,,,,,,,,,1,1,0,0 +Golden Sword,golden_sword,,,,,,,,,,,,,,,,,,1,1,0,0 +Granite,granite,,,F,1,,,,2,,,,,,2,,,,1,0.5,4,4 +Granite Slab,granite_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +"Granite Slab, Polished",polished_granite_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +Granite Stairs,grainite_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +"Granite Stairs, Polished",polished_granite_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +Granite Wall,granite_wall,,,,,,,,,,,,,,,,,,1,1,0,0 +"Granite, Polished",polished_granite,,,F,1,,,,2,,,,,,2,,,,1,1,4,4 +Grass,grass,,,,,,,,,,,,,,,,,,1,1,0,0 +Grass Block,grass_block,,,F,1,,,4,,,2,,,,,,,,1,1,6,4 +Gravel,gravel,,,F,1,,,,,,2,,,,,2,,,1,1,4,4 +Grindstone,grindstone,,,,,,,,,,,,,,,,,,1,1,0,0 +Gunpowder,gunpowder,,,D,2,,,,,16,16,,,,,16,,,1,1,48,48 +Hay Bale,hay_block,,,,,,,,,,,,,,,,,,1,1,0,0 +Heart of the Sea,heart_of_the_sea,,,A,8,,,,,,,,360,,180,,,180,1,1,720,720 +Heavy Pressure Plate,heavy_weighted_pressure_plate,,,,,,,,,,,,,,,,,,1,1,0,0 +Honey Block,honey_block,,,E,4,,24,,,,,,,24,,,,,1,1,48,48 +Honey Bottle,honey_bottle,,,E,1,,6,,,,,,,6,,,,,1,1,12,12 +Honeycomb,honeycomb,,,E,1,,,,,,,,,6,,6,,,1,1,12,12 +Honeycomb Block,honeycomb_block,,,E,4,,,,,,,,,24,,24,,,1,1,48,48 +Hopper,hopper,,,,,,,,,,,,,,,,,,1,1,0,0 +Horn Coral Block,horn_coral_block,,,,,,,,,,,,,,,,,,1,1,0,0 +Horn Corals,c:horn_corals,X,,,,,,,,,,,,,,,,,1,1,0,0 +Ice,ice,,,F,1,,,,,,,,2,,2,,,,1,1,4,4 +Ink Sac,ink_sac,,,E,2,,,,,,,,12,,,12,,,1,1,24,24 +Iridium Ingot,c:iridium_ingots,X,,A,4,180,,,,,,,,,90,,,90,1,1,360,360 +Iron Axe,iron_axe,,,,,,,,,,,,,,,,,,1,1,0,0 +Iron Bars,iron_bars,,,,,,,,,,,,,,,,,,1,1,0,0 +Iron Block,iron_block,,,C,36,720,,,720,,,,,,,,,,1,1,1440,1440 +Iron Boots,iron_boots,,,,,,,,,,,,,,,,,,1,1,0,0 +Iron Chestplate,iron_chestplate,,,,,,,,,,,,,,,,,,1,1,0,0 +Iron Door,iron_door,,,,,,,,,,,,,,,,,,1,1,0,0 +Iron Helmet,iron_helmet,,,,,,,,,,,,,,,,,,1,1,0,0 +Iron Hoe,iron_hoe,,,,,,,,,,,,,,,,,,1,1,0,0 +Iron Horse Armor,iron_horse_armor,,,,,,,,,,,,,,,,,,1,1,0,0 +Iron Ingot,iron_ingot,,,C,4,80,,,80,,,,,,,,,,1,1,160,160 +Iron Leggings,iron_leggings,,,,,,,,,,,,,,,,,,1,1,0,0 +Iron Nugget,iron_nugget,,,,,,,,,,,,,,,,,,1,1,0,0 +Iron Ore,iron_ore,,,,,,,,,,,,,,,,,,1,1,0,0 +Iron Pickaxe,iron_pickaxe,,,,,,,,,,,,,,,,,,1,1,0,0 +Iron Shovel,iron_shovel,,,,,,,,,,,,,,,,,,1,1,0,0 +Iron Sword,iron_sword,,,,,,,,,,,,,,,,,,1,1,0,0 +Iron Trapdoor,iron_trapdoor,,,,,,,,,,,,,,,,,,1,1,0,0 +Iron Trapdoor,iron_trapdoor,,,,,,,,,,,,,,,,,,1,1,0,0 +Item Frame,item_frame,,,,,,,,,,,,,,,,,,1,1,0,0 +Jack o'Lantern,jack_o_lantern,,,,,,,,,,,,,,,,,,1,1,0,0 +Jukebox,jukebox,,,,,,,,,,,,,,,,,,1,1,0,0 +Kelp,kelp,,,E,1,,,6,,,,,6,,,,,,1,1,12,12 +Ladder,ladder,,,,,,,,,,,,,,,,,,1,1,0,0 +Lantern,lantern,,,,,,,,,,,,,,,,,,1,1,0,0 +Lapis Lazuli,lapis_lazuli,,,B,2,30,,,,,,,60,,,,,30,1,1,120,120 +Lapis Lazuli Block,lapis_block,,,,,,,,,,,,,,,,,,1,1,0,0 +Lapis Lazuli Ore,lapis_ore,,,,,,,,,,,,,,,,,,1,1,0,0 +Large Fern,large_fern,,,,,,,,,,,,,,,,,,1,1,0,0 +Lava Bucket,lava_bucket,,,D,1,,,,,24,,,,,,,,,1,1,24,24 +Lead,lead,,,,,,,,,,,,,,,,,,1,1,0,0 +Lead Ingot,c:lead_ingots,X,,C,4,80,,,,,80,,,,,,,,1,1,160,160 +Leather,leather,,,D,2,,,,24,,,,,,,24,,,1,1,48,48 +Leather Boots,leather_boots,,,,,,,,,,,,,,,,,,1,1,0,0 +Leather Cap,leather_cap,,,,,,,,,,,,,,,,,,1,1,0,0 +Leather Horse Armor,leather_horse_armor,,,,,,,,,,,,,,,,,,1,1,0,0 +Leather Pants,leather_pants,,,,,,,,,,,,,,,,,,1,1,0,0 +Leather Tunic,leather_tunic,,,,,,,,,,,,,,,,,,1,1,0,0 +Leaves,leaves,X,,E,1,,,12,,,,,,,,,,,1,1,12,12 +Lectern,lectern,,,,,,,,,,,,,,,,,,1,1,0,0 +Lever,lever,,,,,,,,,,,,,,,,,,1,1,0,0 +Light Pressure Plate,light_weighted_pressure_plate,,,,,,,,,,,,,,,,,,1,1,0,0 +Lilac,lilac,,,E,1,,,6,,6,,,,,,,,,1,1,12,12 +Lily of the Valley,lily_of_the_valley,,,,,,,,,,,,,,,,,,1,1,0,0 +Lily Pad,lily_pad,,,,,,,,,,,,,,,,,,1,1,0,0 +Logs,logs,X,,E,4,,,32,,,,,,,,16,,,1,1,48,48 +Loom,loom,,,,,,,,,,,,,,,,,,1,1,0,0 +Magma Block,magma_block,,,D,4,,,,,32,32,,32,,,,,,1,1,96,96 +Magma Cream,magma_cream,,,D,1,,,,,8,8,,8,,,,,,1,1,24,24 +Map,map,,,,,,,,,,,,,,,,,,1,1,0,0 +Melon,melon,,,E,4,,16,32,,,,,,,,,,,1,1,48,48 +Melon Seeds,melon_seeds,,,E,1,,2,4,,,,,,,,,,,0.5,1,6,12 +Melon Slice,melon_slice,,,E,1,,2,4,,,,,,,,,,,0.5,1,6,12 +Milk Bucket,milk_bucket,,,E,1,,4,4,,,,,4,,,,,,1,1,12,12 +Minecart,minecart,,,,,,,,,,,,,,,,,,1,1,0,0 +Minecart with Chest,chest_minecart,,,,,,,,,,,,,,,,,,1,1,0,0 +Minecart with Furnace,furnace_minecart,,,,,,,,,,,,,,,,,,1,1,0,0 +Minecart with Hopper,hopper_minecart,,,,,,,,,,,,,,,,,,1,1,0,0 +Minecart with TNT,tnt_minecart,,,,,,,,,,,,,,,,,,1,1,0,0 +Moss,moss_block,,,F,1,,,2,,,,,,,,,,,1,1,2,2 +Mushroom Stem,mushroom_stem,,,,,,,,,,,,,,,,,,1,1,0,0 +Music Discs,music_discs,,,,,,,,,,,,,,,,,,1,1,0,0 +"Mutton, Cooked",cooked_mutton,,,,,,,,,,,,,,,,,,1,1,0,0 +"Mutton, Raw",mutton,,,E,2,,,,24,,,,,,,,,,1,1,24,24 +Mycelium,mycelium,,,,,,1,2,,,2,,,,,,1,,1,1,6,0 +Name Tag,name_tag,,,,,,,,,,,,,,,,,,1,1,0,0 +Nautilus Shell,nautilus_shell,,,A,2,,,,,,90,30,60,,,,,,1,1,180,180 +Nether Brick,nether brick,,,,,,,,,,,,,,,,,,1,1,0,0 +Nether Brick Fence,nether_brick_fence,,,,,,,,,,,,,,,,,,1,1,0,0 +Nether Brick Slab,nether_brick_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +Nether Brick Stairs,nether_brick_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +Nether Brick Wall,nether_brick_wall,,,,,,,,,,,,,,,,,,1,1,0,0 +Nether Bricks,nether_bricks,,,,,,,,,,,,,,,,,,1,1,0,0 +Nether Gold Ore,nether_gold_ore,,,,,,,,,,,,,,,,,,1,1,0,0 +Nether Quartz Ore,nether_quartz_ore,,,,,,,,,,,,,,,,,,1,1,0,0 +Nether Sprouts,nether_sprouts,,,D,2,,,12,,,,24,,,,,12,,1,1,48,48 +Nether Star,nether_star,,,S,32,,,,,,,,,1280,1280,,,1280,1,1,3840,3840 +Nether Wart,nether_wart,,,D,2,,,12,24,,,,,,,,12,,1,1,48,48 +Nether Wart Block,nether_wart_block,,,E,4,,,12,24,,,,,,,,12,,1,1,48,48 +Netherite Axe,netherite_axe,,,,,,,,,,,,,,,,,,1,1,0,0 +Netherite Block,netherite_block,,,,,,,,,,,,,,,,,,1,1,0,0 +Netherite Boots,netherite_boots,,,,,,,,,,,,,,,,,,1,1,0,0 +Netherite Chestplate,netherite_chestplate,,,,,,,,,,,,,,,,,,1,1,0,0 +Netherite Helmet,netherite_helmet,,,,,,,,,,,,,,,,,,1,1,0,0 +Netherite Hoe,netherite_hoe,,,,,,,,,,,,,,,,,,1,1,0,0 +Netherite Ingot,netherite_ingot,,,S,16,960,,,,,,,,480,,,480,480,1,0.8,2400,1920 +Netherite Leggings,netherite_leggings,,,,,,,,,,,,,,,,,,1,1,0,0 +Netherite Pickaxe,netherite_pickaxe,,,,,,,,,,,,,,,,,,1,1,0,0 +Netherite Scrap,netherite_scrap,,,S,4,240,,,,,,,,,,,120,120,1,1,480,480 +Netherite Shovel,netherite_shovel,,,,,,,,,,,,,,,,,,1,1,0,0 +Netherite Sword,netherite_sword,,,,,,,,,,,,,,,,,,1,1,0,0 +Netherrack,netherrack,,,F,1,2,,,,2,,,,,,,2,,1,1,6,4 +Nickel Ingot,c:nickel_ingots,X,,B,4,120,,,60,,,60,,,,,,,1,1,240,240 +Note Block,note_block,,,,,,,,,,,,,,,,,,1,1,0,0 +Observer,observer,,,,,,,,,,,,,,,,,,1,1,0,0 +Obsidian,obsidian,,,D,4,,,,,32,,,32,,,32,,,1,1,96,96 +Orange Tulip,orange_tulip,,,,,,,,,,,,,,,,,,1,1,0,0 +Osmium Ingot,c:osmium_ingots,X,,B,4,120,,,,,,,,,,60,,60,1,1,240,240 +Oxeye Daisy,oxeye_daisy,,,,,,,,,,,,,,,,,,1,1,0,0 +Packed Ice,packed_ice,,,E,1,,,,,,,,6,,6,,,,1,1,12,12 +Painting,painting,,,,,,,,,,,,,,,,,,1,1,0,0 +Palladium Ingot,c:palladium_ingots,X,,A,4,180,90,,,,,,,,,,,90,1,1,360,360 +Paper,paper,,,E,1,,,8,,,,,4,,,,,,1,0.67,12,12 +Peony,peony,,,E,1,6,,6,,,,,,,,,,,1,1,12,12 +Peridot,c:peridots,X,,B,4,,,,,,120,,,,120,,,,1,1,240,240 +Phantom Membrane,phantom_membrane,,,B,2,,,,,,,40,,40,40,,,,1,1,120,120 +Pink Tulip,pink_tulip,,,,,,,,,,,,,,,,,,1,1,0,0 +Piston,piston,,,,,,,,,,,,,,,,,,1,1,0,0 +"Piston, Sticky",sticky_piston,,,,,,,,,,,,,,,,,,1,1,0,0 +Planks,planks,X,,E,1,,,8,,,,,,,,4,,,1,1,12,12 +Platinum Ingot,c:platinum_ingots,X,,A,4,180,,,,,,,,,,,,180,1,1,360,360 +Plutonium Ingot,c:plutonium_ingots,X,,A,4,180,,,,,,,90,,,,90,,1,1,360,360 +Podzol,podzol,,,F,1,,,2,,,2,,,,,2,,,1,1,6,4 +Poisonous Potato,poisonous_potato,,,,,,,,,,,,,,,,,,1,1,0,0 +Popped Chorus Fruit,popped_chorus_fruit,,,,,,,,,,,,,,,,,,1,1,0,0 +Poppy,poppy,,,,,,,,,,,,,,,,,,1,1,0,0 +"Porkchop, Cooked",cooked_porkchop,,,,,,,,,,,,,,,,,,1,1,0,0 +"Porkchop, Raw",porkchop,,,E,2,,,,24,,,,,,,,,,1,1,24,24 +Potato,potato,,,E,2,,,16,,,,,,,,8,,,1,1,24,24 +Potions / Water Bottle,potion,,,,,,,,,,,,,,,,,,1,1,0,0 +Powered Rail,powered_rail,,,,,,,,,,,,,,,,,,1,1,0,0 +Prismarine,prismarine,,,,,,,,,,,,,,,,,,1,1,0,0 +Prismarine Brick Slab,prismarine_brick_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +Prismarine Brick Stairs,prismarine_brick_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +Prismarine Bricks,prismarine_bricks,,,,,,,,,,,,,,,,,,1,1,0,0 +Prismarine Crystals,prismarine_crystals,,,C,2,,,,,,,20,40,,20,,,,1,1,80,80 +Prismarine Shard,prismarine_shard,,,C,2,,,,,,20,20,40,,,,,,1,1,80,80 +Prismarine Slab,prismarine_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +Prismarine Stairs,prismarine_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +Prismarine Wall,prismarine_wall,,,,,,,,,,,,,,,,,,1,1,0,0 +Pufferfish,pufferfish,,,E,2,,,,6,,,,12,6,,,,,1,1,24,24 +Pufferfish Bucket,pufferfish_bucket,,,,,,,,,,,,,,,,,,1,1,0,0 +Pumpkin,pumpkin,,,E,4,,,32,,,,,,16,,,,,1,1,48,48 +Pumpkin Pie,pumpkin_pie,,,,,,,,,,,,,,,,,,1,1,0,0 +Pumpkin Seeds,pumpkin_seeds,,,E,1,,,4,,,,,,2,,,,,0.5,1,6,12 +"Pumpkin, Carved",carved_pumpkin,,,,,,,,,,,,,,,,,,1,1,0,0 +Quartz,quartz,,,C,2,,,,,,20,,,,40,,20,,1,1,80,80 +Quartz Block,quartz_block,,,,,,,,,,,,,,,,,,1,1,0,0 +"Quartz Block, Chiseled ",chiseled_quartz_block,,,,,,,,,,,,,,,,,,1,1,0,0 +"Quartz Block, Smooth",smooth_quartz,,,,,,,,,,,,,,,,,,1,1,0,0 +Quartz Pillar,quartz_pillar,,,,,,,,,,,,,,,,,,1,1,0,0 +Quartz Slab,quartz_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +"Quartz Slab, Smooth",smooth_quartz_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +Quartz Stairs,quartz_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +"Quartz Stairs, Smooth",smooth_quartz_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +Rabbit Foot,rabbit_foot,,,B,1,,,,20,,,,,20,,,,20,1,1,60,60 +Rabbit Hide,rabbit_hide,,,D,1,,,,12,,,,,,,12,,,1,1,24,24 +Rabbit Stew,rabbit_stew,,,,,,,,,,,,,,,,,,1,1,0,0 +"Rabbit, Cooked",cooked_rabbit,,,,,,,,,,,,,,,,,,1,1,0,0 +"Rabbit, Raw",rabbit,,,,,,,,,,,,,,,,,,1,1,0,0 +Rail,rail,,,,,,,,,,,,,,,,,,1,1,0,0 +Red Mushroom,red_mushroom,,,E,1,,4,,,4,,,,,,,4,,1,1,12,12 +Red Mushroom Block,red_mushroom_block,,,,,,,,,,,,,,,,,,1,1,0,0 +Red Nether Brick Slab,red_nether_brick_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +Red Nether Brick Stairs,red_nether_brick_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +Red Nether Brick Wall,red_nether_brick_wall,,,,,,,,,,,,,,,,,,1,1,0,0 +Red Nether Bricks,red_nether_bricks,,,,,,,,,,,,,,,,,,1,1,0,0 +Red Sand,red_sand,,,F,1,,,,2,,2,,,,,,,,1,0.5,4,4 +Red Sandstone,red_sandstone,,,F,4,,,,8,,8,,,,,,,,1,0.5,16,16 +Red Sandstone Slab,red_sandstone_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +"Red Sandstone Slab, Cut",cut_red_sandstone_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +"Red Sandstone Slab, Smooth",smooth_red_sandstone_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +Red Sandstone Stairs,red_sandstone_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +"Red Sandstone Stairs, Smooth",smooth_red_sandstone_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +Red Sandstone Wall,red_sandstone_wall,,,,,,,,,,,,,,,,,,1,1,0,0 +"Red Sandstone, Chiseled ",chiseled_red_sandstone,,,,,,,,,,,,,,,,,,1,1,0,0 +"Red Sandstone, Cut",cut_red_sandstone,,,,,,,,,,,,,,,,,,1,1,0,0 +"Red Sandstone, Smooth",smooth_red_sandstone,,,,,,,,,,,,,,,,,,1,1,0,0 +Red Tulip,red_tulip,,,,,,,,,,,,,,,,,,1,1,0,0 +Redstone,redstone,,,C,2,20,40,,,,20,,,,,,,,1,1,80,80 +Redstone Block,redstone_block,,,,,,,,,,,,,,,,,,1,1,0,0 +Redstone Comparator,comparator,,,,,,,,,,,,,,,,,,1,1,0,0 +Redstone Lamp,redstone_lamp,,,,,,,,,,,,,,,,,,1,1,0,0 +Redstone Ore,redstone_ore,,,,,,,,,,,,,,,,,,1,1,0,0 +Redstone Torch,redstone_torch,,,,,,,,,,,,,,,,,,1,1,0,0 +Respawn Anchor,respawn_anchor,,,,,,,,,,,,,,,,,,1,1,0,0 +Rose Bush,rose_bush,,,E,1,,6,6,,,,,,,,,,,1,1,12,12 +Rotten Flesh,rotten_flesh,,,F,2,,,,4,,,,,,,,4,,1,1,8,8 +Ruby,c:rubies,X,,B,4,,,,120,,,,,,120,,,,1,1,240,240 +Saddle,saddle,,,,,,,,,,,,,,,,,,1,1,0,0 +Salmon Bucket,salmon_bucket,,,,,,,,,,,,,,,,,,1,1,0,0 +"Salmon, Cooked",cooked_salmon,,,,,,,,,,,,,,,,,,1,1,0,0 +"Salmon, Raw",salmon,,,E,2,,,,12,,,,12,,,,,,1,1,24,24 +Sand,sand,,,F,1,,,,,,2,,,2,,,,,1,0.5,4,4 +Sandstone,sandstone,,,F,4,,,,,,8,,,8,,,,,1,0.5,16,16 +Sandstone Slab,sandstone_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +"Sandstone Slab, Cut",cut_sandstone_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +"Sandstone Slab, Smooth",smooth_sandstone_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +Sandstone Stairs,sandstone_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +"Sandstone Stairs, Smooth",smooth_sandstone_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +Sandstone Wall,sandstone_wall,,,,,,,,,,,,,,,,,,1,1,0,0 +"Sandstone, Chiseled ",chiseled_sandstone,,,,,,,,,,,,,,,,,,1,1,0,0 +"Sandstone, Cut",cut_sandstone,,,,,,,,,,,,,,,,,,1,1,0,0 +"Sandstone, Smooth",smooth_sandstone,,,,,,,,,,,,,,,,,,1,1,0,0 +Saplings,saplings,X,,E,1,,,12,,,,,,,,,,,1,1,12,12 +Sapphire,c:sapphires,X,,B,4,,,,,,,,120,,120,,,,1,1,240,240 +Scaffolding,scaffolding,,,,,,,,,,,,,,,,,,1,1,0,0 +Scute,scute,,,C,2,,,,,,20,,40,,,20,,,1,1,80,80 +Sea Lantern,sea_lantern,,,,,,,,,,,,,,,,,,1,1,0,0 +Sea Pickle,sea_pickle,,,E,1,,4,4,,,,,4,,,,,,1,1,12,12 +Seagrass,seagrass,,,,,,,,,,,,,,,,,,1,1,0,0 +Shears,shears,,,,,,,,,,,,,,,,,,1,1,0,0 +Shield,shield,,,,,,,,,,,,,,,,,,1,1,0,0 +Shroomlight,shroomlight,,,D,2,12,,,,12,,,,12,,,,,1,1,36,48 +Shulker Box,shulker_box,,,,,,,,,,,,,,,,,,1,1,0,0 +Shulker Shell,shulker_shell,,,B,2,40,,,,,40,40,,,,,,,1,1,120,120 +Signs,signs,X,,,,,,,,,,,,,,,,,1,1,0,0 +Silver Ingot,c:silver_ingots,X,,B,4,120,,,,,,,,,120,,,,1,1,240,240 +Skeleton Skull,skeleton_skull,,,,,,,,,,,,,,,,,,1,1,0,0 +Slime Block,slime_block,,,,,,,,,,,,,,,,,,1,1,0,0 +Slimeball,slime_ball,,,C,1,,,,,,20,,20,,,,,,1,1,40,40 +Smithing Table,smithing_table,,,,,,,,,,,,,,,,,,1,1,0,0 +Smoker,smoker,,,,,,,,,,,,,,,,,,1,1,0,0 +Snow,snow,,,F,1,,,,,,,,3,,1,,,,1,1,4,4 +Snow Block,snow_block,,,F,4,,,,,,,,6,,2,,,,1,1,8,16 +Snowball,snowball,,,F,1,,,,,,,,3,,1,,,,0.5,0.5,4,4 +Soul Fire Lantern,soul_fire_lantern,,,,,,,,,,,,,,,,,,1,1,0,0 +Soul Fire Torch,soul_fire_torch,,,,,,,,,,,,,,,,,,1,1,0,0 +Soul Sand,soul_sand,,,E,1,,,,,,3,,,,,3,6,,1,1,12,12 +Soul Soil,soul_soil,,,E,1,,,,,,3,,3,,,,6,,1,1,12,12 +Spectral Arrow,spectral_arrow,,,,,,,,,,,,,,,,,,1,1,0,0 +Spider Eye,spider_eye,,,F,2,4,,,,,,,,,,,4,,1,1,8,8 +Sponge,sponge,,,C,4,,,80,,,,,40,40,,,,,1,1,160,160 +Stick,stick,,,E,1,,4,,,,,,,,,2,,,0.5,1,6,12 +Stone,stone,,,F,1,2,,,,,2,,,,,,,,1,0.5,4,4 +Stone Axe,stone_axe,,,,,,,,,,,,,,,,,,1,1,0,0 +Stone Brick Slab,stone_brick_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +"Stone Brick Slab, Mossy",mossy_stone_brick_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +Stone Brick Stairs,stone_brick_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +"Stone Brick Stairs, Mossy",mossy_stone_brick_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +Stone Brick Wall,stone_brick_wall,,,,,,,,,,,,,,,,,,1,1,0,0 +"Stone Brick Wall, Mossy",mossy_stone_brick_wall,,,,,,,,,,,,,,,,,,1,1,0,0 +Stone Bricks,stone_bricks,,,,,,,,,,,,,,,,,,1,1,0,0 +"Stone Bricks, Chiseled ",chiseled_stone_bricks,,,,,,,,,,,,,,,,,,1,1,0,0 +"Stone Bricks, Cracked",cracked_stone_bricks,,,,,,,,,,,,,,,,,,1,1,0,0 +"Stone Bricks, Mossy",mossy_stone_bricks,,,,,,,,,,,,,,,,,,1,1,0,0 +Stone Button,stone_button,,,,,,,,,,,,,,,,,,1,1,0,0 +Stone Hoe,stone_hoe,,,,,,,,,,,,,,,,,,1,1,0,0 +Stone Pickaxe,stone_pickaxe,,,,,,,,,,,,,,,,,,1,1,0,0 +Stone Pressure Plate,stone_pressure_plate,,,,,,,,,,,,,,,,,,1,1,0,0 +Stone Shovel,stone_shovel,,,,,,,,,,,,,,,,,,1,1,0,0 +Stone Slab,stone_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +"Stone Slab, Smooth",smooth_stone_slab,,,,,,,,,,,,,,,,,,1,1,0,0 +Stone Stairs,stone_stairs,,,,,,,,,,,,,,,,,,1,1,0,0 +Stone Sword,stone_sword,,,,,,,,,,,,,,,,,,1,1,0,0 +"Stone, Smooth",smooth_stone,,,F,1,2,,,,,2,,,,,,,,1,1,4,4 +Stonecutter,stonecutter,,,,,,,,,,,,,,,,,,1,1,0,0 +String,string,,,E,1,6,,,,3,,3,,,,,,,1,1,12,12 +Sugar,sugar,,,E,1,,8,4,,,,,,,,,,,1,0.67,12,12 +Sugar Cane,sugar_cane,,,E,1,,4,4,,,,,4,,,,,,1,1,12,12 +Sunflower,sunflower,,,E,1,,,6,,,,,,6,,,,,1,1,12,12 +Suspicious Stew,suspicious_stew,,,,,,,,,,,,,,,,,,1,1,0,0 +Sweet Berries,sweet_berries,,,E,1,,,8,,,,,,,4,,,,1,1,12,12 +Target,target,,,,,,,,,,,,,,,,,,1,1,0,0 +Terracotta,terracotta,,,F,1,,,,,,2,,1,,,1,,,1,1,4,4 +Thorium Ingot,c:thorium_ingots,X,,A,4,180,90,,,,,,,,,,90,,1,1,360,360 +Tin Ingot,c:tin_ingots,X,,C,4,80,,,,80,,,,,,,,,1,1,160,160 +Tipped Arrow,tipped_arrow,,,,,,,,,,,,,,,,,,1,1,0,0 +Titanium Ingot,c:titanium_ingots,X,,B,4,120,,,,,60,,,,,60,,,1,1,240,240 +TNT,tnt,,,,,,,,,,,,,,,,,,1,1,0,0 +Topaz,c:topazes,X,,B,4,,120,,,120,,,,,,,,,1,1,240,240 +Torch,torch,,,,,,,,,,,,,,,,,,1,1,0,0 +Totem of Undying,totem_of_undying,,,,,,,,,,,,,,,,,,1,1,0,0 +Trapped Chest,trapped_chest,,,,,,,,,,,,,,,,,,1,1,0,0 +Trident,trident,,,,,,,,,,,,,,,,,,1,1,0,0 +Tripwire Hook,tripwire_hook,,,,,,,,,,,,,,,,,,1,1,0,0 +Tropical Fish,tropical_fish,,,E,2,,,,12,,,,12,,,,,,1,1,24,24 +Tropical Fish Bucket,tropical_fish_bucket,,,,,,,,,,,,,,,,,,1,1,0,0 +Tube Coral Block,tube_coral_block,,,,,,,,,,,,,,,,,,1,1,0,0 +Tube Corals,c:tube_corals,X,,,,,,,,,,,,,,,,,1,1,0,0 +Tuff,tuff,,,E,2,12,,,,,,,,,,4,,,1,1,16,16 +Tungsten Ingot,c:tungsten_ingots,X,,B,4,120,,,,60,,,,,,60,,,1,1,240,240 +Turtle Egg,turtle_egg,,,D,2,,16,,,,16,,16,,,,,,1,1,48,48 +Turtle Shell,turtle_helmet,,,,,,,,,,,,,,,,,,1,1,0,0 +Twisting Vines,twisting_vines,,,E,1,,,6,,,,6,,,,,,,1,1,12,12 +Uranium Ingot,c:uranium_ingots,X,,A,4,180,,,,,,90,,,,,90,,1,1,360,360 +Vines,vine,,,E,1,,,12,,,,,,,,,,,1,1,12,12 +Warped Fungus,warped_fungus,,,E,1,4,,,,,,4,,4,,,,,1,1,12,12 +Warped Nylium,warped_nylium,,,F,1,2,,,,2,,2,,,,,2,,1,1,8,4 +Warped Roots,warped_roots,,,E,1,,,4,,,,4,,,,,4,,1,1,12,12 +Warped Wart Block,warped_wart_block,,,E,4,,,12,,,,24,,,,,12,,1,1,48,48 +Water Bucket,water_bucket,,,F,1,,,,,,,,4,,,,,,1,0.5,4,4 +Weeping Vines,weeping_vines,,,E,1,,,6,6,,,,,,,,,,1,1,12,12 +Wheat,wheat,,,E,2,,,24,,,,,,,,,,,1,1,24,24 +Wheat Seeds,wheat_seeds,,,E,1,,,6,,,,,,,,,,,0.5,1,6,12 +White Tulip,white_tulip,,,,,,,,,,,,,,,,,,1,1,0,0 +Wither Rose,wither_rose,,,,,,,,,,,,,,,,,,1,1,0,0 +Wither Skeleton Skull,wither_skeleton_skull,,,A,4,,,,,90,90,,,,,90,90,,1,1,360,360 +Wooden Axe,wooden_axe,,,,,,,,,,,,,,,,,,1,1,0,0 +Wooden Buttons,wooden_buttons,X,,,,,,,,,,,,,,,,,1,1,0,0 +Wooden Doors,wooden_doors,X,,,,,,,,,,,,,,,,,1,1,0,0 +Wooden Fence Gates,c:wooden_fence_gates,X,,,,,,,,,,,,,,,,,1,1,0,0 +Wooden Fences,wooden_fences,X,,,,,,,,,,,,,,,,,1,1,0,0 +Wooden Hoe,wooden_hoe,,,,,,,,,,,,,,,,,,1,1,0,0 +Wooden Pickaxe,wooden_pickaxe,,,,,,,,,,,,,,,,,,1,1,0,0 +Wooden Pressure Plates,wooden_pressure_plates,X,,,,,,,,,,,,,,,,,1,1,0,0 +Wooden Shovel,wooden_shovel,,,,,,,,,,,,,,,,,,1,1,0,0 +Wooden Sword,wooden_sword,,,,,,,,,,,,,,,,,,1,1,0,0 +Wooden Trapdoors,wooden_trapdoors,X,,,,,,,,,,,,,,,,,1,1,0,0 +Wool,wool,X,,E,4,24,,12,,,,12,,,,,,,1,1,48,48 +Written Book,written_book,,,,,,,,,,,,,,,,,,1,1,0,0 +Zinc Ingot,c:zinc_ingots,X,,C,4,80,,80,,,,,,,,,,,1,1,160,160 +Zombie Head,zombie_head,,,,,,,,,,,,,,,,,,1,1,0,0 diff --git a/src/main/resources/data/artofalchemy/recipes/synthesis/moss.json b/src/main/resources/data/artofalchemy/recipes/synthesis/moss.json deleted file mode 100644 index 26206f4..0000000 --- a/src/main/resources/data/artofalchemy/recipes/synthesis/moss.json +++ /dev/null @@ -1 +0,0 @@ -{"type":"artofalchemy:synthesis","target":{"item":"minecraft:moss"},"materia":{"item":"artofalchemy:materia_f"},"essentia":{"artofalchemy:tellus":2},"cost":1} \ No newline at end of file diff --git a/src/main/resources/data/artofalchemy/recipes/synthesis/moss_block.json b/src/main/resources/data/artofalchemy/recipes/synthesis/moss_block.json new file mode 100644 index 0000000..0b37047 --- /dev/null +++ b/src/main/resources/data/artofalchemy/recipes/synthesis/moss_block.json @@ -0,0 +1 @@ +{"type":"artofalchemy:synthesis","target":{"item":"minecraft:moss_block"},"materia":{"item":"artofalchemy:materia_f"},"essentia":{"artofalchemy:tellus":2},"cost":1} \ No newline at end of file diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index 5808f0b..c25b84e 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -1,32 +1,33 @@ { "schemaVersion": 1, "id": "artofalchemy", - "version": "$version", + "version": "1.3.0", "name": "Art of Alchemy: Memoriam", "description": "An industrial magic mod that allows you to unleash the power of transmutation!\nIn loving memory of Amelia aka SynthRose.", "authors": [ "SynthRose", - "Vaerian" + "Vaerian", + "Kyran" ], "contributors": [], "contact": { - "sources": "https://github.com/CumulusMC/Art-of-Alchemy", - "homepage": "https://cumulusmc.com/mods/art-of-alchemy", - "issues": "https://github.com/CumulusMC/Art-of-Alchemy/issues", - "discord": "https://discord.gg/gHMN9mj" + "sources": "https://github.com/CafeteriaGuild/Art-of-Alchemy", + "homepage": "https://github.com/CafeteriaGuild/Art-of-Alchemy", + "issues": "https://github.com/CafeteriaGuild/Art-of-Alchemy/issues", + "discord": "https://discord.gg/G4PjhEf" }, "license": "MIT", "icon": "assets/artofalchemy/icon.png", "environment": "*", "entrypoints": { "main": [ - "com.cumulusmc.artofalchemy.ArtOfAlchemy" + "dev.cafeteria.artofalchemy.ArtOfAlchemy" ], "client": [ - "com.cumulusmc.artofalchemy.ArtOfAlchemyClient" + "dev.cafeteria.artofalchemy.ArtOfAlchemyClient" ], "modmenu": [ - "com.cumulusmc.artofalchemy.integration.AoAxModMenu" + "dev.cafeteria.artofalchemy.integration.AoAxModMenu" ] }, "mixins": [