|
|
当我们创建一个贪吃蛇的网页游戏时,需要使用HTML、CSS和JavaScript来实现。下面是一个简单的示例代码:
首先是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="styles.css">
- </head>
- <body>
- <canvas id="gameCanvas"></canvas>
- <script src="script.js"></script>
- </body>
- </html>
复制代码
接着是CSS部分,用于设置游戏画布的样式:
- body {
- display: flex;
- justify-content: center;
- align-items: center;
- height: 100vh;
- margin: 0;
- }
- canvas {
- border: 1px solid black;
- }
复制代码
最后是JavaScript部分,用于实现游戏逻辑:
- const canvas = document.getElementById('gameCanvas');
- const ctx = canvas.getContext('2d');
- // 设置画布大小
- canvas.width = 400;
- canvas.height = 400;
- // 定义贪吃蛇初始位置和速度
- let snake = [{x: 200, y: 200}];
- let dx = 0;
- let dy = 0;
- // 绘制贪吃蛇
- function drawSnake() {
- ctx.clearRect(0, 0, canvas.width, canvas.height);
- ctx.fillStyle = 'green';
- snake.forEach(segment => {
- ctx.fillRect(segment.x, segment.y, 10, 10);
- });
- }
- // 更新贪吃蛇位置
- function updateSnake() {
- const head = {x: snake[0].x + dx, y: snake[0].y + dy};
- snake.unshift(head);
- snake.pop();
- }
- // 游戏循环
- function gameLoop() {
- updateSnake();
- drawSnake();
- setTimeout(gameLoop, 100);
- }
- gameLoop();
复制代码
这是一个基础的贪吃蛇游戏代码,你可以根据需求继续完善游戏功能,比如添加食物、检测碰撞等。希望对你有所帮助! |
|