@Override public IRecipe parse(JsonContext context, JsonObject json) { String group = JsonUtils.getString(json, "group", ""); NonNullList<Ingredient> ings = NonNullList.create(); for(JsonElement ele : JsonUtils.getJsonArray(json, "ingredients")) ings.add(CraftingHelper.getIngredient(ele, context)); if(ings.isEmpty()) throw new JsonParseException("No ingredients for shapeless recipe"); if(ings.size() > 9) throw new JsonParseException("Too many ingredients for shapeless recipe"); ItemStack itemstack = CraftingHelper.getItemStack(JsonUtils.getJsonObject(json, "result"), context); return new RecipeTorchGun(group, itemstack, ings); }
@Override public IRecipe parse(JsonContext context, JsonObject json) { int clamp = JsonUtils.getInt(json, "clamp"); boolean combining = JsonUtils.getBoolean(json, "combining"); JsonArray upgradeList = JsonUtils.getJsonArray(json, "upgrades"); Map<Ingredient, Double> upgrades = new LinkedHashMap<>(); int n = 0; for (JsonElement element : upgradeList) { if (element.isJsonObject()) { JsonObject upgrade = element.getAsJsonObject(); double amount = JsonUtils.getFloat(upgrade, "amount"); Ingredient ingredient = CraftingHelper.getIngredient(upgrade.get("ingredient"), context); upgrades.put(ingredient, amount); } else { throw new JsonSyntaxException("Expected " + n + " to be a JsonObject, was " + JsonUtils.toString(json)); } n++; } return new RandoresForgeUpgradeRecipe(clamp, combining, upgrades); }
public static String readPoolName(JsonObject json) { LootTableContext ctx = ForgeHooks.getLootTableContext(); ctx.resetPoolCtx(); if (json.has("name")) return JsonUtils.getString(json, "name"); if (ctx.custom) return "custom#" + json.hashCode(); //We don't care about custom ones modders shouldn't be editing them! ctx.poolCount++; if (!ctx.vanilla) throw new JsonParseException("Loot Table \"" + ctx.name.toString() + "\" Missing `name` entry for pool #" + (ctx.poolCount - 1)); return ctx.poolCount == 1 ? "main" : "pool" + (ctx.poolCount - 1); }
public static String readLootEntryName(JsonObject json, String type) { LootTableContext ctx = ForgeHooks.getLootTableContext(); ctx.entryCount++; if (json.has("entryName")) return ctx.validateEntryName(JsonUtils.getString(json, "entryName")); if (ctx.custom) return "custom#" + json.hashCode(); //We don't care about custom ones modders shouldn't be editing them! String name = null; if ("item".equals(type)) name = JsonUtils.getString(json, "name"); else if ("loot_table".equals(type)) name = JsonUtils.getString(json, "name"); else if ("empty".equals(type)) name = "empty"; return ctx.validateEntryName(name); }
private void initTarget(JsonElement p_148027_1_) throws JsonException { if (JsonUtils.isString(p_148027_1_)) { this.addFramebuffer(p_148027_1_.getAsString(), this.mainFramebufferWidth, this.mainFramebufferHeight); } else { JsonObject jsonobject = JsonUtils.getJsonObject(p_148027_1_, "target"); String s = JsonUtils.getString(jsonobject, "name"); int i = JsonUtils.getInt(jsonobject, "width", this.mainFramebufferWidth); int j = JsonUtils.getInt(jsonobject, "height", this.mainFramebufferHeight); if (this.mapFramebuffers.containsKey(s)) { throw new JsonException(s + " is already defined"); } this.addFramebuffer(s, i, j); } }
public SetAttributes deserialize(JsonObject object, JsonDeserializationContext deserializationContext, LootCondition[] conditionsIn) { JsonArray jsonarray = JsonUtils.getJsonArray(object, "modifiers"); SetAttributes.Modifier[] asetattributes$modifier = new SetAttributes.Modifier[jsonarray.size()]; int i = 0; for (JsonElement jsonelement : jsonarray) { asetattributes$modifier[i++] = SetAttributes.Modifier.deserialize(JsonUtils.getJsonObject(jsonelement, "modifier"), deserializationContext); } if (asetattributes$modifier.length == 0) { throw new JsonSyntaxException("Invalid attribute modifiers array; cannot be empty"); } else { return new SetAttributes(conditionsIn, asetattributes$modifier); } }
protected Map<String, VariantList> parseMapVariants(JsonDeserializationContext deserializationContext, JsonObject object) { Map<String, VariantList> map = Maps.<String, VariantList>newHashMap(); if (object.has("variants")) { JsonObject jsonobject = JsonUtils.getJsonObject(object, "variants"); for (Entry<String, JsonElement> entry : jsonobject.entrySet()) { map.put(entry.getKey(), (VariantList)deserializationContext.deserialize((JsonElement)entry.getValue(), VariantList.class)); } } return map; }
public BlockPart deserialize(JsonElement p_deserialize_1_, Type p_deserialize_2_, JsonDeserializationContext p_deserialize_3_) throws JsonParseException { JsonObject jsonobject = p_deserialize_1_.getAsJsonObject(); Vector3f vector3f = this.parsePositionFrom(jsonobject); Vector3f vector3f1 = this.parsePositionTo(jsonobject); BlockPartRotation blockpartrotation = this.parseRotation(jsonobject); Map<EnumFacing, BlockPartFace> map = this.parseFacesCheck(p_deserialize_3_, jsonobject); if (jsonobject.has("shade") && !JsonUtils.isBoolean(jsonobject, "shade")) { throw new JsonParseException("Expected shade to be a Boolean"); } else { boolean flag = JsonUtils.getBoolean(jsonobject, "shade", true); return new BlockPart(vector3f, vector3f1, map, blockpartrotation, flag); } }
private Vector3f parsePosition(JsonObject p_178251_1_, String p_178251_2_) { JsonArray jsonarray = JsonUtils.getJsonArray(p_178251_1_, p_178251_2_); if (jsonarray.size() != 3) { throw new JsonParseException("Expected 3 " + p_178251_2_ + " values, found: " + jsonarray.size()); } else { float[] afloat = new float[3]; for (int i = 0; i < afloat.length; ++i) { afloat[i] = JsonUtils.getFloat(jsonarray.get(i), p_178251_2_ + "[" + i + "]"); } return new Vector3f(afloat[0], afloat[1], afloat[2]); } }
public static ChunkProviderSettings.Factory jsonToFactory(String p_177865_0_) { if (p_177865_0_.isEmpty()) { return new ChunkProviderSettings.Factory(); } else { try { return (ChunkProviderSettings.Factory)JsonUtils.gsonDeserialize(JSON_ADAPTER, p_177865_0_, ChunkProviderSettings.Factory.class); } catch (Exception var2) { return new ChunkProviderSettings.Factory(); } } }
public LootFunction deserialize(JsonElement p_deserialize_1_, Type p_deserialize_2_, JsonDeserializationContext p_deserialize_3_) throws JsonParseException { JsonObject jsonobject = JsonUtils.getJsonObject(p_deserialize_1_, "function"); ResourceLocation resourcelocation = new ResourceLocation(JsonUtils.getString(jsonobject, "function")); LootFunction.Serializer<?> serializer; try { serializer = LootFunctionManager.getSerializerForName(resourcelocation); } catch (IllegalArgumentException var8) { throw new JsonSyntaxException("Unknown function \'" + resourcelocation + "\'"); } return serializer.deserialize(jsonobject, p_deserialize_3_, (LootCondition[])JsonUtils.deserializeClass(jsonobject, "conditions", new LootCondition[0], p_deserialize_3_, LootCondition[].class)); }
@Nullable private BlockPartRotation parseRotation(JsonObject object) { BlockPartRotation blockpartrotation = null; if (object.has("rotation")) { JsonObject jsonobject = JsonUtils.getJsonObject(object, "rotation"); Vector3f vector3f = this.parsePosition(jsonobject, "origin"); vector3f.scale(0.0625F); EnumFacing.Axis enumfacing$axis = this.parseAxis(jsonobject); float f = this.parseAngle(jsonobject); boolean flag = JsonUtils.getBoolean(jsonobject, "rescale", false); blockpartrotation = new BlockPartRotation(vector3f, enumfacing$axis, f, flag); } return blockpartrotation; }
public ServerStatusResponse.PlayerCountData deserialize(JsonElement p_deserialize_1_, Type p_deserialize_2_, JsonDeserializationContext p_deserialize_3_) throws JsonParseException { JsonObject jsonobject = JsonUtils.getJsonObject(p_deserialize_1_, "players"); ServerStatusResponse.PlayerCountData serverstatusresponse$playercountdata = new ServerStatusResponse.PlayerCountData(JsonUtils.getInt(jsonobject, "max"), JsonUtils.getInt(jsonobject, "online")); if (JsonUtils.isJsonArray(jsonobject, "sample")) { JsonArray jsonarray = JsonUtils.getJsonArray(jsonobject, "sample"); if (jsonarray.size() > 0) { GameProfile[] agameprofile = new GameProfile[jsonarray.size()]; for (int i = 0; i < agameprofile.length; ++i) { JsonObject jsonobject1 = JsonUtils.getJsonObject(jsonarray.get(i), "player[" + i + "]"); String s = JsonUtils.getString(jsonobject1, "id"); agameprofile[i] = new GameProfile(UUID.fromString(s), JsonUtils.getString(jsonobject1, "name")); } serverstatusresponse$playercountdata.setPlayers(agameprofile); } } return serverstatusresponse$playercountdata; }
public static LootEntryItem deserialize(JsonObject object, JsonDeserializationContext deserializationContext, int weightIn, int qualityIn, LootCondition[] conditionsIn) { Item item = JsonUtils.getItem(object, "name"); LootFunction[] alootfunction; if (object.has("functions")) { alootfunction = (LootFunction[])JsonUtils.deserializeClass(object, "functions", deserializationContext, LootFunction[].class); } else { alootfunction = new LootFunction[0]; } return new LootEntryItem(item, weightIn, qualityIn, alootfunction, conditionsIn); }
private List<Sound> deserializeSounds(JsonObject object) { List<Sound> list = Lists.<Sound>newArrayList(); if (object.has("sounds")) { JsonArray jsonarray = JsonUtils.getJsonArray(object, "sounds"); for (int i = 0; i < jsonarray.size(); ++i) { JsonElement jsonelement = jsonarray.get(i); if (JsonUtils.isString(jsonelement)) { String s = JsonUtils.getString(jsonelement, "sound"); list.add(new Sound(s, 1.0F, 1.0F, 1, Sound.Type.FILE, false)); } else { list.add(this.deserializeSound(JsonUtils.getJsonObject(jsonelement, "sound"))); } } } return list; }
public ServerStatusResponse.Players deserialize(JsonElement p_deserialize_1_, Type p_deserialize_2_, JsonDeserializationContext p_deserialize_3_) throws JsonParseException { JsonObject jsonobject = JsonUtils.getJsonObject(p_deserialize_1_, "players"); ServerStatusResponse.Players serverstatusresponse$players = new ServerStatusResponse.Players(JsonUtils.getInt(jsonobject, "max"), JsonUtils.getInt(jsonobject, "online")); if (JsonUtils.isJsonArray(jsonobject, "sample")) { JsonArray jsonarray = JsonUtils.getJsonArray(jsonobject, "sample"); if (jsonarray.size() > 0) { GameProfile[] agameprofile = new GameProfile[jsonarray.size()]; for (int i = 0; i < agameprofile.length; ++i) { JsonObject jsonobject1 = JsonUtils.getJsonObject(jsonarray.get(i), "player[" + i + "]"); String s = JsonUtils.getString(jsonobject1, "id"); agameprofile[i] = new GameProfile(UUID.fromString(s), JsonUtils.getString(jsonobject1, "name")); } serverstatusresponse$players.setPlayers(agameprofile); } } return serverstatusresponse$players; }
private Sound.Type deserializeType(JsonObject object, Sound.Type defaultValue) { Sound.Type sound$type = defaultValue; if (object.has("type")) { sound$type = Sound.Type.getByName(JsonUtils.getString(object, "type")); Validate.notNull(sound$type, "Invalid type", new Object[0]); } return sound$type; }
public PackMetadataSection deserialize(JsonElement p_deserialize_1_, Type p_deserialize_2_, JsonDeserializationContext p_deserialize_3_) throws JsonParseException { JsonObject jsonobject = p_deserialize_1_.getAsJsonObject(); ITextComponent itextcomponent = (ITextComponent)p_deserialize_3_.deserialize(jsonobject.get("description"), ITextComponent.class); if (itextcomponent == null) { throw new JsonParseException("Invalid/missing description!"); } else { int i = JsonUtils.getInt(jsonobject, "pack_format"); return new PackMetadataSection(itextcomponent, i); } }
public ServerStatusResponse deserialize(JsonElement p_deserialize_1_, Type p_deserialize_2_, JsonDeserializationContext p_deserialize_3_) throws JsonParseException { JsonObject jsonobject = JsonUtils.getJsonObject(p_deserialize_1_, "status"); ServerStatusResponse serverstatusresponse = new ServerStatusResponse(); if (jsonobject.has("description")) { serverstatusresponse.setServerDescription((IChatComponent)p_deserialize_3_.deserialize(jsonobject.get("description"), IChatComponent.class)); } if (jsonobject.has("players")) { serverstatusresponse.setPlayerCountData((ServerStatusResponse.PlayerCountData)p_deserialize_3_.deserialize(jsonobject.get("players"), ServerStatusResponse.PlayerCountData.class)); } if (jsonobject.has("version")) { serverstatusresponse.setProtocolVersionInfo((ServerStatusResponse.MinecraftProtocolVersionIdentifier)p_deserialize_3_.deserialize(jsonobject.get("version"), ServerStatusResponse.MinecraftProtocolVersionIdentifier.class)); } if (jsonobject.has("favicon")) { serverstatusresponse.setFavicon(JsonUtils.getString(jsonobject, "favicon")); } return serverstatusresponse; }
public LootEntry deserialize(JsonElement p_deserialize_1_, Type p_deserialize_2_, JsonDeserializationContext p_deserialize_3_) throws JsonParseException { JsonObject jsonobject = JsonUtils.getJsonObject(p_deserialize_1_, "loot item"); String s = JsonUtils.getString(jsonobject, "type"); int i = JsonUtils.getInt(jsonobject, "weight", 1); int j = JsonUtils.getInt(jsonobject, "quality", 0); LootCondition[] alootcondition; if (jsonobject.has("conditions")) { alootcondition = (LootCondition[])JsonUtils.deserializeClass(jsonobject, "conditions", p_deserialize_3_, LootCondition[].class); } else { alootcondition = new LootCondition[0]; } if ("item".equals(s)) { return LootEntryItem.deserialize(jsonobject, p_deserialize_3_, i, j, alootcondition); } else if ("loot_table".equals(s)) { return LootEntryTable.deserialize(jsonobject, p_deserialize_3_, i, j, alootcondition); } else if ("empty".equals(s)) { return LootEntryEmpty.deserialize(jsonobject, p_deserialize_3_, i, j, alootcondition); } else { throw new JsonSyntaxException("Unknown loot entry type \'" + s + "\'"); } }
@VisibleForTesting static ICondition getOrAndCondition(JsonObject json) { Set<Entry<String, JsonElement>> set = json.entrySet(); if (set.isEmpty()) { throw new JsonParseException("No elements found in selector"); } else { return (ICondition)(set.size() == 1 ? (json.has("OR") ? new ConditionOr(Iterables.transform(JsonUtils.getJsonArray(json, "OR"), FUNCTION_OR_AND)) : (json.has("AND") ? new ConditionAnd(Iterables.transform(JsonUtils.getJsonArray(json, "AND"), FUNCTION_OR_AND)) : makePropertyValue((Entry)set.iterator().next()))) : new ConditionAnd(Iterables.transform(set, FUNCTION_PROPERTY_VALUE))); } }
private void parseSampler(JsonElement p_147996_1_) throws JsonException { JsonObject jsonobject = JsonUtils.getJsonObject(p_147996_1_, "sampler"); String s = JsonUtils.getString(jsonobject, "name"); if (!JsonUtils.isString(jsonobject, "file")) { this.shaderSamplers.put(s, (Object)null); this.samplerNames.add(s); } else { this.samplerNames.add(s); } }
protected Map<ResourceLocation, Float> makeMapResourceValues(JsonObject p_188025_1_) { Map<ResourceLocation, Float> map = Maps.<ResourceLocation, Float>newLinkedHashMap(); JsonObject jsonobject = JsonUtils.getJsonObject(p_188025_1_, "predicate"); for (Entry<String, JsonElement> entry : jsonobject.entrySet()) { map.put(new ResourceLocation((String)entry.getKey()), Float.valueOf(JsonUtils.getFloat((JsonElement)entry.getValue(), (String)entry.getKey()))); } return map; }
private Sound deserializeSound(JsonObject object) { String s = JsonUtils.getString(object, "name"); Sound.Type sound$type = this.deserializeType(object, Sound.Type.FILE); float f = JsonUtils.getFloat(object, "volume", 1.0F); Validate.isTrue(f > 0.0F, "Invalid volume", new Object[0]); float f1 = JsonUtils.getFloat(object, "pitch", 1.0F); Validate.isTrue(f1 > 0.0F, "Invalid pitch", new Object[0]); int i = JsonUtils.getInt(object, "weight", 1); Validate.isTrue(i > 0, "Invalid weight", new Object[0]); boolean flag = JsonUtils.getBoolean(object, "stream", false); return new Sound(s, f, f1, i, sound$type, flag); }
public LanguageMetadataSection deserialize(JsonElement p_deserialize_1_, Type p_deserialize_2_, JsonDeserializationContext p_deserialize_3_) throws JsonParseException { JsonObject jsonobject = p_deserialize_1_.getAsJsonObject(); Set<Language> set = Sets.<Language>newHashSet(); for (Entry<String, JsonElement> entry : jsonobject.entrySet()) { String s = (String)entry.getKey(); JsonObject jsonobject1 = JsonUtils.getJsonObject((JsonElement)entry.getValue(), "language"); String s1 = JsonUtils.getString(jsonobject1, "region"); String s2 = JsonUtils.getString(jsonobject1, "name"); boolean flag = JsonUtils.getBoolean(jsonobject1, "bidirectional", false); if (s1.isEmpty()) { throw new JsonParseException("Invalid language->\'" + s + "\'->region: empty value"); } if (s2.isEmpty()) { throw new JsonParseException("Invalid language->\'" + s + "\'->name: empty value"); } if (!set.add(new Language(s, s1, s2, flag))) { throw new JsonParseException("Duplicate language->\'" + s + "\' defined"); } } return new LanguageMetadataSection(set); }
protected List<BlockPart> getModelElements(JsonDeserializationContext deserializationContext, JsonObject object) { List<BlockPart> list = Lists.<BlockPart>newArrayList(); if (object.has("elements")) { for (JsonElement jsonelement : JsonUtils.getJsonArray(object, "elements")) { list.add((BlockPart)deserializationContext.deserialize(jsonelement, BlockPart.class)); } } return list; }
public ResourceIndex(File assetsFolder, String indexName) { File file1 = new File(assetsFolder, "objects"); File file2 = new File(assetsFolder, "indexes/" + indexName + ".json"); BufferedReader bufferedreader = null; try { bufferedreader = Files.newReader(file2, Charsets.UTF_8); JsonObject jsonobject = (new JsonParser()).parse((Reader)bufferedreader).getAsJsonObject(); JsonObject jsonobject1 = JsonUtils.getJsonObject(jsonobject, "objects", (JsonObject)null); if (jsonobject1 != null) { for (Entry<String, JsonElement> entry : jsonobject1.entrySet()) { JsonObject jsonobject2 = (JsonObject)entry.getValue(); String s = (String)entry.getKey(); String[] astring = s.split("/", 2); String s1 = astring.length == 1 ? astring[0] : astring[0] + ":" + astring[1]; String s2 = JsonUtils.getString(jsonobject2, "hash"); File file3 = new File(file1, s2.substring(0, 2) + "/" + s2); this.resourceMap.put(s1, file3); } } } catch (JsonParseException var20) { LOGGER.error("Unable to parse resource index file: {}", new Object[] {file2}); } catch (FileNotFoundException var21) { LOGGER.error("Can\'t find the resource index file: {}", new Object[] {file2}); } finally { IOUtils.closeQuietly((Reader)bufferedreader); } }
private float[] parseUV(JsonObject p_178292_1_) { if (!p_178292_1_.has("uv")) { return null; } else { JsonArray jsonarray = JsonUtils.getJsonArray(p_178292_1_, "uv"); if (jsonarray.size() != 4) { throw new JsonParseException("Expected 4 uv values, found: " + jsonarray.size()); } else { float[] afloat = new float[4]; for (int i = 0; i < afloat.length; ++i) { afloat[i] = JsonUtils.getFloat(jsonarray.get(i), "uv[" + i + "]"); } return afloat; } } }
private Vector3f parseVector3f(JsonObject jsonObject, String key, Vector3f defaultValue) { if (!jsonObject.has(key)) { return defaultValue; } else { JsonArray jsonarray = JsonUtils.getJsonArray(jsonObject, key); if (jsonarray.size() != 3) { throw new JsonParseException("Expected 3 " + key + " values, found: " + jsonarray.size()); } else { float[] afloat = new float[3]; for (int i = 0; i < afloat.length; ++i) { afloat[i] = JsonUtils.getFloat(jsonarray.get(i), key + "[" + i + "]"); } return new Vector3f(afloat[0], afloat[1], afloat[2]); } } }
public EntityHasScore deserialize(JsonObject json, JsonDeserializationContext context) { Set<Entry<String, JsonElement>> set = JsonUtils.getJsonObject(json, "scores").entrySet(); Map<String, RandomValueRange> map = Maps.<String, RandomValueRange>newLinkedHashMap(); for (Entry<String, JsonElement> entry : set) { map.put(entry.getKey(), JsonUtils.deserializeClass((JsonElement)entry.getValue(), "score", context, RandomValueRange.class)); } return new EntityHasScore(map, (LootContext.EntityTarget)JsonUtils.deserializeClass(json, "entity", context, LootContext.EntityTarget.class)); }
protected ModelRotation parseRotation(JsonObject p_178428_1_) { int i = JsonUtils.getInt(p_178428_1_, "x", 0); int j = JsonUtils.getInt(p_178428_1_, "y", 0); ModelRotation modelrotation = ModelRotation.getModelRotation(i, j); if (modelrotation == null) { throw new JsonParseException("Invalid BlockModelRotation x: " + i + ", y: " + j); } else { return modelrotation; } }
public ModelBlock deserialize(JsonElement p_deserialize_1_, Type p_deserialize_2_, JsonDeserializationContext p_deserialize_3_) throws JsonParseException { JsonObject jsonobject = p_deserialize_1_.getAsJsonObject(); List<BlockPart> list = this.getModelElements(p_deserialize_3_, jsonobject); String s = this.getParent(jsonobject); boolean flag = StringUtils.isEmpty(s); boolean flag1 = list.isEmpty(); if (flag1 && flag) { throw new JsonParseException("BlockModel requires either elements or parent, found neither"); } else if (!flag && !flag1) { throw new JsonParseException("BlockModel requires either elements or parent, found both"); } else { Map<String, String> map = this.getTextures(jsonobject); boolean flag2 = this.getAmbientOcclusionEnabled(jsonobject); ItemCameraTransforms itemcameratransforms = ItemCameraTransforms.DEFAULT; if (jsonobject.has("display")) { JsonObject jsonobject1 = JsonUtils.getJsonObject(jsonobject, "display"); itemcameratransforms = (ItemCameraTransforms)p_deserialize_3_.deserialize(jsonobject1, ItemCameraTransforms.class); } return flag1 ? new ModelBlock(new ResourceLocation(s), map, flag2, true, itemcameratransforms) : new ModelBlock(list, map, flag2, true, itemcameratransforms); } }
public LootEntry deserialize(JsonElement p_deserialize_1_, Type p_deserialize_2_, JsonDeserializationContext p_deserialize_3_) throws JsonParseException { JsonObject jsonobject = JsonUtils.getJsonObject(p_deserialize_1_, "loot item"); String s = JsonUtils.getString(jsonobject, "type"); int i = JsonUtils.getInt(jsonobject, "weight", 1); int j = JsonUtils.getInt(jsonobject, "quality", 0); LootCondition[] alootcondition; if (jsonobject.has("conditions")) { alootcondition = (LootCondition[])JsonUtils.deserializeClass(jsonobject, "conditions", p_deserialize_3_, LootCondition[].class); } else { alootcondition = new LootCondition[0]; } LootEntry ret = net.minecraftforge.common.ForgeHooks.deserializeJsonLootEntry(s, jsonobject, i, j, alootcondition); if (ret != null) return ret; if ("item".equals(s)) { return LootEntryItem.deserialize(jsonobject, p_deserialize_3_, i, j, alootcondition); } else if ("loot_table".equals(s)) { return LootEntryTable.deserialize(jsonobject, p_deserialize_3_, i, j, alootcondition); } else if ("empty".equals(s)) { return LootEntryEmpty.deserialize(jsonobject, p_deserialize_3_, i, j, alootcondition); } else { throw new JsonSyntaxException("Unknown loot entry type \'" + s + "\'"); } }
public PackMetadataSection deserialize(JsonElement p_deserialize_1_, Type p_deserialize_2_, JsonDeserializationContext p_deserialize_3_) throws JsonParseException { JsonObject jsonobject = p_deserialize_1_.getAsJsonObject(); IChatComponent ichatcomponent = (IChatComponent)p_deserialize_3_.deserialize(jsonobject.get("description"), IChatComponent.class); if (ichatcomponent == null) { throw new JsonParseException("Invalid/missing description!"); } else { int i = JsonUtils.getInt(jsonobject, "pack_format"); return new PackMetadataSection(ichatcomponent, i); } }