summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/se/liu/gusso230/tetris/Board.java23
-rw-r--r--src/se/liu/gusso230/tetris/TetrisComponent.java4
2 files changed, 27 insertions, 0 deletions
diff --git a/src/se/liu/gusso230/tetris/Board.java b/src/se/liu/gusso230/tetris/Board.java
index d43d3a4..88d5cc0 100644
--- a/src/se/liu/gusso230/tetris/Board.java
+++ b/src/se/liu/gusso230/tetris/Board.java
@@ -19,6 +19,7 @@ public class Board {
private Poly falling = null;
private int fallingX;
private int fallingY;
+ private int points = 0;
private List<BoardListener> boardListeners;
@@ -123,6 +124,7 @@ public class Board {
private void checkFullLines() {
int y = height - 1;
+ int clearedLines = 0;
while (y >= 0) {
boolean hole = false;
for (int x = 0; x < width; x++) {
@@ -134,9 +136,26 @@ public class Board {
if (hole) {
y--;
} else {
+ clearedLines++;
moveDownFrom(y);
}
}
+ switch (clearedLines) {
+ case 1:
+ points += 100;
+ break;
+ case 2:
+ points += 300;
+ break;
+ case 3:
+ points += 500;
+ break;
+ case 4:
+ points += 800;
+ break;
+ default:
+ break;
+ }
}
private void moveDownFrom(int line) {
@@ -183,6 +202,10 @@ public class Board {
return fallingY;
}
+ public int getPoints() {
+ return points;
+ }
+
public void setFalling(final Poly falling) {
this.falling = falling;
notifyListeners();
diff --git a/src/se/liu/gusso230/tetris/TetrisComponent.java b/src/se/liu/gusso230/tetris/TetrisComponent.java
index 2c10941..33a3642 100644
--- a/src/se/liu/gusso230/tetris/TetrisComponent.java
+++ b/src/se/liu/gusso230/tetris/TetrisComponent.java
@@ -63,6 +63,10 @@ public class TetrisComponent extends JComponent implements BoardListener {
}
}
+ g.setColor(Color.BLACK);
+ g.setFont(new Font("serif", Font.PLAIN, 22));
+ g.drawString(Integer.toString(board.getPoints()), 10, 40);
+
requestFocus();
}