package joshie.progression.plugins.enchiridion.actions;
import com.google.gson.JsonObject;
import joshie.enchiridion.gui.book.buttons.actions.AbstractAction;
import joshie.progression.Progression;
import joshie.progression.helpers.JSONHelper;
import joshie.progression.lib.PInfo;
import net.minecraft.util.ResourceLocation;
import java.util.UUID;
public abstract class AbstractActionProgression extends AbstractAction {
protected transient UUID uuid = UUID.randomUUID();
public String display = "New";
public AbstractActionProgression() {}
public AbstractActionProgression(String name) {
super(name);
this.resource = new ResourceLocation(PInfo.BOOKPATH + name + ".png");
}
public AbstractActionProgression copyAbstract(AbstractActionProgression action) {
super.copyAbstract(action);
action.uuid = uuid;
action.display = display;
return this;
}
@Override
public void readFromJson(JsonObject object) {
super.readFromJson(object);
try {
uuid = UUID.fromString(JSONHelper.getString(object, "uuid", "d977334a-a7e9-5e43-b87e-91df8eebfdff"));
} catch (Exception e){}
}
@Override
public void writeToJson(JsonObject object) {
super.writeToJson(object);
if (uuid != null) {
JSONHelper.setString(object, "uuid", uuid.toString(), "d977334a-a7e9-5e43-b87e-91df8eebfdff");
}
}
@Override
public String getName() {
return Progression.translate("action." + name);
}
}