This commit is contained in:
flo 2025-04-01 22:09:47 +02:00
parent dc22b86f1d
commit bc9da21be1
2 changed files with 31 additions and 4 deletions

View File

@ -11,7 +11,10 @@
<body> <body>
<div class="container"> <div class="container">
<div id="score" class="first"> <div id="score" class="first">
<p>Score: <span id="score-value">0</span></p> <p>
Score:
<span id="score-value">0</span>
</p>
</div> </div>
<div id="tetris" class="tetris"> <div id="tetris" class="tetris">
<canvas id="tetris-canvas" width="200" height="400"></canvas> <canvas id="tetris-canvas" width="200" height="400"></canvas>

View File

@ -1,4 +1,5 @@
const board = document.getElementById('tetris-canvas'); const board = document.getElementById('tetris-canvas');
const scoreElement = document.getElementById('score-value');
const boardContext = board.getContext('2d'); const boardContext = board.getContext('2d');
@ -20,6 +21,11 @@ let leftInterval;
let keyPress = []; let keyPress = [];
let score = 0;
let level = 1;
let lines = 0;
let speed = 1000;
const templatePiece = [ const templatePiece = [
[ // ok [ // ok
[3, 0], [3, 0],
@ -279,8 +285,11 @@ function rotate() {
} }
function checkLine() { function checkLine() {
let lineFilled = 0;
for (let i = 0; i < 20; i++) { for (let i = 0; i < 20; i++) {
let check = true; let check = true;
for (let j = 0; j < 10; j++) { for (let j = 0; j < 10; j++) {
if (boardData[j][i][0] == 0 && boardData[j][i][1] == 0 && boardData[j][i][2] == 0) { if (boardData[j][i][0] == 0 && boardData[j][i][1] == 0 && boardData[j][i][2] == 0) {
check = false; check = false;
@ -294,8 +303,25 @@ function checkLine() {
boardData[k][j] = boardData[k][j - 1]; boardData[k][j] = boardData[k][j - 1];
} }
} }
lineFilled++;
} }
} }
if (lineFilled == 1) {
score += 40;
}
else if (lineFilled == 2) {
score += 100;
}
else if (lineFilled == 3) {
score += 300;
}
else if (lineFilled == 4) {
score += 1200;
}
scoreElement.innerText = score;
} }
function moveTo(x, y) { function moveTo(x, y) {
@ -355,9 +381,7 @@ function fasteDrop() {
img.onload = () => { img.onload = () => {
loadTetris(); loadTetris();
drawCurrentPiece(); refresh();
document.addEventListener('keydown', (event) => { document.addEventListener('keydown', (event) => {
if (event.key == 'ArrowUp' && !keyPress.includes('ArrowUp')) { if (event.key == 'ArrowUp' && !keyPress.includes('ArrowUp')) {