MCPcopy Create free account
hub / github.com/XMuli/ChineseChess / getBuiltinPuzzles

Function getBuiltinPuzzles

PuzzleData.cpp:14–138  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

12// 黑方半场: row 0-4; 红方半场: row 5-9
13
14QVector<PuzzleConfig> getBuiltinPuzzles()
15{
16 QVector<PuzzleConfig> puzzles;
17
18 // ============================================================
19 // 残局1: 双车错 (红先胜)
20 // 红双车配合,逼将入绝路
21 // 布局: 黑将d10, 黑士e10; 红车a9, 红车h3, 红帅e1
22 // 思路: 双车交替将军,逐步逼杀
23 // ============================================================
24 {
25 PuzzleConfig p;
26 p.name = "双车错";
27 p.description = "红先胜,双车交替将军";
28 p.redFirst = true;
29 p.playerIsRed = true;
30 p.pieces = {
31 {4, 0, 3}, // 黑将 d10 (row=0,col=3) 九宫内✓
32 {5, 0, 4}, // 黑士 e10 (row=0,col=4) 九宫内✓
33 {16, 8, 0}, // 红车 a2 (row=8,col=0)
34 {24, 6, 7}, // 红车 h4 (row=6,col=7)
35 {20, 9, 4}, // 红帅 e1 (row=9,col=4) 九宫内✓
36 };
37 puzzles.append(p);
38 }
39
40 // ============================================================
41 // 残局2: 马后炮 (红先胜)
42 // 经典马后炮杀法:马控制将的退路,炮借马为架将军
43 // 布局: 黑将e10, 黑士d9, 黑卒e8;
44 // 红马d8, 红炮e3, 红帅d1
45 // 思路: 马跳到关键位置后炮将军,形成马后炮绝杀
46 // ============================================================
47 {
48 PuzzleConfig p;
49 p.name = "马后炮";
50 p.description = "红先胜,经典马后炮杀法";
51 p.redFirst = true;
52 p.playerIsRed = true;
53 p.pieces = {
54 {4, 0, 4}, // 黑将 e10 (row=0,col=4) 九宫内✓
55 {3, 1, 3}, // 黑士 d9 (row=1,col=3) 九宫内✓
56 {11, 2, 4}, // 黑卒 e8 (row=2,col=4)
57 {17, 3, 2}, // 红马 c7 (row=3,col=2)
58 {25, 7, 5}, // 红炮 f3 (row=7,col=5)
59 {20, 9, 3}, // 红帅 d1 (row=9,col=3) 九宫内✓
60 };
61 puzzles.append(p);
62 }
63
64 // ============================================================
65 // 残局3: 铁门栓 (红先胜)
66 // 车炮配合,炮借子为架封锁将门
67 // 布局: 黑将e10, 黑士d10, 黑士f10;
68 // 红车a8, 红炮d5, 红帅e1
69 // 思路: 车移至底线配合炮将军
70 // ============================================================
71 {

Callers 1

ChooseMainWindowMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected