@Override public float getSize() { return ((IAlleleFloat) getActiveAllele(EnumButterflyChromosome.SIZE)).getValue(); }
@Override public float getHeight() { return ((IAlleleFloat) getActiveAllele(EnumTreeChromosome.HEIGHT)).getValue(); }
@Override public float getYield() { return ((IAlleleFloat) getActiveAllele(EnumTreeChromosome.YIELD)).getValue(); }
@Override public float getSappiness() { return ((IAlleleFloat) getActiveAllele(EnumTreeChromosome.SAPPINESS)).getValue(); }
@Override public float getSpeed() { return ((IAlleleFloat) getActiveAllele(EnumBeeChromosome.SPEED)).getValue(); }
@Override public float getFertility() { return ((IAlleleFloat) getActiveAllele(EnumTreeChromosome.FERTILITY)).getValue(); }
@Override public float getSpeed() { return ((IAlleleFloat) getActiveAllele(EnumButterflyChromosome.SPEED)).getValue(); }
@Override public float getSappiness() { return ((IAlleleFloat) getActiveAllele(EnumFlowerChromosome.SAPPINESS)).getValue(); }
@Override public IBakedModel handleItemState(IBakedModel originalModel, ItemStack stack, @Nullable World world, @Nullable EntityLivingBase entity) { IAlleleButterflySpecies species = Genome.getAllele(stack, EnumButterflyChromosome.SPECIES, true, IAlleleButterflySpecies.class); IAlleleFloat size = Genome.getAllele(stack, EnumButterflyChromosome.SIZE, true, IAlleleFloat.class); Preconditions.checkNotNull(species); Preconditions.checkNotNull(size); IBakedModel bakedModel = cache.getIfPresent(species); if (bakedModel == null) { bakedModel = bakeModel(species, size.getValue()); cache.put(species, bakedModel); } return bakedModel; } }
@Override public int compare(final IAllele o1, final IAllele o2) { if (o1 == null || o2 == null) { throw new NullPointerException("Allele is null!"); } if (o1 instanceof IAlleleFloat && o2 instanceof IAlleleFloat) { return Float.compare(((IAlleleFloat) o1).getValue(), ((IAlleleFloat) o2).getValue()); } if (o1.getClass().equals(IAlleleInteger.class) && o2.getClass().equals(IAlleleInteger.class)) { return Integer.compare(((IAlleleInteger) o1).getValue(), ((IAlleleInteger) o2).getValue()); } if (o1.getAlleleName() != null && o2.getAlleleName() != null) { return o1.getAlleleName().compareTo(o2.getAlleleName()); } return o1.getUID().compareTo(o2.getUID()); } }
return ((IAlleleBoolean) allele).getValue(); } else if (allele instanceof IAlleleFloat) { return ((IAlleleFloat) allele).getValue(); } else if (allele instanceof IAlleleFlowers) { return ((IAlleleFlowers) allele).getProvider().getFlowerType();