summaryrefslogtreecommitdiffstats
path: root/src/se
diff options
context:
space:
mode:
authorGustav Sörnäs <gustav@sornas.net>2021-03-01 16:52:02 +0100
committerGustav Sörnäs <gustav@sornas.net>2021-03-01 16:52:02 +0100
commit78b8b53daebba36369c5041fa64904b86d5b5345 (patch)
treed2d45a6e8748dd3d4af26652fda2974c05667651 /src/se
parent466dd14287dde6ac5afc6c90379590699dbc6dc9 (diff)
downloadtdde30-78b8b53daebba36369c5041fa64904b86d5b5345.tar.gz
count and show points
Diffstat (limited to 'src/se')
-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();
}