public GuiNaturalistInventory(ISpeciesRoot speciesRoot, EntityPlayer player, Container container, int page, int maxPages) { super(Constants.TEXTURE_PATH_GUI + "/apiaristinventory.png", container); this.speciesRoot = speciesRoot; this.pageCurrent = page; this.pageMax = maxPages; xSize = 196; ySize = 202; for (IIndividual individual : speciesRoot.getIndividualTemplates()) { iconStacks.put(individual.getIdent(), speciesRoot.getMemberStack(individual, speciesRoot.getIconType())); } breedingTracker = speciesRoot.getBreedingTracker(player.world, player.getGameProfile()); }
@Nonnull @Override public Map<Object, Object> getMeta(@Nonnull IPartialContext<IIndividual> context) { IIndividual individual = context.getTarget(); Map<Object, Object> out = Maps.newHashMap(); out.put("id", individual.getIdent()); out.put("analyzed", individual.isAnalyzed()); if (individual.isAnalyzed()) { out.put("genome", context.makePartialChild(individual.getGenome()).getMeta()); Map<String, Boolean> pureBred = Maps.newHashMap(); for (IChromosomeType type : individual.getGenome().getSpeciesRoot().getKaryotype()) { pureBred.put(type.getName().toLowerCase(Locale.ENGLISH), individual.isPureBred(type)); } out.put("pureBred", pureBred); } return out; } }
@Override protected void drawGuiContainerBackgroundLayer(float f, int i, int j) { super.drawGuiContainerBackgroundLayer(f, i, j); String header = Translator.translateToLocal("for.gui.page") + " " + (pageCurrent + 1) + "/" + pageMax; fontRenderer.drawString(header, guiLeft + 95 + textLayout.getCenteredOffset(header, 98), guiTop + 10, ColourProperties.INSTANCE.get("gui.title")); IIndividual individual = getIndividualAtPosition(i, j); if (individual == null) { displayBreedingStatistics(10); } if (individual != null) { RenderHelper.enableGUIStandardItemLighting(); textLayout.startPage(); displaySpeciesInformation(true, individual.getGenome().getPrimary(), iconStacks.get(individual.getIdent()), 10); if (!individual.isPureBred(EnumTreeChromosome.SPECIES)) { displaySpeciesInformation(individual.isAnalyzed(), individual.getGenome().getSecondary(), iconStacks.get(individual.getGenome().getSecondary().getUID()), 10); } textLayout.endPage(); } }
if (AlleleManager.alleleRegistry.isBlacklisted(individual.getIdent())) { String extinct = ">> " + Translator.translateToLocal("for.gui.alyzer.extinct").toUpperCase() + " <<"; fontRenderer.drawStringWithShadow(extinct, guiLeft + 200 - fontRenderer.getStringWidth(extinct),