package joshie.progression.gui.editors;
import joshie.progression.gui.core.IGuiFeature;
import joshie.progression.helpers.SplitHelper;
import net.minecraft.item.ItemStack;
import java.util.ArrayList;
import static joshie.progression.gui.core.GuiList.CORE;
import static joshie.progression.gui.core.GuiList.TOOLTIP;
public abstract class GuiBaseEditor implements IEditorMode {
protected ArrayList<IGuiFeature> features = new ArrayList<IGuiFeature>();
@Override
public void initData() {}
@Override
public boolean hasButtons() {
return false;
}
@Override
public ArrayList<IGuiFeature> getFeatures() {
return features;
}
@Override
public void keyTyped(char character, int key) {}
@Override
public void guiMouseReleased(int mouseX, int mouseY, int button) {}
@Override
public void handleMouseInput(int mouseX, int mouseY) {}
//Convenience methods - Stacks
public void drawStack(ItemStack stack, int x, int y, float scale) {
CORE.drawStack(stack, x, y, scale);
}
//Convenience methods - Text
public void drawText(String text, int left, int top, int color) {
CORE.drawText(text, left, top, color);
}
//Convenience methods - Gradient
public void drawGradientRectWithBorder(int left, int top, int right, int bottom, int startColor, int endColor, int border) {
CORE.drawGradientRectWithBorder(left, top, right, bottom, startColor, endColor, border);
}
//Convenience methods - Line
public void drawLine(int left, int top, int right, int bottom, int thickness, int color) {
CORE.drawLine(left, top, right, bottom, thickness, color);
}
//Convenience methods - Tooltip
public void addTooltip(String string) {
TOOLTIP.add(string);
}
//Convenience methods - Tooltip Advanced
public void addTooltip(String tooltip, int length) {
String[] strings = SplitHelper.splitTooltip(tooltip, length);
TOOLTIP.add(SplitHelper.splitTooltip(tooltip.replace("\r", ""), length));
}
}