コード例 #1
0
ファイル: Blocks.java プロジェクト: omer58/FlappyDragon
  public boolean isColliding(int x, int y) {
    for (Block b : blocks)
      // if the block is a down block.
      if (b.getX() < x && x - b.getX() < b.getWidth() && b.getY() < y) return true;

    return false;
  }
コード例 #2
0
ファイル: Blocks.java プロジェクト: omer58/FlappyDragon
  @Override
  public void paint(BufferedImage buf) {
    Graphics g = buf.getGraphics();
    g.setColor(Color.green);

    for (Block b : blocks)
      g.fillRoundRect(b.getX(), b.getY(), b.getWidth(), b.getHeight() + 10, 5, 5);
  }
コード例 #3
0
ファイル: Blocks.java プロジェクト: omer58/FlappyDragon
  @Override
  public void update(int shiftX, int shiftY) {

    if (blocks.isEmpty()) return;

    for (Block b : blocks) {
      b.setX(b.getX() + shiftX);

      // removes the block and instantly adds a new one.
      if (b.getX() < 0 - b.getWidth()) {
        blocks.remove(b);
        int rand = (int) (Math.random() * BLOCK_HEIGHT_MAX + 1);

        if (auto) {
          // if( change)
          createBlockDown(BLOCK_HEIGHT_BASE + rand, 30);
          // else
          // createBlockUp( BLOCK_HEIGHT_BASE + rand, 30);
        }

        change = !change;
      }
    }
  }
コード例 #4
0
ファイル: Block.java プロジェクト: h00s/tetris
 public Block(Block block) {
   this(block.getX(), block.getY(), block.getColor());
 }