001 package org.bukkit.material; 002 003 import org.bukkit.Material; 004 005 /** 006 * Represents a command block 007 */ 008 public class Command extends MaterialData implements Redstone { 009 public Command() { 010 super(Material.COMMAND); 011 } 012 013 /** 014 * 015 * @deprecated Magic value 016 */ 017 @Deprecated 018 public Command(final int type) { 019 super(type); 020 } 021 022 public Command(final Material type) { 023 super(type); 024 } 025 026 /** 027 * 028 * @deprecated Magic value 029 */ 030 @Deprecated 031 public Command(final int type, final byte data) { 032 super(type, data); 033 } 034 035 /** 036 * 037 * @deprecated Magic value 038 */ 039 @Deprecated 040 public Command(final Material type, final byte data) { 041 super(type, data); 042 } 043 044 /** 045 * Gets the current state of this Material, indicating if it's powered or 046 * unpowered 047 * 048 * @return true if powered, otherwise false 049 */ 050 public boolean isPowered() { 051 return (getData() & 1) != 0; 052 } 053 054 /** 055 * Sets the current state of this Material 056 * 057 * @param bool 058 * whether or not the command block is powered 059 */ 060 public void setPowered(boolean bool) { 061 setData((byte) (bool ? (getData() | 1) : (getData() & -2))); 062 } 063 064 @Override 065 public String toString() { 066 return super.toString() + " " + (isPowered() ? "" : "NOT ") + "POWERED"; 067 } 068 069 @Override 070 public Command clone() { 071 return (Command) super.clone(); 072 } 073 }