Allow advancement icons to have nbt (#4114)
This commit is contained in:
parent
80da39d4e3
commit
4df20daf41
|
@ -0,0 +1,13 @@
|
||||||
|
--- ../src-base/minecraft/net/minecraft/advancements/DisplayInfo.java
|
||||||
|
+++ ../src-work/minecraft/net/minecraft/advancements/DisplayInfo.java
|
||||||
|
@@ -132,7 +132,9 @@
|
||||||
|
{
|
||||||
|
Item item = JsonUtils.func_188180_i(p_193221_0_, "item");
|
||||||
|
int i = JsonUtils.func_151208_a(p_193221_0_, "data", 0);
|
||||||
|
- return new ItemStack(item, 1, i);
|
||||||
|
+ ItemStack ret = new ItemStack(item, 1, i);
|
||||||
|
+ ret.func_77982_d(net.minecraftforge.common.util.JsonUtils.readNBT(p_193221_0_, "nbt"));
|
||||||
|
+ return ret;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -31,9 +31,16 @@ import com.google.common.reflect.TypeToken;
|
||||||
import com.google.gson.JsonDeserializationContext;
|
import com.google.gson.JsonDeserializationContext;
|
||||||
import com.google.gson.JsonDeserializer;
|
import com.google.gson.JsonDeserializer;
|
||||||
import com.google.gson.JsonElement;
|
import com.google.gson.JsonElement;
|
||||||
|
import com.google.gson.JsonObject;
|
||||||
import com.google.gson.JsonParseException;
|
import com.google.gson.JsonParseException;
|
||||||
import com.google.gson.JsonSerializationContext;
|
import com.google.gson.JsonSerializationContext;
|
||||||
import com.google.gson.JsonSerializer;
|
import com.google.gson.JsonSerializer;
|
||||||
|
import com.google.gson.JsonSyntaxException;
|
||||||
|
import net.minecraft.nbt.JsonToNBT;
|
||||||
|
import net.minecraft.nbt.NBTException;
|
||||||
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
|
|
||||||
|
import javax.annotation.Nullable;
|
||||||
|
|
||||||
public class JsonUtils
|
public class JsonUtils
|
||||||
{
|
{
|
||||||
|
@ -88,6 +95,24 @@ public class JsonUtils
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Nullable
|
||||||
|
public static NBTTagCompound readNBT(JsonObject json, String key)
|
||||||
|
{
|
||||||
|
if (net.minecraft.util.JsonUtils.hasField(json, key))
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
return JsonToNBT.getTagFromJson(net.minecraft.util.JsonUtils.getString(json, key));
|
||||||
|
} catch (NBTException e)
|
||||||
|
{
|
||||||
|
throw new JsonSyntaxException("Malformed NBT tag", e);
|
||||||
|
}
|
||||||
|
} else
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@SuppressWarnings({ "serial", "unchecked" })
|
@SuppressWarnings({ "serial", "unchecked" })
|
||||||
private static <E> TypeToken<Map<String, E>> mapOf(final Type arg)
|
private static <E> TypeToken<Map<String, E>> mapOf(final Type arg)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue