@Override public boolean trySpawnFruitBlock(ITreeGenome genome, World world, Random rand, BlockPos pos) { if (rand.nextFloat() > genome.getSappiness()) { return false; } IAlleleFruit activeAllele = (IAlleleFruit) genome.getActiveAllele(EnumTreeChromosome.FRUITS); return TreeManager.treeRoot.setFruitBlock(world, genome, activeAllele, genome.getYield(), pos); }
@Override public int getResilience() { int base = (int) (getGenome().getFertility() * getGenome().getSappiness() * 100); return (base > 1 ? base : 1) * 10; }
@Override public float getFermentationModifier(ItemStack itemstack) { itemstack = GeneticsUtil.convertToGeneticEquivalent(itemstack); ITree tree = TreeManager.treeRoot.getMember(itemstack); if (tree == null) { return 1.0f; } return tree.getGenome().getSappiness() * 10; }
if (rand.nextFloat() >= tree.getGenome().getSappiness() * tree.getGenome().getYield()) { return false;
ITreekeepingMode treekeepingMode = TreeManager.treeRoot.getTreekeepingMode(world); float sappinessModifier = treekeepingMode.getSappinessModifier(genome, 1f); float sappiness = genome.getSappiness() * sappinessModifier;
@Override @SideOnly(Side.CLIENT) public int addBiologyPages(ITree tree, IWidget parent, int y, IAnalystManager analystManager) { IBreedingSystem treeSystem = Binnie.GENETICS.getSystem(TreeManager.treeRoot); String alleleName = treeSystem.getAlleleName(EnumTreeChromosome.SAPPINESS, tree.getGenome().getActiveAllele(EnumTreeChromosome.SAPPINESS)); new ControlTextCentered(parent, y, TextFormatting.ITALIC + I18N.localise(AnalystConstants.BIOLOGY_KEY + ".sappiness", alleleName)) .setColor(parent.getColor()); y += 20; int fertility = (int) (1.0f / tree.getGenome().getFertility()); if (fertility > 1) { new ControlTextCentered(parent, y, I18N.localise(AnalystConstants.BIOLOGY_KEY + ".fertility.leaves", fertility)) .setColor(parent.getColor()); } else { new ControlTextCentered(parent, y, I18N.localise(AnalystConstants.BIOLOGY_KEY + ".fertility.leaf")) .setColor(parent.getColor()); } y += 22; int butterflySpawn = Math.round(Constants.SPAWN_KOEF / (tree.getGenome().getSappiness() * tree.getGenome().getYield() * 0.5f)); new ControlTextCentered(parent, y, I18N.localise(AnalystConstants.BIOLOGY_KEY + ".mothSpawn.perLeaf", TimeUtil.getTimeString(butterflySpawn))) .setColor(parent.getColor()); y += 34; new ControlTextCentered(parent, y, I18N.localise(AnalystConstants.BIOLOGY_KEY + ".plantTypes")).setColor(parent.getColor()); y += 12; new ControlTextCentered(parent, y, TextFormatting.ITALIC + tree.getGenome().getPrimary().getPlantType().toString()) .setColor(parent.getColor()); return y; } }
y += th; new ControlText(contents, new Area(0, y, w2, th), syst.getChromosomeShortName(EnumTreeChromosome.SAPPINESS) + " : ", TextJustification.MIDDLE_RIGHT); new ControlText(contents, new Area(w2, y, w3, th), genome.getSappiness() + "x", TextJustification.MIDDLE_LEFT); y += th; new ControlText(contents, new Area(0, y, w2, th), syst.getChromosomeShortName(EnumTreeChromosome.MATURATION) + " : ", TextJustification.MIDDLE_RIGHT);