package org.bukkit.material; import org.bukkit.Material; import org.bukkit.TreeSpecies; import org.bukkit.block.BlockFace; /** * Represents the different types of Trees. */ public class Tree extends MaterialData { public Tree() { super(Material.LOG); } public Tree(TreeSpecies species) { this(); setSpecies(species); } public Tree(TreeSpecies species, BlockFace dir) { this(); setSpecies(species); setDirection(dir); } /** * @param type the raw type id * @deprecated Magic value */ @Deprecated public Tree(final int type) { super(type); } public Tree(final Material type) { super(type); } /** * @param type the raw type id * @param data the raw data value * @deprecated Magic value */ @Deprecated public Tree(final int type, final byte data) { super(type, data); } /** * @param type the type * @param data the raw data value * @deprecated Magic value */ @Deprecated public Tree(final Material type, final byte data) { super(type, data); } /** * Gets the current species of this tree * * @return TreeSpecies of this tree */ public TreeSpecies getSpecies() { return TreeSpecies.getByData((byte) (getData() & 0x3)); } /** * Sets the species of this tree * * @param species New species of this tree */ public void setSpecies(TreeSpecies species) { setData((byte) ((getData() & 0xC) | species.getData())); } /** * Get direction of the log * * @return one of: *