@Override
	public int fruit() {
		if (!grown()) {
			return 0;
		}

		final FarmingDefinition definition = definition();

		final BushType type = type();
		if (type == BushType.BARBERRY) {
			return definition.containsModel(BARBERRY_FRUIT_MODEL) ? 1 : 0;
		}

		for (int i = 0; i < MODELS_FRUIT.length; i++) {
			if (definition.containsModel(MODELS_FRUIT[i])) {
				return i + 1;
			}
		}

		return 0;
	}