Java 类net.minecraft.nbt.NBTException 实例源码

项目:InControl    文件:Tools.java   
public static ItemStack parseStack(String name) {
    if (name.contains("/")) {
        String[] split = StringUtils.split(name, "/");
        ItemStack stack = parseStackNoNBT(split[0]);
        if (ItemStackTools.isEmpty(stack)) {
            return stack;
        }
        NBTTagCompound nbt;
        try {
            nbt = JsonToNBT.getTagFromJson(split[1]);
        } catch (NBTException e) {
            InControl.logger.log(Level.ERROR, "Error parsing NBT in '" + name + "'!");
            return ItemStackTools.getEmptyStack();
        }
        stack.setTagCompound(nbt);
        return stack;
    } else {
        return parseStackNoNBT(name);
    }
}
项目:MC-Prefab    文件:BuildEntity.java   
public NBTTagCompound getEntityDataTag()
{
    NBTTagCompound tag = null;

    if (!this.entityNBTData.equals(""))
    {
        try
        {
            tag = JsonToNBT.getTagFromJson(this.entityNBTData);
        }
        catch (NBTException e)
        {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

    return tag;
}
项目:MC-Prefab    文件:BuildBlock.java   
public NBTTagCompound getBlockStateDataTag()
{
    NBTTagCompound tag = null;

    if (!this.blockStateData.equals(""))
    {
        try
        {
            tag = JsonToNBT.getTagFromJson(this.blockStateData);
        }
        catch (NBTException e)
        {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

    return tag;
}
项目:MC-Prefab    文件:BuildTileEntity.java   
public NBTTagCompound getEntityDataTag()
{
    NBTTagCompound tag = null;

    if (!this.entityNBTData.equals(""))
    {
        try
        {
            tag = JsonToNBT.getTagFromJson(this.entityNBTData);
        }
        catch (NBTException e)
        {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

    return tag;
}
项目:Minecraft-Flux    文件:SpecialEvent.java   
SpecialItem(String n, byte c, short m, @Nullable String t) {
    name = n;
    amount = c;
    meta = m;
    if (t != null) {
        NBTTagCompound nbt;
        try {
            nbt = JsonToNBT.getTagFromJson(t);
        } catch (NBTException e) {
            MCFluxReport.sendException(e, "NBT Decoding");
            nbt = null;
        }
        tag = nbt;
    } else
        tag = null;
    item = Item.getByNameOrId(name);
}
项目:CraftingHarmonics    文件:NbtTagCompoundDeserializer.java   
@Override
public Object Deserialize(Object input) {
    String json = "{}";
    if(input instanceof String) {
        json = input.toString();
    } else if(input instanceof ScriptObjectMirror) {
        json = NashornConfigProcessor.getInstance().nashorn.stringifyJsonObject((JSObject) input);
    }

    try {
        return JsonToNBT.getTagFromJson(json);
    } catch (NBTException e) {
        LogHelper.error("Unable to convert '" + json + "' to NBT tag.", e);
        return new NBTTagCompound();
    }
}
项目:LightningCraft    文件:StackHelper.java   
/** Creates a new ItemStack from the string acquired from makeStringFromItemStack or an oredict name, with an oredict index option */
public static ItemStack makeItemStackFromString(String stackString, int oreIndex) {
    if(stackString == LightningInfusionRecipe.nullIdentifier) return null;
    try { // try to load it as a regular NBT stack
        if(!isStringOreDict(stackString)) {
            return ItemStack.loadItemStackFromNBT(JsonToNBT.getTagFromJson(stackString));
        } else {
            throw new NBTException("OreDict exists");
        }
    } catch(NBTException e) { // now try to get it as an oredict entry
        List<ItemStack> list;
        if(isStringOreDict(stackString) && oreIndex < (list = OreDictionary.getOres(stackString)).size()) {
            return list.get(oreIndex); // yep
        } else {
            return null; // guess not
        }
    }
}
项目:TaleCraft    文件:NPCDialogue.java   
public void handleClickServer(EntityNPC npc){
    if(action.startsWith("action.nbt=")){
        String[] equalsplit = action.split("=");
        String nbt_json = "";
        for(int i = 1; i < equalsplit.length; i++){
            nbt_json += equalsplit[i];
        }
        NBTTagCompound newNBT;
        try {
            newNBT = JsonToNBT.getTagFromJson(nbt_json);
        } catch (NBTException e) {
            e.printStackTrace();
            return;
        }
        npc.getScriptData().merge(newNBT);
    }
}
项目:SettlerCraft    文件:Schematic.java   
public ItemStack getResourceStack() {
    if(stackOverride != null) {
        NBTTagCompound tag;
        try {
            tag = JsonToNBT.getTagFromJson(stackOverride);
        } catch (NBTException e) {
            e.printStackTrace();
            return new ItemStack(getBlock(), 1, stackMeta);
        }
        if(tag != null) {
            ItemStack stack = new ItemStack(tag);
            if(stack != null) {
                return stack;
            }
        }
    }
    return new ItemStack(getBlock(), 1, stackMeta);
}
项目:LimitedResources    文件:LimitedBlockOwners.java   
/********************************************************************************
 * Abstract - WorldSavedData
 ********************************************************************************/

@Override
public void readFromNBT( NBTTagCompound comp ) 
{
    this.owners.clear();

    try 
    {
        this.owners.putAll( 
            NBTUtil.toLimitedBlockOwnersMap( (NBTTagList)comp.getTag( NBT_OWNER_MAP ) ) 
        );
    } 
    catch ( NBTException e ) 
    {
        Log.error( e.getMessage() );
    }
}
项目:LimitedResources    文件:NBTUtil.java   
/**
 * Gets Coordinate out of an NBTTagCompound
 * 
 * @param NBTTagCompound
 * @return Coordinate
 * @throws NBTException
 */
public static Coordinate toCoordinate( NBTTagCompound comp ) throws NBTException
{
    //All four keys required!
    if( ( comp.hasKey( NBT_COORDINATE_DIMID ) == false ) ||
        ( comp.hasKey( NBT_COORDINATE_X ) == false ) ||
        ( comp.hasKey( NBT_COORDINATE_Y ) == false ) ||
        ( comp.hasKey( NBT_COORDINATE_Z ) == false ) )
    {
        throw new NBTException( "NBTTagCompound has no coordinates." );
    }
    return new Coordinate( 
        comp.getInteger( NBT_COORDINATE_DIMID ),
        comp.getInteger( NBT_COORDINATE_X ),
        comp.getInteger( NBT_COORDINATE_Y ),
        comp.getInteger( NBT_COORDINATE_Z )
    );
}
项目:CustomOreGen    文件:ValidatorBlockDescriptor.java   
protected boolean validateChildren() throws ParserException
 {
     super.validateChildren();
     this.blocks = this.validateRequiredAttribute(String.class, "Block", true);
     this.weight = this.validateNamedAttribute(Float.class, "Weight", this.weight, true);
     String nbtJson = this.validateNamedAttribute(String.class, "NBT", null, true);
     if (nbtJson != null) {
        try {
            NBTBase base = JsonToNBT.getTagFromJson(nbtJson);
            if (base instanceof NBTTagCompound) {
                this.nbt = (NBTTagCompound)base;
            } else {
                throw new ParserException("NBT is not a compound tag");
            }
} catch (NBTException e) {
    throw new ParserException("Failed to parse JSON", e);
}
     }
     return true;
 }
项目:harshencastle    文件:EntitySoullessKnight.java   
@Override
public IEntityLivingData onInitialSpawn(DifficultyInstance difficulty, IEntityLivingData livingdata) {
    setItemStackToSlot(this.isLeftHanded() ? EntityEquipmentSlot.OFFHAND : EntityEquipmentSlot.MAINHAND, new ItemStack(HarshenItems.PROPS, 1, 0));
    try {
        setItemStackToSlot(this.isLeftHanded() ? EntityEquipmentSlot.MAINHAND : EntityEquipmentSlot.OFFHAND, new ItemStack(JsonToNBT.getTagFromJson("{id:\"minecraft:shield\",Count:1b,tag:{BlockEntityTag:{Patterns:[{Pattern:\"ss\",Color:6},{Pattern:\"flo\",Color:1}],Base:8}},Damage:0s}")));
    } catch (NBTException e) {
        e.printStackTrace();
    }
       this.getEntityAttribute(SharedMonsterAttributes.FOLLOW_RANGE).applyModifier(new AttributeModifier("Random spawn bonus", this.rand.nextGaussian() * 0.05D, 1));
       this.setLeftHanded(false);
    return livingdata;
}
项目:DecompiledMinecraft    文件:CommandTestFor.java   
/**
 * Callback when the command is invoked
 */
public void processCommand(ICommandSender sender, String[] args) throws CommandException
{
    if (args.length < 1)
    {
        throw new WrongUsageException("commands.testfor.usage", new Object[0]);
    }
    else
    {
        Entity entity = func_175768_b(sender, args[0]);
        NBTTagCompound nbttagcompound = null;

        if (args.length >= 2)
        {
            try
            {
                nbttagcompound = JsonToNBT.getTagFromJson(buildString(args, 1));
            }
            catch (NBTException nbtexception)
            {
                throw new CommandException("commands.testfor.tagError", new Object[] {nbtexception.getMessage()});
            }
        }

        if (nbttagcompound != null)
        {
            NBTTagCompound nbttagcompound1 = new NBTTagCompound();
            entity.writeToNBT(nbttagcompound1);

            if (!NBTUtil.func_181123_a(nbttagcompound, nbttagcompound1, true))
            {
                throw new CommandException("commands.testfor.failure", new Object[] {entity.getName()});
            }
        }

        notifyOperators(sender, this, "commands.testfor.success", new Object[] {entity.getName()});
    }
}
项目:DecompiledMinecraft    文件:CommandTestFor.java   
/**
 * Callback when the command is invoked
 */
public void processCommand(ICommandSender sender, String[] args) throws CommandException
{
    if (args.length < 1)
    {
        throw new WrongUsageException("commands.testfor.usage", new Object[0]);
    }
    else
    {
        Entity entity = func_175768_b(sender, args[0]);
        NBTTagCompound nbttagcompound = null;

        if (args.length >= 2)
        {
            try
            {
                nbttagcompound = JsonToNBT.getTagFromJson(buildString(args, 1));
            }
            catch (NBTException nbtexception)
            {
                throw new CommandException("commands.testfor.tagError", new Object[] {nbtexception.getMessage()});
            }
        }

        if (nbttagcompound != null)
        {
            NBTTagCompound nbttagcompound1 = new NBTTagCompound();
            entity.writeToNBT(nbttagcompound1);

            if (!NBTUtil.func_181123_a(nbttagcompound, nbttagcompound1, true))
            {
                throw new CommandException("commands.testfor.failure", new Object[] {entity.getName()});
            }
        }

        notifyOperators(sender, this, "commands.testfor.success", new Object[] {entity.getName()});
    }
}
项目:BaseClient    文件:CommandTestFor.java   
/**
 * Callback when the command is invoked
 */
public void processCommand(ICommandSender sender, String[] args) throws CommandException
{
    if (args.length < 1)
    {
        throw new WrongUsageException("commands.testfor.usage", new Object[0]);
    }
    else
    {
        Entity entity = func_175768_b(sender, args[0]);
        NBTTagCompound nbttagcompound = null;

        if (args.length >= 2)
        {
            try
            {
                nbttagcompound = JsonToNBT.getTagFromJson(buildString(args, 1));
            }
            catch (NBTException nbtexception)
            {
                throw new CommandException("commands.testfor.tagError", new Object[] {nbtexception.getMessage()});
            }
        }

        if (nbttagcompound != null)
        {
            NBTTagCompound nbttagcompound1 = new NBTTagCompound();
            entity.writeToNBT(nbttagcompound1);

            if (!NBTUtil.func_181123_a(nbttagcompound, nbttagcompound1, true))
            {
                throw new CommandException("commands.testfor.failure", new Object[] {entity.getName()});
            }
        }

        notifyOperators(sender, this, "commands.testfor.success", new Object[] {entity.getName()});
    }
}
项目:BaseClient    文件:CommandTestFor.java   
/**
 * Callback when the command is invoked
 */
public void processCommand(ICommandSender sender, String[] args) throws CommandException
{
    if (args.length < 1)
    {
        throw new WrongUsageException("commands.testfor.usage", new Object[0]);
    }
    else
    {
        Entity entity = func_175768_b(sender, args[0]);
        NBTTagCompound nbttagcompound = null;

        if (args.length >= 2)
        {
            try
            {
                nbttagcompound = JsonToNBT.getTagFromJson(buildString(args, 1));
            }
            catch (NBTException nbtexception)
            {
                throw new CommandException("commands.testfor.tagError", new Object[] {nbtexception.getMessage()});
            }
        }

        if (nbttagcompound != null)
        {
            NBTTagCompound nbttagcompound1 = new NBTTagCompound();
            entity.writeToNBT(nbttagcompound1);

            if (!NBTUtil.func_181123_a(nbttagcompound, nbttagcompound1, true))
            {
                throw new CommandException("commands.testfor.failure", new Object[] {entity.getName()});
            }
        }

        notifyOperators(sender, this, "commands.testfor.success", new Object[] {entity.getName()});
    }
}
项目:customstuff4    文件:NBTTagCompoundDeserializer.java   
@Override
public NBTTagCompound deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException
{
    try
    {
        return JsonToNBT.getTagFromJson(json.getAsString());
    } catch (NBTException e)
    {
        e.printStackTrace();
    }

    throw new JsonParseException("Failed to parse nbt");
}
项目:Backmemed    文件:SetNBT.java   
public SetNBT deserialize(JsonObject object, JsonDeserializationContext deserializationContext, LootCondition[] conditionsIn)
{
    try
    {
        NBTTagCompound nbttagcompound = JsonToNBT.getTagFromJson(JsonUtils.getString(object, "tag"));
        return new SetNBT(conditionsIn, nbttagcompound);
    }
    catch (NBTException nbtexception)
    {
        throw new JsonSyntaxException(nbtexception);
    }
}
项目:Backmemed    文件:CommandTestFor.java   
/**
 * Callback for when the command is executed
 */
public void execute(MinecraftServer server, ICommandSender sender, String[] args) throws CommandException
{
    if (args.length < 1)
    {
        throw new WrongUsageException("commands.testfor.usage", new Object[0]);
    }
    else
    {
        Entity entity = getEntity(server, sender, args[0]);
        NBTTagCompound nbttagcompound = null;

        if (args.length >= 2)
        {
            try
            {
                nbttagcompound = JsonToNBT.getTagFromJson(buildString(args, 1));
            }
            catch (NBTException nbtexception)
            {
                throw new CommandException("commands.testfor.tagError", new Object[] {nbtexception.getMessage()});
            }
        }

        if (nbttagcompound != null)
        {
            NBTTagCompound nbttagcompound1 = entityToNBT(entity);

            if (!NBTUtil.areNBTEquals(nbttagcompound, nbttagcompound1, true))
            {
                throw new CommandException("commands.testfor.failure", new Object[] {entity.getName()});
            }
        }

        notifyCommandListener(sender, this, "commands.testfor.success", new Object[] {entity.getName()});
    }
}
项目:CustomWorldGen    文件:GameRegistry.java   
/**
 * Makes an {@link ItemStack} based on the itemName reference, with supplied meta, stackSize and nbt, if possible
 * <p/>
 * Will return null if the item doesn't exist (because it's not from a loaded mod for example)
 * Will throw a {@link RuntimeException} if the nbtString is invalid for use in an {@link ItemStack}
 *
 * @param itemName  a registry name reference
 * @param meta      the meta
 * @param stackSize the stack size
 * @param nbtString an nbt stack as a string, will be processed by {@link JsonToNBT}
 * @return a new itemstack
 */
public static ItemStack makeItemStack(String itemName, int meta, int stackSize, String nbtString)
{
    if (itemName == null)
    {
        throw new IllegalArgumentException("The itemName cannot be null");
    }
    Item item = GameData.getItemRegistry().getObject(new ResourceLocation(itemName));
    if (item == null)
    {
        FMLLog.getLogger().log(Level.TRACE, "Unable to find item with name {}", itemName);
        return null;
    }
    ItemStack is = new ItemStack(item, stackSize, meta);
    if (!Strings.isNullOrEmpty(nbtString))
    {
        NBTBase nbttag = null;
        try
        {
            nbttag = JsonToNBT.getTagFromJson(nbtString);
        } catch (NBTException e)
        {
            FMLLog.getLogger().log(Level.WARN, "Encountered an exception parsing ItemStack NBT string {}", nbtString, e);
            throw Throwables.propagate(e);
        }
        if (!(nbttag instanceof NBTTagCompound))
        {
            FMLLog.getLogger().log(Level.WARN, "Unexpected NBT string - multiple values {}", nbtString);
            throw new RuntimeException("Invalid NBT JSON");
        }
        else
        {
            is.setTagCompound((NBTTagCompound)nbttag);
        }
    }
    return is;
}
项目:CustomWorldGen    文件:SetNBT.java   
public SetNBT deserialize(JsonObject object, JsonDeserializationContext deserializationContext, LootCondition[] conditionsIn)
{
    try
    {
        NBTTagCompound nbttagcompound = JsonToNBT.getTagFromJson(JsonUtils.getString(object, "tag"));
        return new SetNBT(conditionsIn, nbttagcompound);
    }
    catch (NBTException nbtexception)
    {
        throw new JsonSyntaxException(nbtexception);
    }
}
项目:CustomWorldGen    文件:CommandTestFor.java   
/**
 * Callback for when the command is executed
 */
public void execute(MinecraftServer server, ICommandSender sender, String[] args) throws CommandException
{
    if (args.length < 1)
    {
        throw new WrongUsageException("commands.testfor.usage", new Object[0]);
    }
    else
    {
        Entity entity = getEntity(server, sender, args[0]);
        NBTTagCompound nbttagcompound = null;

        if (args.length >= 2)
        {
            try
            {
                nbttagcompound = JsonToNBT.getTagFromJson(buildString(args, 1));
            }
            catch (NBTException nbtexception)
            {
                throw new CommandException("commands.testfor.tagError", new Object[] {nbtexception.getMessage()});
            }
        }

        if (nbttagcompound != null)
        {
            NBTTagCompound nbttagcompound1 = entityToNBT(entity);

            if (!NBTUtil.areNBTEquals(nbttagcompound, nbttagcompound1, true))
            {
                throw new CommandException("commands.testfor.failure", new Object[] {entity.getName()});
            }
        }

        notifyCommandListener(sender, this, "commands.testfor.success", new Object[] {entity.getName()});
    }
}
项目:FerretShinies    文件:BlindBag.java   
private void addNBTToStack(final String nbtString, final ItemStack stack, final EntityPlayer player) {
    NBTBase base;
    try {
        base = JsonToNBT.func_150315_a(nbtString);
        if (base instanceof NBTTagCompound) {
            stack.setTagCompound((NBTTagCompound) base);
        } else {
            player.addChatMessage(new ChatComponentText("Error:  Invalid NBT type provided in JSON."));
        }
    } catch (final NBTException e) {
        player.addChatMessage(new ChatComponentText("Error:  Invalid NBT JSON data: " + e.getMessage()));
    }
}
项目:TRHS_Club_Mod_2016    文件:GameRegistry.java   
/**
 * Makes an {@link ItemStack} based on the itemName reference, with supplied meta, stackSize and nbt, if possible
 *
 * Will return null if the item doesn't exist (because it's not from a loaded mod for example)
 * Will throw a {@link RuntimeException} if the nbtString is invalid for use in an {@link ItemStack}
 *
 * @param itemName a registry name reference
 * @param meta the meta
 * @param stackSize the stack size
 * @param nbtString an nbt stack as a string, will be processed by {@link JsonToNBT}
 * @return a new itemstack
 */
public static ItemStack makeItemStack(String itemName, int meta, int stackSize, String nbtString)
{
    if (itemName == null) throw new IllegalArgumentException("The itemName cannot be null");
    Item item = GameData.getItemRegistry().func_82594_a(itemName);
    if (item == null) {
        FMLLog.getLogger().log(Level.TRACE, "Unable to find item with name {}", itemName);
        return null;
    }
    ItemStack is = new ItemStack(item,1,meta);
    if (!Strings.isNullOrEmpty(nbtString)) {
        NBTBase nbttag = null;
        try
        {
            nbttag = JsonToNBT.func_150315_a(nbtString);
        } catch (NBTException e)
        {
            FMLLog.getLogger().log(Level.WARN, "Encountered an exception parsing ItemStack NBT string {}", nbtString, e);
            throw Throwables.propagate(e);
        }
        if (!(nbttag instanceof NBTTagCompound)) {
            FMLLog.getLogger().log(Level.WARN, "Unexpected NBT string - multiple values {}", nbtString);
            throw new RuntimeException("Invalid NBT JSON");
        } else {
            is.func_77982_d((NBTTagCompound) nbttag);
        }
    }
    return is;
}
项目:Toms-Mod    文件:Config.java   
private static UUID readUUID(String uuid) throws NBTException, NoSuchFieldException {
    NBTTagCompound readTag = JsonToNBT.getTagFromJson(uuid);
    if (readTag.hasUniqueId("uuid")) {
        return readTag.getUniqueId("uuid");
    } else {
        throw new NoSuchFieldException("Missing field in the Json: uuid");
    }
}
项目:TeslaEssentials    文件:TileGrinder.java   
@Override
public void update(String s) {
    try {
        deserializeNBT(JsonToNBT.getTagFromJson(s));
    } catch (NBTException e) {
        e.printStackTrace();
    }
}
项目:TeslaEssentials    文件:TileElectricFurnace.java   
@Override
public void update(String s) {
    try {
        deserializeNBT(JsonToNBT.getTagFromJson(s));
    } catch (NBTException e) {
        e.printStackTrace();
    }
}
项目:TeslaEssentials    文件:TileCharger.java   
@Override
public void update(String s) {
    try {
        deserializeNBT(JsonToNBT.getTagFromJson(s));
    } catch (NBTException e) {
        e.printStackTrace();
    }
}
项目:TeslaEssentials    文件:TileCapacitor.java   
@Override
public void update(String s) {
    try {
        deserializeNBT(JsonToNBT.getTagFromJson(s));
    } catch (NBTException e) {
        e.printStackTrace();
    }
}
项目:TeslaEssentials    文件:TileSolarPanel.java   
@Override
public void update(String s) {
    try {
        deserializeNBT(JsonToNBT.getTagFromJson(s));
    } catch (NBTException e) {
        e.printStackTrace();
    }
}
项目:TeslaEssentials    文件:TileFurnaceGenerator.java   
@Override
public void update(String s) {
    try {
        deserializeNBT(JsonToNBT.getTagFromJson(s));
    } catch (NBTException e) {
        e.printStackTrace();
    }
}
项目:TaleCraft    文件:GlobalScriptObject.java   
/**
 * Takes a string that contains JSON and converts that into a new compound-tag.
 **/
public CompoundTagWrapper newCompoundTag(String json) {
    try {
        return new CompoundTagWrapper(JsonToNBT.getTagFromJson(json));
    } catch (NBTException e) {
        e.printStackTrace();
        return new CompoundTagWrapper();
    }
}
项目:TaleCraft    文件:PanelTrades.java   
@Override
public void call(QADTextField field, String text) {
    try{
        stack.setTagCompound(JsonToNBT.getTagFromJson(text));
        field.setTextColor(0xffffff);
    }catch (NBTException e){
        field.setTextColor(0xff0000);
        return;
    }
}
项目:TaleCraft    文件:PanelDrops.java   
@Override
public void call(QADTextField field, String text) {
    try{
        drops.get(index).stack.setTagCompound(JsonToNBT.getTagFromJson(text));
        field.setTextColor(0xffffff);
    }catch (NBTException e){
        field.setTextColor(0xff0000);
        return;
    }
}
项目:SettlerCraft    文件:Schematic.java   
public NBTTagCompound getTag() {
    if(nbtString == null) {
        return null;
    }
    try {
        return JsonToNBT.getTagFromJson(nbtString);
    } catch (NBTException e) {
        SettlerCraft.instance.getLogger().printStackTrace(e);
    }
    return null;
}
项目:LimitedResources    文件:NBTUtil.java   
/**
 * Gets Coordinate Set out of an NBTTagList
 * 
 * @param NBTTagList
 * @return Set<Coordinate>
 * @throws NBTException
 */
public static Set<Coordinate> toCoordinateSet( NBTTagList list ) throws NBTException
{
    Set<Coordinate> coordinates = new HashSet<Coordinate>();

    for( int i = 0; i < list.tagCount(); i++ )
    {
        coordinates.add( NBTUtil.toCoordinate( list.getCompoundTagAt( i ) ) );
    }
    return coordinates;
}
项目:LimitedResources    文件:NBTUtil.java   
/**
 * Get one LimitedBlock with Set<Coordinate> out of an NBTTagCompound
 * 
 * @param NBTTagCompound
 * @return Map<LimitedBlock, Set<Coordinate>>
 * @throws ParseException
 * @throws NBTException
 */
public static Map<LimitedBlock, Set<Coordinate>> toLimitedBlockCoordinatesMap( NBTTagCompound comp ) throws ParseException, NBTException
{
    Map<LimitedBlock, Set<Coordinate>> result = new HashMap<LimitedBlock, Set<Coordinate>>();   
    result.put(
        LimitedResources.getLimitedBlockByItemStack( ParserUtil.parseStringToItemStack( comp.getString( NBT_LIMITEDBLOCK_NAME ) ) ),
        NBTUtil.toCoordinateSet( (NBTTagList)comp.getTag( NBT_LIMITEDBLOCK_COORDINATES ) )
    );
    return result;
}
项目:LimitedResources    文件:NBTUtil.java   
/**
 * Get multiple LimitedBlocks with Set<Coordiante> out of an NBTTagList
 * 
 * @param NBTTagList
 * @return Map<LimitedBlock, Set<Coordinate>>
 * @throws NBTException 
 * @throws ParseException 
 */
public static Map<LimitedBlock, Set<Coordinate>> toLimitedBlocksCoordinatesMap( NBTTagList list ) throws ParseException, NBTException
{
    Map<LimitedBlock, Set<Coordinate>> result = new HashMap<LimitedBlock, Set<Coordinate>>();

    for( int i = 0; i < list.tagCount(); i++ )
    {
        result.putAll( NBTUtil.toLimitedBlockCoordinatesMap( list.getCompoundTagAt( i ) ) );
    }
    return result;
}
项目:LimitedResources    文件:NBTUtil.java   
/**
 * Get one Coordinate->Owner out of an NBTTagCompound
 * 
 * @param NBTTagCompound
 * @return Map<Coordinate, String>
 * @throws NBTException 
 */
public static Map<Coordinate, UUID> toLimitedBlockOwnerMap( NBTTagCompound comp ) throws NBTException
{
    Map<Coordinate, UUID> result = new HashMap<Coordinate, UUID>();
    result.put(
        NBTUtil.toCoordinate( (NBTTagCompound) comp.getTag( NBT_LIMITEDBLOCKOWNER_COORDINATE ) ),
        UUID.fromString( comp.getString( NBT_LIMITEDBLOCKOWNER_UUID ) )
    );
    return result;
}