2025年3月28日 星期五 甲辰(龙)年 月廿七 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 编程开发 > Html+Div+Css(前端)

HTML&CSS :用DeepSeek打造会自动判胜的五子棋游戏

时间:02-28来源:作者:点击数:6

DeepSeek 代码生成:五子棋游戏 这段代码是一个 HTML 页面,它包含 CSS 样式和 JavaScript 脚本,用于创建一个简单的五子棋游戏。用户可以在棋盘上轮流放置黑白棋子,游戏会自动检查是否有玩家获胜。


大家复制代码时,可能会因格式转换出现错乱,导致样式失效。建议先少量复制代码进行测试,若未能解决问题,私信我,我会发送完整的压缩包给你

演示效果

使用教程

DeepSeek | 深度求索 点击官网注册

DeepSeek 提示词样例

HTML&CSS

  • <!DOCTYPE html>
  • <html lang="zh-CN">
  • <head>
  • <meta charset="UTF-8">
  • <meta name="viewport" content="width=device-width, initial-scale=1.0">
  • <title>五子棋游戏</title>
  • <style>
  • body {
  • display: flex;
  • flex-direction: column;
  • justify-content: center;
  • align-items: center;
  • height: 100vh;
  • background-color: #f0f0f0;
  • margin: 0;
  • font-family: Arial, sans-serif;
  • }
  • #game-container {
  • text-align: center;
  • }
  • #game-board {
  • display: grid;
  • grid-template-columns: repeat(15, 30px);
  • grid-template-rows: repeat(15, 30px);
  • gap: 1px;
  • background-color: #d2b48c;
  • border: 5px solid #8b4513;
  • box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
  • }
  • .cell {
  • width: 30px;
  • height: 30px;
  • background-color: rgba(255, 255, 255, 0.1);
  • border: 1px solid rgba(0, 0, 0, 0.1);
  • display: flex;
  • justify-content: center;
  • align-items: center;
  • cursor: pointer;
  • transition: background-color 0.3s;
  • }
  • .cell:hover {
  • background-color: rgba(255, 255, 255, 0.3);
  • }
  • .cell.black {
  • background-color: black;
  • border-radius: 50%;
  • }
  • .cell.white {
  • background-color: white;
  • border-radius: 50%;
  • }
  • #status {
  • margin-top: 20px;
  • font-size: 24px;
  • color: #333;
  • }
  • #restart-button {
  • margin-top: 20px;
  • padding: 10px 20px;
  • font-size: 18px;
  • color: white;
  • background-color: #8b4513;
  • border: none;
  • border-radius: 5px;
  • cursor: pointer;
  • display: none;
  • }
  • #restart-button:hover {
  • background-color: #a0522d;
  • }
  • </style>
  • </head>
  • <body>
  • <div id="game-container">
  • <div id="game-board"></div>
  • <div id="status">黑方回合</div>
  • <button id="restart-button">再来一局</button>
  • </div>
  • <script>
  • const boardSize = 15;
  • const board = [];
  • let currentPlayer = 'black';
  • let gameOver = false;
  • const gameBoard = document.getElementById('game-board');
  • const statusDiv = document.getElementById('status');
  • const restartButton = document.getElementById('restart-button');
  • // 初始化棋盘
  • function initBoard() {
  • gameBoard.innerHTML = '';
  • for (let i = 0; i < boardSize; i++) {
  • board[i] = [];
  • for (let j = 0; j < boardSize; j++) {
  • board[i][j] = null;
  • const cell = document.createElement('div');
  • cell.classList.add('cell');
  • cell.dataset.row = i;
  • cell.dataset.col = j;
  • cell.addEventListener('click', onCellClick);
  • gameBoard.appendChild(cell);
  • }
  • }
  • }
  • // 处理单元格点击事件
  • function onCellClick(event) {
  • if (gameOver) return;
  • const row = parseInt(event.target.dataset.row);
  • const col = parseInt(event.target.dataset.col);
  • if (board[row][col] !== null) return;
  • board[row][col] = currentPlayer;
  • event.target.classList.add(currentPlayer);
  • if (checkWin(row, col)) {
  • statusDiv.textContent = `${currentPlayer === 'black' ? '黑' : '白'}方获胜!`;
  • gameOver = true;
  • restartButton.style.display = 'block';
  • return;
  • }
  • currentPlayer = currentPlayer === 'black' ? 'white' : 'black';
  • statusDiv.textContent = `${currentPlayer === 'black' ? '黑' : '白'}方回合`;
  • }
  • // 检查是否获胜
  • function checkWin(row, col) {
  • const directions = [
  • [1, 0], // 水平
  • [0, 1], // 垂直
  • [1, 1], // 对角线
  • [1, -1] // 反对角线
  • ];
  • for (const [dx, dy] of directions) {
  • let count = 1;
  • // 向一个方向检查
  • let x = row + dx;
  • let y = col + dy;
  • while (x >= 0 && x < boardSize && y >= 0 && y < boardSize && board[x][y] === currentPlayer) {
  • count++;
  • x += dx;
  • y += dy;
  • }
  • // 向相反方向检查
  • x = row - dx;
  • y = col - dy;
  • while (x >= 0 && x < boardSize && y >= 0 && y < boardSize && board[x][y] === currentPlayer) {
  • count++;
  • x -= dx;
  • y -= dy;
  • }
  • if (count >= 5) {
  • return true;
  • }
  • }
  • return false;
  • }
  • // 重新开始游戏
  • function restartGame() {
  • board.forEach(row => row.fill(null));
  • currentPlayer = 'black';
  • gameOver = false;
  • statusDiv.textContent = '黑方回合';
  • restartButton.style.display = 'none';
  • initBoard();
  • }
  • // 初始化游戏
  • initBoard();
  • restartButton.addEventListener('click', restartGame);
  • </script>
  • </body>
  • </html>
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐