From 0ecb697d75b25206daf921ecec1c910d6ab77491 Mon Sep 17 00:00:00 2001 From: Jakub <53441451+kuba6000@users.noreply.github.com> Date: Mon, 10 Apr 2023 21:02:49 +0200 Subject: Tea Network update: still alpha (#69) * Move to UUID checking and BigInteger tea count * Research category * Start working on tea limit * Maybe * Update en_US.lang * Fix * Save UUID mapping * Mark dirty * Fixes --- .../java/kubatech/loaders/block/BlockProxy.java | 21 +++++++--- .../java/kubatech/loaders/block/KubaBlock.java | 5 +++ .../java/kubatech/loaders/block/KubaItemBlock.java | 12 ++++++ .../kubatech/loaders/block/blocks/TeaAcceptor.java | 4 +- .../kubatech/loaders/block/blocks/TeaStorage.java | 46 ++++++++++++++++++++++ 5 files changed, 81 insertions(+), 7 deletions(-) create mode 100644 src/main/java/kubatech/loaders/block/blocks/TeaStorage.java (limited to 'src/main/java/kubatech/loaders/block') diff --git a/src/main/java/kubatech/loaders/block/BlockProxy.java b/src/main/java/kubatech/loaders/block/BlockProxy.java index 4ce6aa820d..a546aa80d8 100644 --- a/src/main/java/kubatech/loaders/block/BlockProxy.java +++ b/src/main/java/kubatech/loaders/block/BlockProxy.java @@ -31,12 +31,20 @@ import com.gtnewhorizons.modularui.api.screen.ITileWithModularUI; public class BlockProxy { private final String unlocalizedName; - private final String texturepath; - private IIcon icon; + private final String sideTexturePath; + private final String topBottomTexturePath; + private IIcon sideIcon; + private IIcon topBottomIcon; public BlockProxy(String unlocalizedName, String texture) { this.unlocalizedName = "kubablock." + unlocalizedName; - texturepath = Tags.MODID + ":" + texture; + sideTexturePath = topBottomTexturePath = Tags.MODID + ":" + texture; + } + + public BlockProxy(String unlocalizedName, String sideTexture, String topBottomTexture) { + this.unlocalizedName = "kubablock." + unlocalizedName; + sideTexturePath = Tags.MODID + ":" + sideTexture; + topBottomTexturePath = Tags.MODID + ":" + topBottomTexture; } public void itemInit(int ID) {} @@ -58,11 +66,14 @@ public class BlockProxy { public void onBlockPlaced(World world, int x, int y, int z, EntityLivingBase player, ItemStack stack) {} public void registerIcon(IIconRegister iconRegister) { - icon = iconRegister.registerIcon(texturepath); + sideIcon = iconRegister.registerIcon(sideTexturePath); + if (sideTexturePath.equals(topBottomTexturePath)) topBottomIcon = sideIcon; + else topBottomIcon = iconRegister.registerIcon(topBottomTexturePath); } public IIcon getIcon(int side) { - return icon; + if (side <= 1) return topBottomIcon; + else return sideIcon; } public String getUnlocalizedName() { diff --git a/src/main/java/kubatech/loaders/block/KubaBlock.java b/src/main/java/kubatech/loaders/block/KubaBlock.java index 92481c3f8a..52b378dbf5 100644 --- a/src/main/java/kubatech/loaders/block/KubaBlock.java +++ b/src/main/java/kubatech/loaders/block/KubaBlock.java @@ -106,6 +106,11 @@ public class KubaBlock extends Block { for (int i = 0; i < blocks.size(); i++) p_149666_3_.add(new ItemStack(p_149666_1_, 1, i)); } + @Override + public int damageDropped(int meta) { + return meta; + } + @Override public void registerBlockIcons(IIconRegister p_149651_1_) { blocks.values().forEach(b -> b.registerIcon(p_149651_1_)); diff --git a/src/main/java/kubatech/loaders/block/KubaItemBlock.java b/src/main/java/kubatech/loaders/block/KubaItemBlock.java index 8d497a6a0f..bdd0c6eecd 100644 --- a/src/main/java/kubatech/loaders/block/KubaItemBlock.java +++ b/src/main/java/kubatech/loaders/block/KubaItemBlock.java @@ -17,6 +17,7 @@ import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemStack; +import net.minecraft.world.World; public class KubaItemBlock extends ItemBlock { @@ -25,6 +26,12 @@ public class KubaItemBlock extends ItemBlock { setHasSubtypes(true); } + @Override + public boolean placeBlockAt(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int side, + float hitX, float hitY, float hitZ, int metadata) { + return super.placeBlockAt(stack, player, world, x, y, z, side, hitX, hitY, hitZ, metadata); + } + @Override public void registerIcons(IIconRegister p_94581_1_) { super.registerIcons(p_94581_1_); @@ -45,4 +52,9 @@ public class KubaItemBlock extends ItemBlock { public void addInformation(ItemStack p_77624_1_, EntityPlayer p_77624_2_, List p_77624_3_, boolean p_77624_4_) { KubaBlock.blocks.get(p_77624_1_.getItemDamage()).addInformation(p_77624_1_, p_77624_2_, p_77624_3_, p_77624_4_); } + + @Override + public int getMetadata(int p_77647_1_) { + return p_77647_1_; + } } diff --git a/src/main/java/kubatech/loaders/block/blocks/TeaAcceptor.java b/src/main/java/kubatech/loaders/block/blocks/TeaAcceptor.java index 2f4f36db53..9eba767376 100644 --- a/src/main/java/kubatech/loaders/block/blocks/TeaAcceptor.java +++ b/src/main/java/kubatech/loaders/block/blocks/TeaAcceptor.java @@ -26,7 +26,7 @@ import net.minecraft.world.World; public class TeaAcceptor extends BlockProxy implements IProxyTileEntityProvider { public TeaAcceptor() { - super("tea_acceptor", "tea_acceptor"); + super("tea_acceptor", "tea_acceptor", "blank"); } @Override @@ -38,7 +38,7 @@ public class TeaAcceptor extends BlockProxy implements IProxyTileEntityProvider public void onBlockPlaced(World world, int x, int y, int z, EntityLivingBase player, ItemStack stack) { if (world.isRemote) return; if (!(player instanceof EntityPlayerMP)) return; - ((TeaAcceptorTile) world.getTileEntity(x, y, z)).setTeaOwner(player.getCommandSenderName()); + ((TeaAcceptorTile) world.getTileEntity(x, y, z)).setTeaOwner(player.getPersistentID()); } @Override diff --git a/src/main/java/kubatech/loaders/block/blocks/TeaStorage.java b/src/main/java/kubatech/loaders/block/blocks/TeaStorage.java new file mode 100644 index 0000000000..a80b73fce0 --- /dev/null +++ b/src/main/java/kubatech/loaders/block/blocks/TeaStorage.java @@ -0,0 +1,46 @@ +package kubatech.loaders.block.blocks; + +import static kubatech.api.Variables.numberFormat; + +import java.util.List; + +import kubatech.loaders.block.BlockProxy; +import kubatech.loaders.block.IProxyTileEntityProvider; +import kubatech.tileentity.TeaStorageTile; + +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.entity.player.EntityPlayerMP; +import net.minecraft.item.ItemStack; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.EnumChatFormatting; +import net.minecraft.world.World; + +public class TeaStorage extends BlockProxy implements IProxyTileEntityProvider { + + public TeaStorage() { + super("tea_storage", "tea_storage"); + } + + @Override + public TileEntity createTileEntity(World world) { + return new TeaStorageTile(); + } + + @Override + public void onBlockPlaced(World world, int x, int y, int z, EntityLivingBase player, ItemStack stack) { + if (world.isRemote) return; + if (!(player instanceof EntityPlayerMP)) return; + ((TeaStorageTile) world.getTileEntity(x, y, z)).setTeaOwner(player.getPersistentID()); + } + + @Override + public void addInformation(ItemStack stack, EntityPlayer entity, List tooltipList, boolean showDebugInfo) { + tooltipList.add("Extends Tea Storage by " + EnumChatFormatting.RED + numberFormat.format(Long.MAX_VALUE)); + } + + @Override + public float getResistance() { + return 999999999999.f; + } +} -- cgit