Exemplo n.º 1
0
        /**
          *  <summary> Méthode qui va test sur le tableau de l'espace si la piece peut faire la rotation dans le sens indiquer .
          *  </summary>
        *    <param name=sens>parametre qui correspont au sens ou l'on veut faire la rotation (1 droite, 2 gauche )  </param>
         * <returns>Renvoie le sens ou on a test si la rotation est possible autrement 0 si on peut pas faire la rotation</returns>
         * * */
        public int testRotation(int sens)
        {
            if( pieceEnCour.getCentre().Y >largeur -4)
                  return 0;
                if (pieceEnCour.Type == 2 && pieceEnCour.getCentre().Y < 0)
                    return 0;
                if (pieceEnCour.getCentre().Y < -1)
                    return 0;

            piece tempPiece =new piece(pieceEnCour.getCentre().X,pieceEnCour.getCentre().Y,pieceEnCour.Type);
            @case[][] temp2 = pieceEnCour.getTableau();

            tempPiece.rotationPiece(sens);

            @case[][] temp = tempPiece.getTableau();
            for (int i = 0; i < 4; i++)
            {
                for (int j = 0; j < 4; j++)
                {

                        if (temp[i][j].Pleine == 1 && temp2[i][j].Pleine != 1 && tableau[i + pieceEnCour.getCentre().X][j + pieceEnCour.getCentre().Y].Pleine == 1)
                        {
                            return 0;
                        }
                }
            }
            return sens;
        }