Surakarta for VS Code
在 VS Code 中下苏拉卡尔塔(Surakarta)棋:5×5 格 = 6×6 交点,每方 12 子,四角同心双弧。
功能
- 左侧活动栏「Surakarta」入口
- TreeView 菜单:
- 单机模式:双人对战(两名玩家轮流落子)、人机对战(简单 / 普通 / 困难,AI 搜索 2 / 3 / 4 层)
- 联机对战(局域网 1v1):
- 创建房间:作为房主执橙方,等待对手加入
- 加入房间:输入房主
IP:端口 加入,执蓝方
- 设定昵称:昵称会显示给对手
- 音效开关:开启 / 关闭落子与吃子音效
- Webview 游戏主体(照抄自
demo/index.html)
联机对战
规则与单机一致(每方 12 子),需在同一局域网内。
- 一方在 TreeView 点击「创建房间」,记下提示中的
IP:端口(默认端口 18766,可用设置 surakarta.multiPort 修改)。
- 另一方点击「加入房间」并输入该地址;房主执橙方、客机执蓝方,先手随机,只允许己方回合落子。
- 由房主点击「开始对战」后双方才显示棋盘(客机按钮禁用,只显示「等待房主开始…」):己方棋子始终在下方(两侧棋盘互为镜像)。棋盘上方状态行会提示「轮到你行棋 / 等待对手行棋」,棋盘上下的小圆点也标出轮到的一方;结束时双方显示对称的结果文案「对局结束:橙方(昵称) 获胜,你赢了 / 你输了」。
- 只有房主可以「重新开始」,新的一局会同步给对手;客机的重新开始按钮为禁用状态。
规则简介
- 普通走子:每回合选一枚己方棋子,向八方向走一格到空点。
- 吃子:只能沿弧线箭头方向绕行(不可逆向);滑行路径上若先碰到己方棋子则不能吃子,若先碰到对方棋子则吃掉该子(只吃第一个碰到的对方棋子)。
- 胜负:一方棋子被吃光则另一方获胜;若双方均无法再吃子,则剩余棋子多者获胜。
开发
npm install
npm run compile # 按 F5 调试前会自动执行一次编译
按 F5 启动扩展开发宿主进行调试。
| |