-
Notifications
You must be signed in to change notification settings - Fork 0
/
Piece.cpp
99 lines (92 loc) · 1.96 KB
/
Piece.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
#include "Piece.h"
Piece::Piece(PieceType pieceType, PieceColour pieceColour, bool isPromoted)
{
_basePieceType = pieceType;
_pieceType = pieceType;
_pieceColour = pieceColour;
_isPromoted = isPromoted;
}
Piece::~Piece()
{
}
PieceType Piece::GetBaseType() const
{
return _basePieceType;
}
PieceType Piece::GetType() const
{
return _pieceType;
}
PieceColour Piece::GetColour() const
{
return _pieceColour;
}
bool Piece::IsPromoted() const
{
return _isPromoted;
}
string Piece::GetImageFileName(PieceType pieceType, PieceColour pieceColour)
{
string colour = pieceColour == White ? "White" : "Black";
switch (pieceType)
{
case King:
return colour + "King.png";
case Lion:
return colour + "Lion.png";
case Queen:
return colour + "Queen.png";
case DragonKing:
return colour + "CrownedRook.png";
case DragonHorse:
return colour + "CrownedBishop.png";
case Rook:
return colour + "Rook.png";
case Bishop:
return colour + "Bishop.png";
case VerticalMover:
return colour + "Sword.png";
case SideMover:
return colour + "HSword.png";
case Cannon:
return colour + "Canon.png";
case Lance:
return colour + "Lance.png";
case Kylin:
return colour + "Marshall.png";
case Phoenix:
return colour + "Archbishop.png";
case Elephant:
return colour + "Elephant.png";
case BlindTiger:
return colour + "Claw.png";
case Gold:
return colour + "Gold.png";
case Silver:
return colour + "Advisor.png";
case Copper:
return colour + "Commoner.png";
case FerociousLeopard:
return colour + "Leopard.png";
case Cobra:
return colour + "Cobra.png";
case Pawn:
return colour + "Pawn.png";
case Eagle:
return colour + "Hawk.png";
case Unicorn:
return colour + "Unicorn.png";
case NarrowQueen:
return colour + "Princess.png";
case SleepingQueen:
return colour + "HCrown.png";
case FlyingStag:
return colour + "Chancellor.png";
case WhiteHorse:
return colour + "Knight.png";
case Whale:
return colour + "Dolphin.png";
default:
return "";
}
}