|
|
当然可以!让我们一步步来创建一个简单的贪吃蛇游戏。
首先,我们需要创建三个文件:index.html(用来显示游戏画面)、style.css(用来设置游戏样式)、script.js(用来控制游戏逻辑)。
### index.html
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>贪吃蛇游戏</title>
- <link rel="stylesheet" href="style.css">
- </head>
- <body>
- <div class="game-area"></div>
- <script src="script.js"></script>
- </body>
- </html>
复制代码
### style.css
- * {
- box-sizing: border-box;
- }
- body {
- margin: 0;
- padding: 0;
- display: flex;
- justify-content: center;
- align-items: center;
- height: 100vh;
- background-color: #f0f0f0;
- }
- .game-area {
- width: 400px;
- height: 400px;
- border: 1px solid #333;
- position: relative;
- }
复制代码
### script.js
- const gameArea = document.querySelector('.game-area');
- const gridSize = 20;
- const gridNum = 20;
- const snake = [{x: 10, y: 10}];
- let direction = 'right';
- function createGrid() {
- for (let i = 0; i < gridNum; i++) {
- for (let j = 0; j < gridNum; j++) {
- const grid = document.createElement('div');
- grid.classList.add('grid');
- grid.style.width = `${gridSize}px`;
- grid.style.height = `${gridSize}px`;
- grid.style.top = `${i * gridSize}px`;
- grid.style.left = `${j * gridSize}px`;
- gameArea.appendChild(grid);
- }
- }
- }
- function updateSnake() {
- const head = {x: snake[0].x, y: snake[0].y};
-
- switch (direction) {
- case 'up':
- head.y--;
- break;
- case 'down':
- head.y++;
- break;
- case 'left':
- head.x--;
- break;
- case 'right':
- head.x++;
- break;
- }
-
- snake.unshift(head);
- snake.pop();
- }
- function updateGameArea() {
- gameArea.innerHTML = '';
- createGrid();
- snake.forEach(part => {
- const snakePart = document.createElement('div');
- snakePart.classList.add('snake');
- snakePart.style.width = `${gridSize}px`;
- snakePart.style.height = `${gridSize}px`;
- snakePart.style.top = `${part.y * gridSize}px`;
- snakePart.style.left = `${part.x * gridSize}px`;
- gameArea.appendChild(snakePart);
- });
- }
- function main() {
- updateSnake();
- updateGameArea();
- }
- createGrid();
- setInterval(main, 100);
复制代码
将这些代码分别粘贴到对应的文件中,并把它们放在同一个文件夹中。打开index.html文件,你就可以在浏览器上看到一个简单的贪吃蛇游戏了!通过方向键控制蛇移动,尽量吃到食物加长蛇身,但要避免撞到墙或自己哦。希望你能喜欢这个小游戏!如果有什么问题,随时来问我哦。 |
|