Fix deserialization of chroma key color (fixes #43)

This commit is contained in:
johni0702
2016-12-24 01:24:55 +01:00
parent c681742a69
commit 5d520a5a3c

View File

@@ -32,13 +32,14 @@ import net.minecraft.crash.CrashReport;
import net.minecraft.util.ReportedException; import net.minecraft.util.ReportedException;
import net.minecraftforge.common.config.Configuration; import net.minecraftforge.common.config.Configuration;
import net.minecraftforge.common.config.Property; import net.minecraftforge.common.config.Property;
import org.lwjgl.util.Color;
import org.lwjgl.util.Dimension; import org.lwjgl.util.Dimension;
import org.lwjgl.util.ReadableColor;
import org.lwjgl.util.ReadableDimension; import org.lwjgl.util.ReadableDimension;
import javax.annotation.Nullable; import javax.annotation.Nullable;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.lang.reflect.Type;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.Date; import java.util.Date;
import java.util.Map; import java.util.Map;
@@ -266,12 +267,10 @@ public class GuiRenderSettings extends GuiScreen implements Closeable {
this.timeline = timeline; this.timeline = timeline;
String json = getConfigProperty(ReplayModRender.instance.getConfiguration()).getString(); String json = getConfigProperty(ReplayModRender.instance.getConfiguration()).getString();
RenderSettings settings = new GsonBuilder().registerTypeAdapter(RenderSettings.class, new InstanceCreator<RenderSettings>() { RenderSettings settings = new GsonBuilder()
@Override .registerTypeAdapter(RenderSettings.class, (InstanceCreator<RenderSettings>) type -> getDefaultRenderSettings())
public RenderSettings createInstance(Type type) { .registerTypeAdapter(ReadableColor.class, new Gson().getAdapter(Color.class))
return getDefaultRenderSettings(); .create().fromJson(json, RenderSettings.class);
}
}).create().fromJson(json, RenderSettings.class);
load(settings); load(settings);
} }