package com.strategy.havannah;

/**
 * Access to primitive boards of different sizes.
 * 
 * @author Ralph Dürig
 */
public class TestBoardProvider {

	public static int[][] BOARD_10 = new int[][] {//
	/*    */{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } };

	public static int[][] BOARD_7 = new int[][] {//
	/*    */{ 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0 } };

	public static int[][] BOARD_6 = new int[][] {//
	/*    */{ 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0 } };

	public static int[][] BOARD_5 = new int[][] {//
	/*    */{ 0, 0, 0, 0, 0, 1, 1, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 1, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 0, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 1, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 1, 1, 0, 0, 0, 0, 0 } };

	public static int[][] BOARD_4 = new int[][] {//
	/*    */{ 0, 0, 0, 0, 1, 1, 1 },//
			{ 0, 0, 0, 0, 0, 1, 1 },//
			{ 0, 0, 0, 0, 0, 0, 1 },//
			{ 0, 0, 0, 0, 0, 0, 0 },//
			{ 1, 0, 0, 0, 0, 0, 0 },//
			{ 1, 1, 0, 0, 0, 0, 0 },//
			{ 1, 1, 1, 0, 0, 0, 0 } };

	public static int[][] BOARD_3 = new int[][] {//
	/*    */{ 0, 2, 0, 1, 1 },//
			{ 2, 0, 0, 2, 1 },//
			{ 0, 2, 2, 2, 2 },//
			{ 1, 2, 0, 0, 0 },//
			{ 1, 1, 0, 2, 0 } };

	public static int[][] BOARD_2 = new int[][] {//
	/*    */{ 0, 0, 1 },//
			{ 0, 0, 0 },//
			{ 1, 0, 0 } };

	public static int[][] getBoard(int size) {
		switch (size) {
		case 2:
			return BOARD_2;
		case 3:
			return BOARD_3;
		case 5:
			return BOARD_5;
		case 6:
			return BOARD_6;
		case 7:
			return BOARD_7;
		case 10:
			return BOARD_10;
		case 4:
		default:
			return BOARD_4;
		}
	}

}
