From d3780c50116166455e7ee976f7f7ed7b3ac2eb7f Mon Sep 17 00:00:00 2001 From: Flanks255 <32142731+Flanks255@users.noreply.github.com> Date: Sat, 13 Nov 2021 17:20:29 -0600 Subject: [PATCH] So much porting... --- .../api/tile/IPhantomTile.java | 5 - .../data/EmpoweringRecipeGenerator.java | 10 +- .../data/ItemRecipeGenerator.java | 5 +- .../mod/blocks/BlockInputter.java | 93 ----- .../mod/crafting/InitCrafting.java | 5 +- .../mod/event/ClientEvents.java | 2 +- .../mod/inventory/ContainerBag.java | 3 +- .../mod/inventory/ContainerGrinder.java | 7 +- .../mod/inventory/ContainerInputter.java | 132 ------- .../mod/inventory/gui/Buttons.java | 85 +++++ .../mod/inventory/gui/EnergyDisplay.java | 20 +- .../mod/inventory/gui/FilterSettingsGui.java | 51 ++- .../mod/inventory/gui/GuiBag.java | 19 +- .../mod/inventory/gui/GuiInputter.java | 348 ------------------ .../gui/GuiLaserRelayItemWhitelist.java | 5 +- .../mod/items/ActuallyItems.java | 26 +- .../mod/items/AllInOneTool.java | 51 +++ .../mod/items/ItemAllToolAA.java | 128 ------- .../mod/items/ItemCoffee.java | 99 +++-- .../actuallyadditions/mod/items/ItemDust.java | 55 +-- .../mod/items/ItemFoods.java | 124 ------- .../actuallyadditions/mod/items/ItemJams.java | 86 +---- .../mod/items/ItemPotionRing.java | 78 ++-- .../mod/items/ItemShovelAA.java | 5 +- .../mod/items/base/ActuallyItem.java | 18 + .../mod/items/base/IActuallyItem.java | 5 + .../mod/items/base/ItemFoodSeed.java | 14 +- .../mod/items/base/ItemSeed.java | 13 +- .../mod/items/misc/DrillAugmentItem.java | 39 ++ .../mod/items/misc/YummyItem.java | 62 ++++ .../mod/network/PacketHandlerHelper.java | 7 +- .../mod/tile/TileEntityEnervator.java | 5 +- .../mod/tile/TileEntityInputter.java | 332 ----------------- .../mod/tile/TileEntityPhantomPlacer.java | 8 - .../mod/util/IColorProvidingBlock.java | 22 -- .../mod/util/IColorProvidingItem.java | 22 -- 36 files changed, 453 insertions(+), 1536 deletions(-) delete mode 100644 src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockInputter.java delete mode 100644 src/main/java/de/ellpeck/actuallyadditions/mod/inventory/ContainerInputter.java create mode 100644 src/main/java/de/ellpeck/actuallyadditions/mod/inventory/gui/Buttons.java delete mode 100644 src/main/java/de/ellpeck/actuallyadditions/mod/inventory/gui/GuiInputter.java create mode 100644 src/main/java/de/ellpeck/actuallyadditions/mod/items/AllInOneTool.java delete mode 100644 src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemAllToolAA.java delete mode 100644 src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemFoods.java create mode 100644 src/main/java/de/ellpeck/actuallyadditions/mod/items/base/ActuallyItem.java create mode 100644 src/main/java/de/ellpeck/actuallyadditions/mod/items/base/IActuallyItem.java create mode 100644 src/main/java/de/ellpeck/actuallyadditions/mod/items/misc/DrillAugmentItem.java create mode 100644 src/main/java/de/ellpeck/actuallyadditions/mod/items/misc/YummyItem.java delete mode 100644 src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityInputter.java delete mode 100644 src/main/java/de/ellpeck/actuallyadditions/mod/util/IColorProvidingBlock.java delete mode 100644 src/main/java/de/ellpeck/actuallyadditions/mod/util/IColorProvidingItem.java diff --git a/src/main/java/de/ellpeck/actuallyadditions/api/tile/IPhantomTile.java b/src/main/java/de/ellpeck/actuallyadditions/api/tile/IPhantomTile.java index a56c0ee07..7fb45a1c2 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/api/tile/IPhantomTile.java +++ b/src/main/java/de/ellpeck/actuallyadditions/api/tile/IPhantomTile.java @@ -37,11 +37,6 @@ public interface IPhantomTile { */ void setBoundPosition(BlockPos pos); - /** - * @return The ID of the GUI it opens, -1 if none - */ - int getGuiID(); - /** * @return The range the tile currently has */ diff --git a/src/main/java/de/ellpeck/actuallyadditions/data/EmpoweringRecipeGenerator.java b/src/main/java/de/ellpeck/actuallyadditions/data/EmpoweringRecipeGenerator.java index f73da8222..cf766df34 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/data/EmpoweringRecipeGenerator.java +++ b/src/main/java/de/ellpeck/actuallyadditions/data/EmpoweringRecipeGenerator.java @@ -132,35 +132,35 @@ public class EmpoweringRecipeGenerator extends RecipeProvider { public EmpoweringBuilder addModifier(IItemProvider input) { if (modifiers.size() >= 4) - throw new InvalidStateException("too many modifiers for empowering recipe, input: " + input.asItem().getRegistryName()); + throw new IllegalStateException("too many modifiers for empowering recipe, input: " + input.asItem().getRegistryName()); modifiers.add(Ingredient.of(input)); return this; } public EmpoweringBuilder addModifier(ItemStack input) { if (modifiers.size() >= 4) - throw new InvalidStateException("too many modifiers for empowering recipe, input: " + input.getItem().getRegistryName()); + throw new IllegalStateException("too many modifiers for empowering recipe, input: " + input.getItem().getRegistryName()); modifiers.add(Ingredient.of(input)); return this; } public EmpoweringBuilder addModifier(ITag input) { if (modifiers.size() >= 4) - throw new InvalidStateException("too many modifiers for empowering recipe, input: " + input.toString()); + throw new IllegalStateException("too many modifiers for empowering recipe, input: " + input.toString()); modifiers.add(Ingredient.of(input)); return this; } public void save(Consumer consumer, ResourceLocation name) { if (modifiers.size() != 4) - throw new InvalidStateException("invalid modifier count: " + modifiers.size() + ", recipe: " + name.toString()); + throw new IllegalStateException("invalid modifier count: " + modifiers.size() + ", recipe: " + name.toString()); consumer.accept(new EmpowererRecipe.FinishedRecipe(name, result, base, modifiers.get(0), modifiers.get(1), modifiers.get(2), modifiers.get(3), energy, time, color)); } public void save(Consumer consumer, String name) { ResourceLocation res = new ResourceLocation(ActuallyAdditions.MODID, "empowering/" + name); if (modifiers.size() != 4) - throw new InvalidStateException("invalid modifier count: " + modifiers.size() + ", recipe: " + res); + throw new IllegalStateException("invalid modifier count: " + modifiers.size() + ", recipe: " + res); consumer.accept(new EmpowererRecipe.FinishedRecipe(res, result, base, modifiers.get(0), modifiers.get(1), modifiers.get(2), modifiers.get(3), energy, time, color)); } } diff --git a/src/main/java/de/ellpeck/actuallyadditions/data/ItemRecipeGenerator.java b/src/main/java/de/ellpeck/actuallyadditions/data/ItemRecipeGenerator.java index b314e8ffb..51732bfd6 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/data/ItemRecipeGenerator.java +++ b/src/main/java/de/ellpeck/actuallyadditions/data/ItemRecipeGenerator.java @@ -6,7 +6,6 @@ import de.ellpeck.actuallyadditions.mod.crafting.ActuallyRecipes; import de.ellpeck.actuallyadditions.mod.crafting.TargetNBTIngredient; import de.ellpeck.actuallyadditions.mod.crafting.WrappedRecipe; import de.ellpeck.actuallyadditions.mod.items.ActuallyItems; -import de.ellpeck.actuallyadditions.mod.items.metalists.TheFoods; import net.minecraft.data.*; import net.minecraft.enchantment.Enchantments; import net.minecraft.item.Item; @@ -171,12 +170,12 @@ public class ItemRecipeGenerator extends RecipeProvider { .define('S', ActuallyItems.ENORI_CRYSTAL.get()).save(consumer); - //Rice Recipes +/* //Rice Recipes Recipe.shaped(Items.PAPER, 3) .pattern("R ") .pattern(" R ") .pattern(" R") - .define('R', TheFoods.RICE).save(consumer); //TODO foods need worked on still. + .define('R', TheFoods.RICE).save(consumer); //TODO foods need worked on still.*/ Recipe.shaped(ActuallyItems.RICE_SLIME.get()) .pattern(" R ") diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockInputter.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockInputter.java deleted file mode 100644 index 0ad41bf76..000000000 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockInputter.java +++ /dev/null @@ -1,93 +0,0 @@ -/* - * This file ("BlockInputter.java") is part of the Actually Additions mod for Minecraft. - * It is created and owned by Ellpeck and distributed - * under the Actually Additions License to be found at - * http://ellpeck.de/actaddlicense - * View the source code at https://github.com/Ellpeck/ActuallyAdditions - * - * © 2015-2017 Ellpeck - */ - -package de.ellpeck.actuallyadditions.mod.blocks; - -import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase; -import de.ellpeck.actuallyadditions.mod.tile.TileEntityInputter; -import de.ellpeck.actuallyadditions.mod.tile.TileEntityInputterAdvanced; -import net.minecraft.block.BlockState; -import net.minecraft.entity.player.PlayerEntity; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.ActionResultType; -import net.minecraft.util.Hand; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.BlockRayTraceResult; -import net.minecraft.world.IBlockReader; -import net.minecraft.world.World; - -public class BlockInputter extends BlockContainerBase { - - public static final int NAME_FLAVOR_AMOUNTS = 15; - - public final boolean isAdvanced; - - public BlockInputter(boolean isAdvanced) { - super(ActuallyBlocks.defaultPickProps(0).randomTicks()); - this.isAdvanced = isAdvanced; - } - - @Override - public TileEntity newBlockEntity(IBlockReader worldIn) { - return this.isAdvanced - ? new TileEntityInputterAdvanced() - : new TileEntityInputter(); - } - - @Override - public ActionResultType use(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand handIn, BlockRayTraceResult hit) { - if (this.isAdvanced) { - return this.openGui(world, player, pos, TileEntityInputterAdvanced.class); - } - - return this.openGui(world, player, pos, TileEntityInputter.class); - } - - // TODO: [port] ADD BACK - - // public static class TheItemBlock extends ItemBlockBase { - // - // private final Random rand = new Random(); - // private long lastSysTime; - // private int toPick; - // - // public TheItemBlock(Block block) { - // super(block); - // this.setHasSubtypes(false); - // this.setMaxDamage(0); - // } - // - // @Override - // public String getTranslationKey(ItemStack stack) { - // return this.getTranslationKey(); - // } - // - // @Override - // public int getMetadata(int damage) { - // return damage; - // } - // - // @Override - // public String getItemStackDisplayName(ItemStack stack) { - // if (Util.isClient()) { - // long sysTime = System.currentTimeMillis(); - // - // if (this.lastSysTime + 5000 < sysTime) { - // this.lastSysTime = sysTime; - // this.toPick = this.rand.nextInt(NAME_FLAVOR_AMOUNTS) + 1; - // } - // - // return StringUtil.localize(this.getTranslationKey() + ".name") + " (" + StringUtil.localize("tile." + ActuallyAdditions.MODID + ".block_inputter.add." + this.toPick + ".name") + ")"; - // } else { - // return super.getItemStackDisplayName(stack); - // } - // } - // } -} diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/crafting/InitCrafting.java b/src/main/java/de/ellpeck/actuallyadditions/mod/crafting/InitCrafting.java index bac35ccc1..041ca13ed 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/crafting/InitCrafting.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/crafting/InitCrafting.java @@ -15,7 +15,6 @@ import de.ellpeck.actuallyadditions.mod.ActuallyAdditions; import de.ellpeck.actuallyadditions.mod.config.values.ConfigIntListValues; import de.ellpeck.actuallyadditions.mod.fluids.InitFluids; import de.ellpeck.actuallyadditions.mod.misc.apiimpl.farmer.*; -import net.minecraft.util.ResourceLocation; // TODO: [port] MOVE TO DATA_GENERATOR @Deprecated @@ -48,7 +47,7 @@ public final class InitCrafting { // ActuallyAdditionsAPI.addFarmerBehavior(new EnderlillyFarmerBehavior()); // ActuallyAdditionsAPI.addFarmerBehavior(new RedOrchidFarmerBehavior()); - new RecipePotionRingCharging(new ResourceLocation(ActuallyAdditions.MODID, "potion_ring_charging")); - new RecipeBioMash(new ResourceLocation(ActuallyAdditions.MODID, "bio_mash")); + //new RecipePotionRingCharging(new ResourceLocation(ActuallyAdditions.MODID, "potion_ring_charging")); + //new RecipeBioMash(new ResourceLocation(ActuallyAdditions.MODID, "bio_mash")); } } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/event/ClientEvents.java b/src/main/java/de/ellpeck/actuallyadditions/mod/event/ClientEvents.java index 351395aec..64c0deca5 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/event/ClientEvents.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/event/ClientEvents.java @@ -215,7 +215,7 @@ public class ClientEvents { GlStateManager._pushMatrix(); GlStateManager._color4f(1F, 1F, 1F, 1F); - energyDisplay.draw(); + energyDisplay.draw(event.getMatrixStack()); GlStateManager._popMatrix(); } } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/ContainerBag.java b/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/ContainerBag.java index 44cac7aa6..718f355a0 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/ContainerBag.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/ContainerBag.java @@ -26,7 +26,6 @@ import net.minecraft.entity.player.PlayerEntity; import net.minecraft.entity.player.PlayerInventory; import net.minecraft.inventory.container.ClickType; import net.minecraft.inventory.container.Container; -import net.minecraft.inventory.container.IContainerListener; import net.minecraft.inventory.container.Slot; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; @@ -122,6 +121,7 @@ public class ContainerBag extends Container implements IButtonReactor { super.broadcastChanges(); if (this.filter.needsUpdateSend() || this.autoInsert != this.oldAutoInsert) { + /* for (IContainerListener listener : this.containerListeners) { listener.setContainerData(this, 0, this.filter.isWhitelist ? 1 @@ -140,6 +140,7 @@ public class ContainerBag extends Container implements IButtonReactor { ? 1 : 0); } + */ this.filter.updateLasts(); this.oldAutoInsert = this.autoInsert; } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/ContainerGrinder.java b/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/ContainerGrinder.java index 8c967f7e2..c84e3ca87 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/ContainerGrinder.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/ContainerGrinder.java @@ -12,9 +12,7 @@ package de.ellpeck.actuallyadditions.mod.inventory; import de.ellpeck.actuallyadditions.mod.inventory.slot.SlotItemHandlerUnconditioned; import de.ellpeck.actuallyadditions.mod.inventory.slot.SlotOutput; -import de.ellpeck.actuallyadditions.mod.recipe.CrusherRecipeRegistry; import de.ellpeck.actuallyadditions.mod.tile.TileEntityCrusher; -import de.ellpeck.actuallyadditions.mod.util.StackUtil; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.entity.player.PlayerInventory; import net.minecraft.inventory.container.Container; @@ -64,6 +62,7 @@ public class ContainerGrinder extends Container { @Override public ItemStack quickMoveStack(PlayerEntity player, int slot) { + /* int inventoryStart = this.isDouble ? 6 : 3; @@ -124,7 +123,9 @@ public class ContainerGrinder extends Container { return currentStack; } - return StackUtil.getEmpty(); + + */ + return ItemStack.EMPTY; } @Override diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/ContainerInputter.java b/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/ContainerInputter.java deleted file mode 100644 index 96bee2e45..000000000 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/ContainerInputter.java +++ /dev/null @@ -1,132 +0,0 @@ -/* - * This file ("ContainerInputter.java") is part of the Actually Additions mod for Minecraft. - * It is created and owned by Ellpeck and distributed - * under the Actually Additions License to be found at - * http://ellpeck.de/actaddlicense - * View the source code at https://github.com/Ellpeck/ActuallyAdditions - * - * © 2015-2017 Ellpeck - */ - -package de.ellpeck.actuallyadditions.mod.inventory; - -import de.ellpeck.actuallyadditions.mod.inventory.gui.GuiInputter; -import de.ellpeck.actuallyadditions.mod.inventory.slot.SlotFilter; -import de.ellpeck.actuallyadditions.mod.inventory.slot.SlotItemHandlerUnconditioned; -import de.ellpeck.actuallyadditions.mod.tile.TileEntityInputter; -import de.ellpeck.actuallyadditions.mod.util.StackUtil; -import net.minecraft.entity.player.PlayerEntity; -import net.minecraft.entity.player.PlayerInventory; -import net.minecraft.inventory.container.ClickType; -import net.minecraft.inventory.container.Container; -import net.minecraft.inventory.container.Slot; -import net.minecraft.item.ItemStack; -import net.minecraft.network.PacketBuffer; - -import java.util.Objects; - -public class ContainerInputter extends Container { - public final TileEntityInputter tileInputter; - public final boolean isAdvanced; - - public static ContainerInputter fromNetwork(int windowId, PlayerInventory inv, PacketBuffer data) { - return new ContainerInputter(windowId, inv, (TileEntityInputter) Objects.requireNonNull(inv.player.level.getBlockEntity(data.readBlockPos()))); - } - - public ContainerInputter(int windowId, PlayerInventory inventory, TileEntityInputter tile) { - super(ActuallyContainers.INPUTTER_CONTAINER.get(), windowId); - this.tileInputter = tile; - this.isAdvanced = tile.isAdvanced; - - this.addSlot(new SlotItemHandlerUnconditioned(this.tileInputter.inv, 0, 80, 21 + (this.isAdvanced - ? 12 - : 0))); - - if (this.isAdvanced) { - for (int i = 0; i < 2; i++) { - for (int x = 0; x < 3; x++) { - for (int y = 0; y < 4; y++) { - this.addSlot(new SlotFilter(i == 0 - ? this.tileInputter.leftFilter - : this.tileInputter.rightFilter, y + x * 4, 20 + i * 84 + x * 18, 6 + y * 18)); - } - } - } - } - - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 9; j++) { - this.addSlot(new Slot(inventory, j + i * 9 + 9, 8 + j * 18, 101 + i * 18 + (this.isAdvanced - ? GuiInputter.OFFSET_ADVANCED - : 0))); - } - } - for (int i = 0; i < 9; i++) { - this.addSlot(new Slot(inventory, i, 8 + i * 18, 159 + (this.isAdvanced - ? GuiInputter.OFFSET_ADVANCED - : 0))); - } - } - - @Override - public ItemStack quickMoveStack(PlayerEntity player, int slot) { - int inventoryStart = this.isAdvanced - ? 25 - : 1; - int inventoryEnd = inventoryStart + 26; - int hotbarStart = inventoryEnd + 1; - int hotbarEnd = hotbarStart + 8; - - Slot theSlot = this.slots.get(slot); - - if (theSlot != null && theSlot.hasItem()) { - ItemStack newStack = theSlot.getItem(); - ItemStack currentStack = newStack.copy(); - - //Other Slots in Inventory excluded - if (slot >= inventoryStart) { - //Shift from Inventory - if (!this.moveItemStackTo(newStack, 0, 1, false)) { - // - if (slot >= inventoryStart && slot <= inventoryEnd) { - if (!this.moveItemStackTo(newStack, hotbarStart, hotbarEnd + 1, false)) { - return StackUtil.getEmpty(); - } - } else if (slot >= inventoryEnd + 1 && slot < hotbarEnd + 1 && !this.moveItemStackTo(newStack, inventoryStart, inventoryEnd + 1, false)) { - return StackUtil.getEmpty(); - } - } - } else if (!this.moveItemStackTo(newStack, inventoryStart, hotbarEnd + 1, false)) { - return StackUtil.getEmpty(); - } - - if (!StackUtil.isValid(newStack)) { - theSlot.set(StackUtil.getEmpty()); - } else { - theSlot.setChanged(); - } - - if (newStack.getCount() == currentStack.getCount()) { - return StackUtil.getEmpty(); - } - theSlot.onTake(player, newStack); - - return currentStack; - } - return StackUtil.getEmpty(); - } - - @Override - public ItemStack clicked(int slotId, int dragType, ClickType clickTypeIn, PlayerEntity player) { - if (SlotFilter.checkFilter(this, slotId, player)) { - return StackUtil.getEmpty(); - } else { - return super.clicked(slotId, dragType, clickTypeIn, player); - } - } - - @Override - public boolean stillValid(PlayerEntity player) { - return this.tileInputter.canPlayerUse(player); - } -} diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/gui/Buttons.java b/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/gui/Buttons.java new file mode 100644 index 000000000..09a81a020 --- /dev/null +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/gui/Buttons.java @@ -0,0 +1,85 @@ +package de.ellpeck.actuallyadditions.mod.inventory.gui; + +import com.mojang.blaze3d.matrix.MatrixStack; +import com.mojang.blaze3d.platform.GlStateManager; +import com.mojang.blaze3d.systems.RenderSystem; +import de.ellpeck.actuallyadditions.mod.util.AssetUtil; +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.widget.button.Button; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.text.ITextComponent; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; + +public class Buttons { + @OnlyIn(Dist.CLIENT) + public static class SmallerButton extends Button { + + public final ResourceLocation resLoc = AssetUtil.getGuiLocation("gui_inputter"); + private final boolean smaller; + + public SmallerButton(int x, int y, ITextComponent display, IPressable pressable) { + this(x, y, display, false, pressable); + } + + public SmallerButton(int x, int y, ITextComponent display, boolean smaller, IPressable pressable) { + super(x, y, 16, smaller + ? 12 + : 16, display, pressable); + this.smaller = smaller; + } + + @Override + public void render(MatrixStack matrices, int x, int y, float f) { + if (this.visible) { + Minecraft.getInstance().getTextureManager().bind(this.resLoc); + RenderSystem.color4f(1.0F, 1.0F, 1.0F, 1.0F); + this.isHovered = x >= this.x && y >= this.y && x < this.x + this.width && y < this.y + this.height; + int k = this.getHoverState(this.hovered); + GlStateManager._enableBlend(); + GlStateManager.tryBlendFuncSeparate(770, 771, 1, 0); + GlStateManager._blendFunc(770, 771); + this.blit(matrices, this.x, this.y, this.smaller + ? 200 + : 176, k * this.height, this.width, this.height); + this.mouseDragged(mc, x, y); + + int color = 14737632; + if (this.packedFGColour != 0) { + color = this.packedFGColour; + } else if (!this.enabled) { + color = 10526880; + } else if (this.hovered) { + color = 16777120; + } + + this.drawCenteredString(mc.fontRenderer, this.displayString, this.x + this.width / 2, this.y + (this.height - 8) / 2, color); + } + } + } + + @OnlyIn(Dist.CLIENT) + public static class TinyButton extends Button { + + public final ResourceLocation resLoc = AssetUtil.getGuiLocation("gui_inputter"); + + public TinyButton(int id, int x, int y) { + super(id, x, y, 8, 8, ""); + } + + @Override + public void drawButton(Minecraft mc, int x, int y, float f) { + if (this.visible) { + mc.getTextureManager().bind(this.resLoc); + RenderSystem.color4f(1.0F, 1.0F, 1.0F, 1.0F); + this.hovered = x >= this.x && y >= this.y && x < this.x + this.width && y < this.y + this.height; + int k = this.getHoverState(this.hovered); + GlStateManager._enableBlend(); + GlStateManager.tryBlendFuncSeparate(770, 771, 1, 0); + GlStateManager._blendFunc(770, 771); + this.blit(matrices, this.x, this.y, 192, k * 8, 8, 8); + this.mouseDragged(mc, x, y); + } + } + } +} diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/gui/EnergyDisplay.java b/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/gui/EnergyDisplay.java index f65fcf1d2..241e67471 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/gui/EnergyDisplay.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/gui/EnergyDisplay.java @@ -14,13 +14,11 @@ import com.mojang.blaze3d.matrix.MatrixStack; import com.mojang.blaze3d.systems.RenderSystem; import de.ellpeck.actuallyadditions.mod.tile.CustomEnergyStorage; import de.ellpeck.actuallyadditions.mod.util.AssetUtil; -import de.ellpeck.actuallyadditions.mod.util.StringUtil; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.AbstractGui; import net.minecraft.client.resources.I18n; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; -import net.minecraftforge.fml.client.gui.GuiUtils; import java.text.NumberFormat; import java.util.ArrayList; @@ -69,14 +67,14 @@ public class EnergyDisplay extends AbstractGui { if (this.rfReference.getEnergyStored() > 0) { int i = this.rfReference.getEnergyStored() * 83 / this.rfReference.getMaxEnergyStored(); - float[] color = AssetUtil.getWheelColor(mc.level.getTotalWorldTime() % 256); - RenderSystem.color4f(color[0] / 255F, color[1] / 255F, color[2] / 255F); + float[] color = AssetUtil.getWheelColor(mc.level.getGameTime() % 256); + RenderSystem.color3f(color[0] / 255F, color[1] / 255F, color[2] / 255F); this.blit(matrices, barX + 1, barY + 84 - i, 36, 172, 16, i); - RenderSystem.color4f(1F, 1F, 1F); + RenderSystem.color3f(1F, 1F, 1F); } if (this.drawTextNextTo) { - this.drawString(mc.font, this.getOverlayText(), barX + 25, barY + 78, StringUtil.DECIMAL_COLOR_WHITE); + //this.drawString(mc.font, this.getOverlayText(), barX + 25, barY + 78, StringUtil.DECIMAL_COLOR_WHITE); } } @@ -86,16 +84,16 @@ public class EnergyDisplay extends AbstractGui { List text = new ArrayList<>(); text.add(this.getOverlayText()); - GuiUtils.drawHoveringText(matrices, text, mouseX, mouseY, mc.getWindow().getWidth(), mc.getWindow().getHeight(), -1, mc.font); + //GuiUtils.drawHoveringText(matrices, text, mouseX, mouseY, mc.getWindow().getWidth(), mc.getWindow().getHeight(), -1, mc.font); } } private boolean isMouseOver(int mouseX, int mouseY) { return mouseX >= this.x && mouseY >= this.y && mouseX < this.x + (this.outline - ? 26 - : 18) && mouseY < this.y + (this.outline - ? 93 - : 85); + ? 26 + : 18) && mouseY < this.y + (this.outline + ? 93 + : 85); } private String getOverlayText() { diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/gui/FilterSettingsGui.java b/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/gui/FilterSettingsGui.java index ee72f8afb..dfd0a27bc 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/gui/FilterSettingsGui.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/gui/FilterSettingsGui.java @@ -11,7 +11,6 @@ package de.ellpeck.actuallyadditions.mod.inventory.gui; import de.ellpeck.actuallyadditions.mod.ActuallyAdditions; -import de.ellpeck.actuallyadditions.mod.inventory.gui.GuiInputter.SmallerButton; import de.ellpeck.actuallyadditions.mod.tile.FilterSettings; import de.ellpeck.actuallyadditions.mod.util.StringUtil; import net.minecraft.client.Minecraft; @@ -21,10 +20,8 @@ import net.minecraft.util.text.StringTextComponent; import net.minecraft.util.text.TextFormatting; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; -import net.minecraftforge.fml.client.gui.GuiUtils; import java.util.ArrayList; -import java.util.Collections; import java.util.List; @OnlyIn(Dist.CLIENT) @@ -32,28 +29,28 @@ public class FilterSettingsGui extends AbstractGui { private final FilterSettings theSettings; - public SmallerButton whitelistButton; - public SmallerButton metaButton; - public SmallerButton nbtButton; - public SmallerButton modButton; - public SmallerButton oredictButton; + public Buttons.SmallerButton whitelistButton; + public Buttons.SmallerButton metaButton; + public Buttons.SmallerButton nbtButton; + public Buttons.SmallerButton modButton; + public Buttons.SmallerButton oredictButton; public FilterSettingsGui(FilterSettings settings, int x, int y, List