// the numbers of each tile in the set
function letters(id, points) {
	this.id = id;
	this.points = points;
}

var Letters = new Array(100);
Letters[0] = new letters('a1', 1);
Letters[1] = new letters('a2', 1);
Letters[2] = new letters('a3', 1);
Letters[3] = new letters('a4', 1);
Letters[4] = new letters('a5', 1);
Letters[5] = new letters('a6', 1);
Letters[6] = new letters('a7', 1);
Letters[7] = new letters('a8', 1);
Letters[8] = new letters('a9', 1);
Letters[9] = new letters('b1', 3);
Letters[10] = new letters('b2', 3);
Letters[11] = new letters('c1', 3);
Letters[12] = new letters('c2', 3);
Letters[13] = new letters('d1', 2);
Letters[14] = new letters('d2', 2);
Letters[15] = new letters('d3', 2);
Letters[16] = new letters('d4', 2);
Letters[17] = new letters('e1', 1);
Letters[18] = new letters('e2', 1);
Letters[19] = new letters('e3', 1);
Letters[20] = new letters('e4', 1);
Letters[21] = new letters('e5', 1);
Letters[22] = new letters('e6', 1);
Letters[23] = new letters('e7', 1);
Letters[24] = new letters('e8', 1);
Letters[25] = new letters('e9', 1);
Letters[26] = new letters('e10', 1);
Letters[27] = new letters('e11', 1);
Letters[28] = new letters('e12', 1);
Letters[29] = new letters('f1', 4);
Letters[30] = new letters('f2', 4);
Letters[31] = new letters('g1', 2);
Letters[32] = new letters('g2', 2);
Letters[33] = new letters('g3', 2);
Letters[34] = new letters('h1', 4);
Letters[35] = new letters('h2', 4);
Letters[36] = new letters('i1', 1);
Letters[37] = new letters('i2', 1);
Letters[38] = new letters('i3', 1);
Letters[39] = new letters('i4', 3);
Letters[40] = new letters('i5', 1);
Letters[41] = new letters('i6', 1);
Letters[42] = new letters('i7', 1);
Letters[43] = new letters('i8', 1);
Letters[44] = new letters('i9', 1);
Letters[45] = new letters('j1', 8);
Letters[46] = new letters('k1', 5);
Letters[47] = new letters('l1', 1);
Letters[48] = new letters('l2', 1);
Letters[49] = new letters('l3', 1);
Letters[50] = new letters('l4', 1);
Letters[51] = new letters('m1', 3);
Letters[52] = new letters('m2', 3);
Letters[53] = new letters('n1', 1);
Letters[54] = new letters('n2', 1);
Letters[55] = new letters('n3', 1);
Letters[56] = new letters('n4', 1);
Letters[57] = new letters('n5', 1);
Letters[58] = new letters('n6', 1);
Letters[59] = new letters('o1', 1);
Letters[60] = new letters('o2', 1);
Letters[61] = new letters('o3', 3);
Letters[62] = new letters('o4', 3);
Letters[63] = new letters('o5', 1);
Letters[64] = new letters('o6', 1);
Letters[65] = new letters('o7', 1);
Letters[66] = new letters('o8', 1);
Letters[67] = new letters('p1', 3);
Letters[68] = new letters('p2', 3);
Letters[69] = new letters('q1', 10);
Letters[70] = new letters('r1', 1);
Letters[71] = new letters('r2', 1);
Letters[72] = new letters('r3', 1);
Letters[73] = new letters('r4', 1);
Letters[74] = new letters('r5', 1);
Letters[75] = new letters('r6', 1);
Letters[76] = new letters('s1', 1);
Letters[77] = new letters('s2', 1);
Letters[78] = new letters('s3', 1);
Letters[79] = new letters('s4', 1);
Letters[80] = new letters('t1', 1);
Letters[81] = new letters('t2', 1);
Letters[82] = new letters('t3', 1);
Letters[83] = new letters('t4', 1);
Letters[84] = new letters('t5', 1);
Letters[85] = new letters('t6', 1);
Letters[86] = new letters('u1', 1);
Letters[87] = new letters('u2', 1);
Letters[88] = new letters('u3', 1);
Letters[89] = new letters('u4', 1);
Letters[90] = new letters('v1', 4);
Letters[91] = new letters('v2', 4);
Letters[92] = new letters('w1', 4);
Letters[93] = new letters('w2', 4);
Letters[94] = new letters('x1', 8);
Letters[95] = new letters('y1', 4);
Letters[96] = new letters('y2', 4);
Letters[97] = new letters('z1', 10);
Letters[98] = new letters('_1', 0); // blank tile
Letters[99] = new letters('_2', 0); // blank tile

// set up us the board
function boardstart() {
	this.filler = false;
	this.newtile = false;
	this.points = false;
	this.tw = false;
	this.tl = false;
	this.dl = false;
	this.dw = false;
}

var board = new Array(225);
for (i = 0; i < board.length; i++) {
	board[i] = new boardstart();
}

// keep track of full slots in tilesit
var tilesitcontents = new Array(7);
for (i = 0; i < 7; i++) {
	tilesitcontents[i] = false;
}

var playedthisturn = new Array();

// triple word scores
board[0].tw = true;
board[7].tw = true;
board[14].tw = true;
board[105].tw = true;
board[119].tw = true;
board[210].tw = true;
board[217].tw = true;
board[224].tw = true;

// triple letter scores
board[20].tl = true;
board[24].tl = true;
board[76].tl = true;
board[80].tl = true;
board[84].tl = true;
board[88].tl = true;
board[136].tl = true;
board[140].tl = true;
board[144].tl = true;
board[148].tl = true;
board[200].tl = true;
board[204].tl = true;

// double word scores
board[16].dw = true;
board[28].dw = true;
board[32].dw = true;
board[42].dw = true;
board[48].dw = true;
board[56].dw = true;
board[64].dw = true;
board[70].dw = true;
board[112].dw = true;
board[154].dw = true;
board[160].dw = true;
board[168].dw = true;
board[176].dw = true;
board[182].dw = true;
board[192].dw = true;
board[196].dw = true;
board[208].dw = true;

// double letter scores
board[3].dl = true;
board[11].dl = true;
board[36].dl = true;
board[38].dl = true;
board[45].dl = true;
board[52].dl = true;
board[59].dl = true;
board[92].dl = true;
board[96].dl = true;
board[98].dl = true;
board[102].dl = true;
board[108].dl = true;
board[116].dl = true;
board[122].dl = true;
board[126].dl = true;
board[128].dl = true;
board[132].dl = true;
board[165].dl = true;
board[172].dl = true;
board[179].dl = true;
board[186].dl = true;
board[188].dl = true;
board[213].dl = true;
board[221].dl = true;

// keep track of which word bonuses are used up
var usedwbonus = new Array();

// what do you want the blanks to be?
var blank = new Array(2);

// words spelt in each turn
var words = new Array();

var topzindex = 5;
var turnnum = 0;
var totalscore = 0;
var tilesitcount = 0;
