package joshie.harvest.knowledge.gui.stats.relations.page; import joshie.harvest.core.base.gui.BookPage; import joshie.harvest.knowledge.gui.stats.GuiStats; import joshie.harvest.knowledge.gui.stats.button.ButtonNext; import joshie.harvest.knowledge.gui.stats.button.ButtonPrevious; import joshie.harvest.knowledge.gui.stats.relations.button.ButtonRelationsNPC; import joshie.harvest.npcs.HFNPCs; import joshie.harvest.api.npc.NPC; import net.minecraft.client.gui.GuiButton; import net.minecraft.client.gui.GuiLabel; import java.util.ArrayList; import java.util.List; public class PageNPC extends PageRelationship { public static final BookPage INSTANCE = new PageNPC(); private PageNPC() { super("npc", HFNPCs.SPAWNER_NPC.getStackFromObject(HFNPCs.CARPENTER)); } @Override public void initGui(GuiStats gui, List<GuiButton> buttonList, List<GuiLabel> labelList) { super.initGui(gui, buttonList, labelList); int x = 0; int y = 0; List<NPC> list = new ArrayList<>(NPC.REGISTRY.values()); for (int i = 1 + start * 14; i < 15 + start * 14 && i < list.size(); i++) { NPC npc = list.get(i); buttonList.add(new ButtonRelationsNPC(gui, npc, buttonList.size(), 16 + x * 144, 20 + y * 22)); y++; if (y >= 7) { y = 0; x++; } } if (start < (NPC.REGISTRY.values().size() - 1) / 14) buttonList.add(new ButtonNext(gui, buttonList.size(), 273, 172)); if (start != 0) buttonList.add(new ButtonPrevious(gui, buttonList.size(), 20, 172)); } }