package joshie.progression.gui.editors; import joshie.progression.api.criteria.ITriggerProvider; import joshie.progression.gui.core.IBarProvider; import joshie.progression.handlers.APICache; import java.util.UUID; import static joshie.progression.gui.core.GuiList.*; public class GuiConditionEditor extends GuiBaseEditorRule<ITriggerProvider> implements IBarProvider { private UUID uuid; public GuiConditionEditor() { features.add(BACKGROUND); features.add(CONDITION_BG); features.add(CONDITIONS); features.add(TEXT_EDITOR_FULL); //Add the text selector features.add(ITEM_EDITOR); //Add the item selector features.add(NEW_CONDITION); //Add new trigger popup features.add(NEW_REWARD); //Add new reward popup features.add(FOOTER); } @Override public ITriggerProvider get() { return APICache.getClientCache().getTriggerFromUUID(uuid); } @Override public void set(ITriggerProvider trigger) { this.uuid = trigger.getUniqueID(); } @Override public IEditorMode getPreviousGui() { return CRITERIA_EDITOR; } @Override public void initData() { if (get() == null) { CORE.setEditor(CRITERIA_EDITOR); return; } //Setup the features CONDITION_BG.setProvider(this); } @Override public void drawGuiForeground(boolean overlayvisible, int mouseX, int mouseY) {} @Override public boolean guiMouseClicked(boolean overlayvisible, int mouseX, int mouseY, int button) { return false; } @Override public int getColorForBar(BarColorType type) { switch (type) { case BAR1_GRADIENT1: return get().getColor(); case BAR1_GRADIENT2: return 0xFF000000; case BAR1_BORDER: return 0xFF000000; case BAR1_FONT: return THEME.conditionEditorFont; case BAR1_UNDERLINE: return 0xFF000000; default: return 0; } } }