You are on page 1of 3

package application;

public class Test {

public Test()
{

}
public boolean existe(int x,int y)
{
return b[y][x]!=0;
}
int [][] b= {{1,0,1,0,1,0,1,0,1,0},{0,1,0,1,0,1,0,1,0,1},
{1,0,1,0,1,0,1,0,1,0},{0,1,0,1,0,1,0,1,0,1},{0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0},{2,0,2,0,2,0,2,0,2,0},{0,2,0,2,0,2,0,2,0,2},
{2,0,2,0,2,0,2,0,2,0},{0,2,0,2,0,2,0,2,0,2}};
int getPiece(int x,int y)
{
return b[x][y];
}
public int validMove(int x,int y,int x1,int y1)
{

if((x>9)||(y>9)||(x1>9)||(y1>9))
{
return 0;
}
if(b[y1][x1]!=0)
{
return 0;
}
if(b[y][x]==1)
{

if((y1==y+1)&&((x1==x+1)||(x==x1+1)))
{

b[y][x]=0;
b[y1][x1]=1;
if(y1==9)
{
b[y1][x1]=3;
}
return 1;
}
else if((y1==y+2)&&((x1==x+2)||(x==x1+2)))
{

if(b[y+1][(x+x1)/2]%2==0)
{

b[y+1][(x+x1)/2]=0;
b[y][x]=0;
b[y1][x1]=1;
if(y1==9)
{
b[y1][x1]=3;
}
return 2;
}
}

}
if(b[y][x]==2)
{
if((y==y1+1)&&((x1==x+1)||(x==x1+1)))
{
b[y][x]=0;
b[y1][x1]=2;
if(y1==0)
{
b[y1][x1]=4;
}
return 1;
}
if((y1==y-2)&&((x1==x+2)||(x==x1+2)))
{

if(b[y-1][(x+x1)/2]%2==1)
{

b[y-1][(x+x1)/2]=0;
b[y][x]=0;
b[y1][x1]=2;
if(y1==0)
{
b[y1][x1]=4;
}
return 2;
}
}

}
if(b[y][x]==3)
{
if(((y==y1+1)||(y1==y+1))&&((x1==x+1)||(x==x1+1)))
{
b[y][x]=0;
b[y1][x1]=3;

return 1;
}
if(((y==y1+2)||(y1==y+2))&&((x1==x+2)||(x==x1+2)))
{
if(b[(y+y1)/2][(x+x1)/2]%2==0)
{
b[y][x]=0;
b[(y+y1)/2][(x+x1)/2]=0;
b[y1][x1]=3;
return 2;

}
}
}
if(b[y][x]==4)
{
if(((y==y1+1)||(y1==y+1))&&((x1==x+1)||(x==x1+1)))
{
b[y][x]=0;
b[y1][x1]=4;

return 1;
}
if(((y==y1+2)||(y1==y+2))&&((x1==x+2)||(x==x1+2)))
{
if(b[(y+y1)/2][(x+x1)/2]%2==1)
{
b[y][x]=0;
b[(y+y1)/2][(x+x1)/2]=0;
b[y1][x1]=4;
return 2;

}
}

}
return 0;
}
public void affiche()
{
for(int i=0;i<=9;i++)
{
for(int j=0;j<=9;j++)
{
if(j==9)
{
System.out.println(b[i][j]+" ");
}
else
{
System.out.print(b[i][j]+" ");
}
}
}
System.out.println();
}

You might also like