2048 Game

2048 Game

Use arrow keys to move tiles. Combine tiles with the same number to create a higher value tile.

Game Over

Final Score:

* { box-sizing: border-box; } body { margin: 0; padding: 0; font-family: Arial, sans-serif; } .game-container { max-width: 600px; margin: 0 auto; padding: 20px; } .header { text-align: center; margin-bottom: 20px; } .game-board { display: flex; flex-wrap: wrap; background-color: #bbada0; padding: 10px; border-radius: 10px; box-shadow: 0 0 10px #999; } .tile { display: flex; align-items: center; justify-content: center; width: calc(25% - 20px); height: calc(25% - 20px); margin: 10px; background-color: #cdc1b4; border-radius: 5px; font-size: 24px; font-weight: bold; color: #776e65; } .game-over-overlay { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); z-index: 1; } .game-over-overlay h2, .game-over-overlay p { color: #fff; text-align: center; margin-top: 20%; } .new-game-button { display: block; margin: 0 auto; padding: 10px 20px; background-color: #8f7a66; border: none; border-radius: 5px; color: #fff; font-size: 18px; font-weight: bold; cursor: pointer; } @media screen and (max-width: 600px) { .game-board { max-width: 300px; margin: 0 auto; } } // Initialize game board var board = new Array(4); for (var i = 0; i < board.length; i++) { board[i] = new Array(4).fill(0); } // Add initial tiles to board addRandomTile(); addRandomTile(); // Update game board in HTML updateBoard(); // Handle keyboard events document.addEventListener('keydown', function(event) { switch(event.keyCode) { case 37: // Left arrow key event.preventDefault

Comments