public TreeLeafState createRandomTreeLeafState(Point3d leafAttachPoint) {
PercentState efficiency = new PercentState(PercentHelper.getDecimalValue(Randomizer.randomBetween(90, 100)));
int age = Randomizer.randomBetween(0, 100);
BigDecimal energy = new BigDecimal(Randomizer.randomBetween(0, 100));
BigDecimal freeEnergy = new BigDecimal(Randomizer.randomBetween(0, 50));
TreeLeaf3DStateFactory leaf3DStateFactory = new TreeLeaf3DStateFactory();
TreeLeaf3DState leaf3dState = leaf3DStateFactory.createRandomTreeLeaf3DState(leafAttachPoint);
return new TreeLeafState(LEAF_COUNT++, age, energy, freeEnergy, efficiency, leaf3dState);
}