001    package org.bukkit.material;
002    
003    import java.util.ArrayList;
004    import java.util.List;
005    
006    import org.bukkit.Material;
007    
008    /**
009     * Represents the different types of smooth bricks.
010     */
011    public class SmoothBrick extends TexturedMaterial {
012    
013        private static final List<Material> textures = new ArrayList<Material>();
014        static {
015            textures.add(Material.STONE);
016            textures.add(Material.MOSSY_COBBLESTONE);
017            textures.add(Material.COBBLESTONE);
018            textures.add(Material.SMOOTH_BRICK);
019        }
020    
021        public SmoothBrick() {
022            super(Material.SMOOTH_BRICK);
023        }
024    
025        /**
026         *
027         * @deprecated Magic value
028         */
029        @Deprecated
030        public SmoothBrick(final int type) {
031            super(type);
032        }
033    
034        public SmoothBrick(final Material type) {
035            super((textures.contains(type)) ? Material.SMOOTH_BRICK : type);
036            if (textures.contains(type)) {
037                setMaterial(type);
038            }
039        }
040    
041        /**
042         *
043         * @deprecated Magic value
044         */
045        @Deprecated
046        public SmoothBrick(final int type, final byte data) {
047            super(type, data);
048        }
049    
050        /**
051         *
052         * @deprecated Magic value
053         */
054        @Deprecated
055        public SmoothBrick(final Material type, final byte data) {
056            super(type, data);
057        }
058    
059        @Override
060        public List<Material> getTextures() {
061            return textures;
062        }
063    
064        @Override
065        public SmoothBrick clone() {
066            return (SmoothBrick) super.clone();
067        }
068    }