package dmillerw.quadrum.common.lib.data;
import com.google.gson.JsonDeserializationContext;
import com.google.gson.JsonDeserializer;
import com.google.gson.JsonElement;
import com.google.gson.JsonParseException;
import java.lang.reflect.Type;
import java.util.Map;
/**
* @author dmillerw
*/
public class EffectDeserializer implements JsonDeserializer<Effect> {
@Override
public Effect deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException {
Effect effect = new Effect();
for (Map.Entry<String, JsonElement> entry : json.getAsJsonObject().entrySet()) {
if (entry.getKey().equalsIgnoreCase("id")) {
effect.id = entry.getValue().getAsInt();
} else if (entry.getKey().equalsIgnoreCase("probability")) {
effect.probability = entry.getValue().getAsFloat();
} else if (entry.getKey().equalsIgnoreCase("duration")) {
effect.duration = entry.getValue().getAsInt();
} else if (entry.getKey().equalsIgnoreCase("amplifier")) {
effect.amplifier = entry.getValue().getAsInt();
}
}
return effect;
}
}