package joshie.progression.gui.editors;
import joshie.progression.api.criteria.ITab;
import joshie.progression.handlers.APICache;
import joshie.progression.handlers.TemplateHandler;
import joshie.progression.helpers.RenderItemHelper;
import joshie.progression.json.DataCriteria;
import joshie.progression.json.JSONLoader;
import static joshie.progression.gui.core.GuiList.*;
public class FeatureTemplateSelectorCriteria extends FeatureTemplateAbstract {
@Override
public boolean clickForeground(int mouseX, int mouseY, int width) {
int j = 0, k = 0;
for (int i = 0; i < TemplateHandler.getCriteria().size(); i++) {
if (isMouseOver(mouseX, mouseY, j, k)) {
DataCriteria criteria = TemplateHandler.getCriteria().get(i);
if (APICache.getClientCache().getCriteria(criteria.getUUID()) == null) {
ITab tab = TREE_EDITOR.currentTab;
if (tab != null) {
JSONLoader.createCriteriaFromData(tab, criteria, true);
JSONLoader.createCriteriaInternals(criteria, true);
JSONLoader.initialiseCriteria(criteria, true);
JSONLoader.initEverything(true);
CORE.setEditor(TREE_EDITOR);
}
}
return false;
}
//Update stuff
j++;
if (j > width) {
j = 0;
k++;
}
}
return false;
}
@Override
protected void drawForeground(int mouseX, int mouseY, int width) {
int j = 0;
int k = 0;
for (int i = 0; i < TemplateHandler.getCriteria().size(); i++) {
DataCriteria criteria = TemplateHandler.getCriteria().get(i);
RenderItemHelper.drawStack(criteria.getIcon(), 32 + (j * 16), CORE.screenTop + 45 + (k * 16), 1F);
if (isMouseOver(mouseX, mouseY, j, k)) {
TOOLTIP.add(criteria.getName());
}
//Update stuff
j++;
if (j > width) {
j = 0;
k++;
}
}
}
}