/* * This file is part of SpoutcraftPlugin. * * Copyright (c) 2011 SpoutcraftDev <http://spoutcraft.org//> * SpoutcraftPlugin is licensed under the GNU Lesser General Public License. * * SpoutcraftPlugin is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * SpoutcraftPlugin is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ package org.getspout.spoutapi.material.block; import org.bukkit.plugin.Plugin; import org.getspout.spoutapi.block.design.GenericCubeBlockDesign; public abstract class GenericCubeCustomBlock extends GenericCuboidCustomBlock { /** * Creates a new cube block material * @param plugin making the block * @param name of the block * @param isOpaque true if you want the block solid * @param design to use for the block * @param customMetaData of the block */ public GenericCubeCustomBlock(Plugin plugin, String name, boolean isOpaque, GenericCubeBlockDesign design) { super(plugin, name, isOpaque, design); } /** * Creates a new cube block material * @param plugin making the block * @param name of the block * @param isOpaque true if you want the block solid * @param design to use for the block * @param customMetaData of the block * @param rotate will the block rotate to face the player when placed */ public GenericCubeCustomBlock(Plugin plugin, String name, boolean isOpaque, GenericCubeBlockDesign design, boolean rotate) { super(plugin, name, isOpaque, design, rotate); } /** * Creates a new opaque/solid cube block material * @param plugin making the block * @param name of the block * @param design to use for the block */ public GenericCubeCustomBlock(Plugin plugin, String name, GenericCubeBlockDesign design) { super(plugin, name); this.setBlockDesign(design); } /** * Creates a new opaque/solid cube block material * @param plugin making the block * @param name of the block * @param design to use for the block * @param rotate will the block rotate to face the player when placed */ public GenericCubeCustomBlock(Plugin plugin, String name, GenericCubeBlockDesign design, boolean rotate) { super(plugin, name); this.setBlockDesign(design); this.setRotate(rotate); } /** * Creates a new basic opaque/solid cube block material * @param plugin making the block * @param name of the block * @param texture url to use for the block - must be a square PNG * @param textureSize width and height of the texture in pixels */ public GenericCubeCustomBlock(Plugin plugin, String name, String texture, int textureSize) { super(plugin, name); this.setBlockDesign(new GenericCubeBlockDesign(plugin, texture, textureSize)); } /** * Creates a new basic opaque/solid cube block material * @param plugin making the block * @param name of the block * @param texture url to use for the block - must be a square PNG * @param textureSize width and height of the texture in pixels * @param rotate will the block rotate to face the player when placed */ public GenericCubeCustomBlock(Plugin plugin, String name, String texture, int textureSize, boolean rotate) { super(plugin, name); this.setBlockDesign(new GenericCubeBlockDesign(plugin, texture, textureSize)); this.setRotate(rotate); } /** * Creates a new cube block material with underlying block ID. * @param plugin making the block * @param name of the block * @param blockID of the underlying vanilla block * @param design to use for the block */ public GenericCubeCustomBlock(Plugin plugin, String name, int blockId, GenericCubeBlockDesign design) { super(plugin, name, blockId, design); } /** * Creates a new cube block material with underlying block ID. * @param plugin making the block * @param name of the block * @param blockID of the underlying vanilla block * @param design to use for the block * @param rotate will the block rotate to face the player when placed */ public GenericCubeCustomBlock(Plugin plugin, String name, int blockId, GenericCubeBlockDesign design, boolean rotate) { super(plugin, name, blockId, design, rotate); } /** * Creates a new cube block material with underlying block ID. * @param plugin making the block * @param name of the block * @param blockID of the underlying vanilla block * @param metadata of the underlying vanilla block * @param design to use for the block */ public GenericCubeCustomBlock(Plugin plugin, String name, int blockId, int metadata, GenericCubeBlockDesign design) { super(plugin, name, blockId, metadata, design); } /** * Creates a new cube block material with underlying block ID. * @param plugin making the block * @param name of the block * @param blockID of the underlying vanilla block * @param metadata of the underlying vanilla block * @param design to use for the block * @param rotate will the block rotate to face the player when placed */ public GenericCubeCustomBlock(Plugin plugin, String name, int blockId, int metadata, GenericCubeBlockDesign design, boolean rotate) { super(plugin, name, blockId, metadata, design, rotate); } /** * Creates a new basic opaque/solid cube block material with underlying block ID. * @param plugin making the block * @param name of the block * @param blockID of the underlying vanilla block * @param texture url to use for the block - must be a square PNG * @param textureSize width and height of the texture in pixels */ public GenericCubeCustomBlock(Plugin plugin, String name, int blockId, String texture, int textureSize) { super(plugin, name, blockId); this.setBlockDesign(new GenericCubeBlockDesign(plugin, texture, textureSize)); } /** * Creates a new basic opaque/solid cube block material with underlying block ID. * @param plugin making the block * @param name of the block * @param blockID of the underlying vanilla block * @param texture url to use for the block - must be a square PNG * @param textureSize width and height of the texture in pixels * @param rotate will the block rotate to face the player when placed */ public GenericCubeCustomBlock(Plugin plugin, String name, int blockId, String texture, int textureSize, boolean rotate) { super(plugin, name, blockId, rotate); this.setBlockDesign(new GenericCubeBlockDesign(plugin, texture, textureSize)); } /** * Creates a new basic opaque/solid cube block material with underlying block ID + metadata. * @param plugin making the block * @param name of the block * @param blockID of the underlying vanilla block * @param metadata of the underlying vanilla block * @param texture url to use for the block - must be a square PNG * @param textureSize width and height of the texture in pixels */ public GenericCubeCustomBlock(Plugin plugin, String name, int blockId, int metadata, String texture, int textureSize) { super(plugin, name, blockId, metadata); this.setBlockDesign(new GenericCubeBlockDesign(plugin, texture, textureSize)); } /** * Creates a new basic opaque/solid cube block material with underlying block ID + metadata. * @param plugin making the block * @param name of the block * @param blockID of the underlying vanilla block * @param metadata of the underlying vanilla block * @param texture url to use for the block - must be a square PNG * @param textureSize width and height of the texture in pixels * @param rotate will the block rotate to face the player when placed */ public GenericCubeCustomBlock(Plugin plugin, String name, int blockId, int metadata, String texture, int textureSize, boolean rotate) { super(plugin, name, blockId, metadata, rotate); this.setBlockDesign(new GenericCubeBlockDesign(plugin, texture, textureSize)); } }