001 package rules; 002 import core.Color; 003 import core.Piece; 004 005 /** 006 * Queen piece. 007 */ 008 public class Queen extends StraightPiece { 009 /** 010 * @see Piece 011 */ 012 protected String getName(){ return "Q";} 013 /** 014 * @see Piece 015 */ 016 public Queen(Color color, int lastMove){ 017 super(color, lastMove, true, true); 018 } 019 /** 020 * @see Piece 021 */ 022 protected StraightPiece constructor(Color color, int lastMove){ 023 return new Queen(color, lastMove); 024 } 025 /** 026 * @see Piece 027 */ 028 public String pieceString() 029 { 030 return "queen"; 031 } 032 public int hashCode() { 033 return 2*1 + (color == Color.WHITE ? 0 : 1); 034 } 035 }