/** * Busca explosiones en todo el tablero y si encuentra una propaga la explosi�n, baja los * caramelos y hace una llamada recursiva */ public Tablero explosionesEnCadena(Tablero t) { for (int x1 = 0; x1 < t.getAlto(); x1++) { for (int y1 = 0; y1 < t.getAncho(); y1++) { Coordenada c = new Coordenada(x1, y1); if (this.generoExplosion(t, c)) { t.llenarHuecos(); t = this.explosionesEnCadena(t); } } } return t; }
/** * @param t * @param c * @param vecino1 * @param vecino2 * @return true si el color del caramelo en c es el mismo que el de sus vecinos */ public boolean explosionHacia(Tablero t, Coordenada c, Coordenada vecino1, Coordenada vecino2) { String colorOriginal = t.colorCarameloEn(c); String colorVecino1 = t.colorCarameloEn(vecino1); String colorVecino2 = t.colorCarameloEn(vecino2); return (colorOriginal.equals(colorVecino1)) && (colorOriginal.equals(colorVecino2)); }