Package flyingdiamond.model

Examples of flyingdiamond.model.Article


  /* (non-Javadoc)
   * @see flyingdiamond.model.chainreaction.ActivationChainReaction#canActivate(int, int, flyingdiamond.model.ArticleMatrix)
   */
  public boolean canActivate(int row, int col, ArticleMatrix matrix) {
    Article activatedArtilce = matrix.getArticle(row, col);
    if(matrix.isValidPosition(row+1, col)&&activatedArtilce.equals(matrix.getArticle(row+1,col))){//top position hit
      return true;
    }else if(matrix.isValidPosition(row, col+1)&&activatedArtilce.equals(matrix.getArticle(row,col+1))){//right position hit
      return true;
    }else if(matrix.isValidPosition(row-1, col)&&activatedArtilce.equals(matrix.getArticle(row-1,col))){//bottom position hit
      return true;
    }else if(matrix.isValidPosition(row, col-1)&&activatedArtilce.equals(matrix.getArticle(row,col-1))){//left position hit
      return true;
    }else{
      return false;
    }       
  }
View Full Code Here


  /**
   * Test method for {@link flyingdiamond.model.chainreaction.ActivateSameDiamondChainReaction#react(int, int, flyingdiamond.model.ArticleMatrix)}.
   */
  @Test
  public void testReact() {
    Article blueDia = ArticleFactory.getInstance().createArticle(ArticleEnum.BLUE_DIAMOND);
    Article greenDia = ArticleFactory.getInstance().createArticle(ArticleEnum.GREEN_DIAMOND);
    //Set pattern to different positions,check whether the react method work well.
    for (int i = 0; i < ArticleMatrix.HEIGHT; i++) {
      for (int j = 0; j < ArticleMatrix.WIDTH; j++) {
        ArticleMatrix matrix = generateTestMatrix(i,j);
        int nullCells = reaction.react(i, j, matrix);
        int redDiamonds = 0;
        for (int row = 0; row < ArticleMatrix.HEIGHT; row++) {
          for (int col = 0; col < ArticleMatrix.WIDTH; col++) {
            Article art = matrix.getArticle(row, col);
            if (art.equals(greenDia) && !art.isActivated()) {
              redDiamonds++;
            }
          }
        }       
        assertEquals(nullCells+redDiamonds,ArticleMatrix.HEIGHT*ArticleMatrix.WIDTH );
View Full Code Here

TOP

Related Classes of flyingdiamond.model.Article

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.