Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 33 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# 推子棋(网页人机版)

## 本地运行

1. 进入项目目录:
```bash
cd /workspace/Script
```
2. 启动静态服务器(任选其一):
```bash
python3 -m http.server 4173
```
3. 浏览器打开:
```
http://127.0.0.1:4173
```

> 不建议直接双击 `index.html` 用 `file://` 打开,建议始终通过 `http://` 访问。

## 常见问题:界面能看到但不能落子

- 请确认状态栏显示:`落子阶段 | 当前:玩家(黑)`。
- 你必须在**交叉点**点击(圆点位置),不是在线段中间点击。
- 如果在某些内置预览器(例如 IDE 的只读预览)里无法交互,请改用系统浏览器打开上述 `http://127.0.0.1:4173`。
- 本项目已为点击层加了 `pointer-events`/`z-index` 兼容处理。

## 规则实现说明(与你确认后的版本)

- 棋盘 16 个落子点(4x4 交叉点)。
- 单推 / 双推 / 阵列:若同一步出现多个可触发规则,只能选择一个执行。
- 阵列按“每一行/列、每一方”只能触发一次记录。
- 下满后进入双方拔子,再进入移动阶段。
- 胜负:对方无子即胜。
39 changes: 39 additions & 0 deletions index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
<!doctype html>
<html lang="zh-CN">
<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>
<main class="layout">
<section class="board-wrap">
<h1>推子棋(3x3 方格 / 16 交叉点)</h1>
<div id="status" class="status"></div>
<div id="board" class="board" aria-label="board"></div>
<div class="controls">
<button id="restartBtn">重开</button>
<button id="undoBtn">悔棋</button>
</div>
</section>

<aside class="panel">
<h2>规则提示</h2>
<ul>
<li>黑子:玩家先手;白子:电脑后手。</li>
<li>落子/移动后,若同时触发多条规则,玩家可点击下方闪烁选项选择一种。</li>
<li>阵列(满行/满列)每条线每方仅能触发一次。</li>
<li>下满后:最后落子方先拔子,再对手拔子,然后进入移动阶段。</li>
</ul>
<div id="choiceBox" class="choice-box hidden">
<h3>请选择规则执行</h3>
<div id="choices"></div>
</div>
<div id="log" class="log" aria-live="polite"></div>
</aside>
</main>

<script src="script.js"></script>
</body>
</html>
Loading