// Copyright 2001-2004 - Francois Leysour de Rohello - www.iechecs.com
// tableau des finales	i=position, i+1=solution
var g_finale = new Array (
"8/8/8/4r3/8/1D2R3/8/8/ w",		// Roi + Dame / Roi
"1.Db5 Rd6 2.Re4 Re6 3.Dc6 Rf7 4.Rf5 Re7 5.Dd5 Rf8 6.Dd7 Rg8 7.Rg6 Rf8 8.Df7",
"8/8/8/4r3/8/1T2R3/8/8/ w",		// Roi + Tour
"1. Td3 Rf5 2. Td5 Rf6 3. Rf4 Re6 4. Td4 Rf6 5. Te4 Rg6 6. Te6 Rf7 7. Rf5 Rg7 8. Te7 Rf8 \
9. Rf6 Rg8 10. Te8 Rh7 11. Tf8 Rh6 12. Th8",
"8/8/8/4r3/1F6/1F2R3/8/8/ w",	// Roi + 2 fous
"1. Fc5 Rf5 2. Fd6 Rg5 3. Re4 Rf6 4. Rf4 Rg6 5. Fe7 Rh5 6. Ff7 Rh6 7. Ff8 Rh7 8. Rf5 Rh8 \
9. Rf6 Rh7 10. Fe6 Rh8 11. Rf7 Rh7 12. Ff5 Rh8 13. Fg7",
"8/8/8/4r3/1C6/1F2R3/8/8/ w",	// Roi + F + C
"1. Cd3 Rf5 2. Cf4 Re5 3. Fe6 Rf6 4. Re4 Rg7 5. Re5 Rh7 6. Rf6 Rh6 7. Ff7 Rh7 8. Cg6 Rh6 9. Fg8 Rh5 10. Ce5 Rh4 \
11. Fd5 Rg3 12. Cd3 Rg4 13. Rg6 Rh4 14. Ff3 Rg3 15. Fe2 Rh4 16. Rf5 Rg3 17. Re4 Rh3 18. Rf4 Rh4 19. Ce1 Rh3 20. Fg4 Rh2 \
21. Rf3 Rg1 22. Fh3 Rh2 23. Rg4 Rg1 24. Rg3 Rh1 25. Fg2 Rg1 26. Cf3",
"8/8/8/4r3/1C6/1C2R3/8/8/ w",   // Roi + 2 cavaliers
"",
"8/8/8/3tr3/8/1D2R3/8/8/ w",   // dame / tour
"1. Dc3 Rd6 2. Re4 Tc5 3. Df6 Rd7 4. Rd4 Tc6 5. Df7 Rd6 6. De8 Rc7 7. Rd5 Td6 8. Rc5 Td7  9. De5 Rd8 10. Db8 Re7 \
11. Rc6 Td8 12. Dc7 Re8 13. Dg7 Td1 14. Dg4 Td8 15. Rc7 Td2 16. De6 Rf8 17. Dh6 Re7 18. Dxd2 Rf6  19. Df4 Rg6 \
20. Rd6 Rh5 21. Re6 Rg6 22. Dg4 Rh6 23. Rf6 Rh7 24. Dg7",
"6r1/5T2/6R1/8/8/8/8/6f1/ w",   // tour / fou
"1. Tf1 Fh2 2. Tf2 Fg3 3. Tg2 Fd6 4. Td2 Fe7 5. Ta2 Rf8 6. Ta8+ Fd8 7. Txd8+",
"8/8/8/1r1R4/8/2T5/3c4/8/ w",   // tour / cavalier
"1. Td3 Cf1 2. Re5 Rc4 3. Re4 Ch2 4. Td1 Cg4 5. Tf1 Ch6 6. Tf4 Cg8 7. Tf7 Rc5 8. Re5 Rc4 9. Tg7 Ch6 10. Rf6",
"3r4/4t3/3R4/3F4/8/8/8/5T2/ w",
"1. Tf8+ Te8 2. Tf7 Te2 3. Tg7 Te1 4. Tb7 Tc1 5. Fb3 Tc3 6. Fe6 Td3+ 7. Fd5 Tc3 8. Td7+ Rc8 9. Tf7 Rb8 10. Tb7+ Rc8 11. Tb4 Rd8 12. Fc4 Rc8 13. Fe6+ Rd8 14. Tb8+ Tc8 15. Txc8+"
)

// tableau des problèmes
var g_nb_probleme = 5
var g_probleme = new Array (
"100 Ex. N°65 - Blancs Mat en 3",
"1t3C1r/6p1/5c1p/p7/1d2D1P1/5FP1/5P2/6R1 w",
"1. Dh7!! Cxh7 2. Cg6+ Rg8 3 Fd5#",
"100 Ex. N°50 - Noirs Mat en 2",
"2T5/6p1/2F1r3/1P3p2/4f2p/t6P/P1P2TPR/4t3 b",
"1. ... Txh3!! 2. gxh3 Txh1#",
"1.e4 puis 5 CxT et MAT !!",
"tcfdrfct/pppppppp/8/8/4P3/8/PPPP1PPP/TCFDRFCT w",
"1. ... Cf6 2. f3 Cxe4 3. De2 Cg3 4. Dxe7 Dxe7 5. Rf2 Cxh1#",
"Poser 8 dames non en prise",
"8/8/8/DDDDDDDD/8/8/8/8",
"3D4/D7/4D3/7D/1D6/6D1/2D5/5D2",
"Remplissage cavalier",
"8/8/8/8/4C3/8/8/8 w",
"1.Cd2 Cb1 2.Ca3 Cb5 3.Ca7 Cc8 4.Cb6 Ca8 5.Cc7 Ca6 6.Cb8 Cd7 7.Cf8 Ch7 8.Cg5 Ch3 9.Cg1 Ce2 10.Cc1 Ca2 11.Cc3 Ca4 12.Cb2 Cd1 13.Cf2 Ch1 14.Cg3 Cf1 15.Ch2 Cf3 16.Ce1 Cg2 17.Ch4 Cg6 18.Ch8 Cf7 19.Cd8 Cb7 20.Ca5 Cb3 21.Ca1 Cc2 22.Cb4 Cc6 23.Cd4 Ce6 24.Cc5 Cd3 25.Ce5 Cc4 26.Cd6 Ce8 27.Cg7 Ch5 28.Cf4 Cd5 29.Ce3 Cf5 30.Ce7 Cg8 31.Cf6 Cg4 32.Ch6"
)

// initialisation au chargement de la page
function init_probleme()
{
	var listBox = getObj("probleme");
	var ind = 0;
	for (i=0; i< g_nb_probleme * 3; i+=3, ++ind)
		listBox.options[ind] = new Option(g_probleme[i]);
}

//---- charge le probleme sur l'echiquier
function set_probleme(index)
{
	g_trace = false
	g_demo  = false

	// lit la position du probleme en francais
	lire_position_fen(g_probleme[index + 1])
	if (index == 12)	// probleme du remplissage cavalier
		g_trace = true; // un point vert marque le passage du cavalier sur la case
	else if (index == 9)
		g_demo = true
}

function set_solution(index){
lire_position_fen(g_probleme[index + 1])
lire_fen_pgn(g_probleme[index + 2],false)
}
