Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[1.7.10] Different Entity UUIDs when using world.getLoadedEntityList?

Featured Replies

Posted

Ok, I am making a "syringe" which holds the "DNA" of minecraft mobs using their UUID's, but when I try to get the entity based on its UUID, I don't get any entity with the same UUID, even if their chunks are loaded and the entities are not dead. Here's my code

 

package me.Aregak2005.mc.lotostuff.tools.wtrap;

import cpw.mods.fml.common.registry.GameRegistry;
import me.Aregak2005.mc.lotostuff.Constants;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.EnumChatFormatting;
import net.minecraft.util.IIcon;
import net.minecraft.util.StatCollector;

import java.util.List;

/**
* Created by DeLL on 30/07/2016.
*/
public class Syringe extends Item {

    public IIcon empty,full;

    @Override
    public IIcon getIconIndex(ItemStack stack) {
        return stack.hasTagCompound()?full:empty;
    }
    @Override
    public IIcon getIcon(ItemStack stack, int pass) {
        return stack.hasTagCompound()?full:empty;
    }

    @Override
    public void registerIcons(IIconRegister reg) {
        empty = reg.registerIcon("ltstf:syringe_empty");
        full = reg.registerIcon("ltstf:syringe_full");
    }

    public Syringe() {
        setUnlocalizedName("syringe");
        setCreativeTab(Constants.tabMetal);
        setTextureName("ltstf:syringe_empty");
        setMaxStackSize(1);
        GameRegistry.registerItem(this,this.getUnlocalizedName().substring(5));
    }

    @Override
    public void addInformation(ItemStack s, EntityPlayer p, List l, boolean b) {
        if(s.hasTagCompound()){
            Entity e = null;
            for(Entity en : (List<Entity>)p.worldObj.getLoadedEntityList()){
                if(en.getUniqueID().toString().equals(s.getTagCompound().getString("uniqueID"))){
                    e = en;
                }
            }

            l.add(s.getTagCompound().getString("uniqueID"));
            if(e==null) l.add(EnumChatFormatting.DARK_RED +  StatCollector.translateToLocal("lang.entitynotfound.txt"));
            else{
                l.add(String.format("X: %d", e.posX));
                l.add(String.format("Y: %d", e.posY));
                l.add(String.format("Z: %d", e.posZ));
            }
        }
    }

    @Override
    public boolean onLeftClickEntity(ItemStack stack, EntityPlayer player, Entity entity) {
        if(player.worldObj.isRemote) return false;
        if(!stack.hasTagCompound()) {
            if (entity.myEntitySize == Entity.EnumEntitySize.SIZE_2) {
                NBTTagCompound t = new NBTTagCompound();
                t.setString("uniqueID",entity.getUniqueID().toString());
                stack.setTagCompound(t);
                assert t.getString("uniqueID").equals(entity.getUniqueID().toString());
                stack.setStackDisplayName(StatCollector.translateToLocal("item.syringe.full"));
            }
        }
        return false;
    }
}

Currently developing a mod called Lot'O'Stuff for 1.7.10 (I know very well its outdated.)

  • Author

Yeah I would like to upgrade but i can't (I hate the new renering system where you have to make a json file for every item/block. its annoying). Is there a way to get the UUID on the server? or sync them manually?

Currently developing a mod called Lot'O'Stuff for 1.7.10 (I know very well its outdated.)

Well if you wanted to sync manually you could try to use packets, but eventually you are going to have to update. Are you planning on just addingInfo on hover to the ItemStack or was that just to test.

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Guest
This topic is now closed to further replies.

Important Information

By using this site, you agree to our Terms of Use.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.