|
|
当我们要创建一个贪吃蛇的小游戏时,需要使用网页编程语言,比如HTML、CSS和JavaScript。我来教你一个简单的方法:
首先,我们创建一个HTML文件,并添加必要的HTML结构:
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>贪吃蛇游戏</title>
- <style>
- #game-board {
- width: 400px;
- height: 400px;
- border: 1px solid black;
- position: relative;
- }
- .snake {
- width: 20px;
- height: 20px;
- background-color: green;
- position: absolute;
- }
- .food {
- width: 20px;
- height: 20px;
- background-color: red;
- position: absolute;
- }
- </style>
- </head>
- <body>
- <div id="game-board"></div>
- <script src="snake.js"></script>
- </body>
- </html>
复制代码
接着,我们创建一个JavaScript文件,命名为`snake.js`,在里面编写贪吃蛇的逻辑代码:
- const board = document.getElementById("game-board");
- const snake = [{ x: 200, y: 200 }];
- let direction = "right";
- let food = { x: 0, y: 0 };
- function generateFood() {
- food.x = Math.floor(Math.random() * 20) * 20;
- food.y = Math.floor(Math.random() * 20) * 20;
- const foodElement = document.createElement("div");
- foodElement.className = "food";
- foodElement.style.left = food.x + "px";
- foodElement.style.top = food.y + "px";
- board.appendChild(foodElement);
- }
- function updateSnake() {
- const snakeHead = snake[0];
- let newHead = { x: snakeHead.x, y: snakeHead.y };
- if (direction === "up") {
- newHead.y -= 20;
- } else if (direction === "down") {
- newHead.y += 20;
- } else if (direction === "left") {
- newHead.x -= 20;
- } else if (direction === "right") {
- newHead.x += 20;
- }
- snake.unshift(newHead);
- const snakeElements = document.querySelectorAll(".snake");
- for (let i = 0; i < snakeElements.length; i++) {
- snakeElements[i].remove();
- }
- for (let i = 0; i < snake.length; i++) {
- const segment = document.createElement("div");
- segment.className = "snake";
- segment.style.left = snake[i].x + "px";
- segment.style.top = snake[i].y + "px";
- board.appendChild(segment);
- }
- }
- generateFood();
- updateSnake();
- setInterval(() => {
- updateSnake();
- }, 1000);
复制代码
这样,我们就创建了一个简单的贪吃蛇小游戏。你可以尝试运行这段代码,看看效果如何。希望对你有帮助!如果有什么问题,随时问我哦~ |
|