refactor: playerId 和 player 替换完毕
This commit is contained in:
parent
9568a01aae
commit
19189dbfe1
|
@ -103,7 +103,7 @@ void MovePicker::score()
|
||||||
// for 12 men, white 's 2nd move place star point is as important as close mill (TODO)
|
// for 12 men, white 's 2nd move place star point is as important as close mill (TODO)
|
||||||
#ifdef ALPHABETA_AI
|
#ifdef ALPHABETA_AI
|
||||||
if (rule.nTotalPiecesEachSide == 12 &&
|
if (rule.nTotalPiecesEachSide == 12 &&
|
||||||
position->getPiecesOnBoardCount(2) < 2 && // patch: only when white's 2nd move
|
position->getPiecesOnBoardCount(WHITE) < 2 && // patch: only when white's 2nd move
|
||||||
Board::isStar(static_cast<Square>(m))) {
|
Board::isStar(static_cast<Square>(m))) {
|
||||||
cur->rating += RATING_STAR_SQUARE;
|
cur->rating += RATING_STAR_SQUARE;
|
||||||
}
|
}
|
||||||
|
|
|
@ -357,7 +357,7 @@ Value AIAlgorithm::search(Depth depth, Value alpha, Value beta)
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
// TODO: 有必要针对深度微调 value?
|
// TODO: 有必要针对深度微调 value?
|
||||||
if (position->turn == PLAYER_BLACK)
|
if (position->turn == BLACK)
|
||||||
bestValue += tte.depth - depth;
|
bestValue += tte.depth - depth;
|
||||||
else
|
else
|
||||||
bestValue -= tte.depth - depth;
|
bestValue -= tte.depth - depth;
|
||||||
|
|
|
@ -37,7 +37,7 @@ AiThread::AiThread(int color, QObject *parent) :
|
||||||
depth(2),
|
depth(2),
|
||||||
timeLimit(3600)
|
timeLimit(3600)
|
||||||
{
|
{
|
||||||
this->playerId = color;
|
this->us = color;
|
||||||
|
|
||||||
connect(this, &AiThread::searchStarted, this, [=]() {timer.start(timeLimit * 1000 - 118 /* 118ms is return time */); }, Qt::QueuedConnection);
|
connect(this, &AiThread::searchStarted, this, [=]() {timer.start(timeLimit * 1000 - 118 /* 118ms is return time */); }, Qt::QueuedConnection);
|
||||||
connect(this, &AiThread::searchFinished, this, [=]() {timer.stop(); }, Qt::QueuedConnection);
|
connect(this, &AiThread::searchFinished, this, [=]() {timer.stop(); }, Qt::QueuedConnection);
|
||||||
|
@ -210,7 +210,7 @@ void AiThread::run()
|
||||||
|
|
||||||
Color sideToMove = NOCOLOR;
|
Color sideToMove = NOCOLOR;
|
||||||
|
|
||||||
loggerDebug("Thread %d start\n", playerId);
|
loggerDebug("Thread %d start\n", us);
|
||||||
|
|
||||||
ai.bestvalue = ai.lastvalue = VALUE_ZERO;
|
ai.bestvalue = ai.lastvalue = VALUE_ZERO;
|
||||||
|
|
||||||
|
@ -219,7 +219,7 @@ void AiThread::run()
|
||||||
|
|
||||||
sideToMove = position->sideToMove;
|
sideToMove = position->sideToMove;
|
||||||
|
|
||||||
if (sideToMove != playerId) {
|
if (sideToMove != us) {
|
||||||
pauseCondition.wait(&mutex);
|
pauseCondition.wait(&mutex);
|
||||||
mutex.unlock();
|
mutex.unlock();
|
||||||
continue;
|
continue;
|
||||||
|
@ -274,7 +274,7 @@ void AiThread::run()
|
||||||
mutex.unlock();
|
mutex.unlock();
|
||||||
}
|
}
|
||||||
|
|
||||||
loggerDebug("Thread %d quit\n", playerId);
|
loggerDebug("Thread %d quit\n", us);
|
||||||
}
|
}
|
||||||
|
|
||||||
void AiThread::act()
|
void AiThread::act()
|
||||||
|
|
|
@ -82,7 +82,7 @@ public slots:
|
||||||
void emitCommand();
|
void emitCommand();
|
||||||
|
|
||||||
public:
|
public:
|
||||||
int playerId;
|
int us;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
const char* strCommand {};
|
const char* strCommand {};
|
||||||
|
|
|
@ -336,7 +336,7 @@ int Board::getSurroundedEmptyLocationCount(Color sideToMove, int nPiecesOnBoard[
|
||||||
return count;
|
return count;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Board::getSurroundedPieceCount(Square square, Color sideToMove, int &nPlayerPiece, int &nTheirPieces, int &nBanned, int &nEmpty)
|
void Board::getSurroundedPieceCount(Square square, Color sideToMove, int &nOurPieces, int &nTheirPieces, int &nBanned, int &nEmpty)
|
||||||
{
|
{
|
||||||
Square moveSquare;
|
Square moveSquare;
|
||||||
|
|
||||||
|
@ -358,7 +358,7 @@ void Board::getSurroundedPieceCount(Square square, Color sideToMove, int &nPlaye
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
if (sideToMove == pieceType >> PLAYER_SHIFT) {
|
if (sideToMove == pieceType >> PLAYER_SHIFT) {
|
||||||
nPlayerPiece++;
|
nOurPieces++;
|
||||||
} else {
|
} else {
|
||||||
nTheirPieces++;
|
nTheirPieces++;
|
||||||
}
|
}
|
||||||
|
|
|
@ -58,7 +58,7 @@ public:
|
||||||
bool isAllInMills(Color c);
|
bool isAllInMills(Color c);
|
||||||
|
|
||||||
int getSurroundedEmptyLocationCount(Color sideToMove, int nPiecesOnBoard[], Square square, bool includeFobidden);
|
int getSurroundedEmptyLocationCount(Color sideToMove, int nPiecesOnBoard[], Square square, bool includeFobidden);
|
||||||
void getSurroundedPieceCount(Square square, Color sideToMove, int &nPlayerPiece, int &nTheirPieces, int &nBanned, int &nEmpty);
|
void getSurroundedPieceCount(Square square, Color sideToMove, int &nOurPieces, int &nTheirPieces, int &nBanned, int &nEmpty);
|
||||||
bool isAllSurrounded(Color sideToMove, int nPiecesOnBoard[]);
|
bool isAllSurrounded(Color sideToMove, int nPiecesOnBoard[]);
|
||||||
|
|
||||||
int addMills(Square square);
|
int addMills(Square square);
|
||||||
|
|
|
@ -207,7 +207,7 @@ bool Position::placePiece(Square square, bool updateCmdlist)
|
||||||
int piece = '\x00';
|
int piece = '\x00';
|
||||||
int n = 0;
|
int n = 0;
|
||||||
|
|
||||||
int playerId = sideToMove;
|
int us = sideToMove;
|
||||||
|
|
||||||
Bitboard fromTo;
|
Bitboard fromTo;
|
||||||
|
|
||||||
|
@ -226,16 +226,16 @@ bool Position::placePiece(Square square, bool updateCmdlist)
|
||||||
Board::squareToPolar(square, file, rank);
|
Board::squareToPolar(square, file, rank);
|
||||||
|
|
||||||
if (phase == PHASE_PLACING) {
|
if (phase == PHASE_PLACING) {
|
||||||
piece = (0x01 | (sideToMove << PLAYER_SHIFT)) + rule.nTotalPiecesEachSide - nPiecesInHand[playerId];
|
piece = (0x01 | (sideToMove << PLAYER_SHIFT)) + rule.nTotalPiecesEachSide - nPiecesInHand[us];
|
||||||
nPiecesInHand[playerId]--;
|
nPiecesInHand[us]--;
|
||||||
nPiecesOnBoard[playerId]++;
|
nPiecesOnBoard[us]++;
|
||||||
|
|
||||||
board.locations[square] = piece;
|
board.locations[square] = piece;
|
||||||
|
|
||||||
updateKey(square);
|
updateKey(square);
|
||||||
|
|
||||||
board.byTypeBB[ALL_PIECES] |= square;
|
board.byTypeBB[ALL_PIECES] |= square;
|
||||||
board.byTypeBB[playerId] |= square;
|
board.byTypeBB[us] |= square;
|
||||||
|
|
||||||
move = static_cast<Move>(square);
|
move = static_cast<Move>(square);
|
||||||
|
|
||||||
|
@ -316,7 +316,7 @@ bool Position::placePiece(Square square, bool updateCmdlist)
|
||||||
|
|
||||||
fromTo = square_bb(currentSquare) | square_bb(square);
|
fromTo = square_bb(currentSquare) | square_bb(square);
|
||||||
board.byTypeBB[ALL_PIECES] ^= fromTo;
|
board.byTypeBB[ALL_PIECES] ^= fromTo;
|
||||||
board.byTypeBB[playerId] ^= fromTo;
|
board.byTypeBB[us] ^= fromTo;
|
||||||
|
|
||||||
board.locations[square] = board.locations[currentSquare];
|
board.locations[square] = board.locations[currentSquare];
|
||||||
|
|
||||||
|
@ -894,9 +894,9 @@ void Position::setTips()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
time_t Position::getElapsedTime(int playerId)
|
time_t Position::getElapsedTime(int us)
|
||||||
{
|
{
|
||||||
return elapsedSeconds[playerId];
|
return elapsedSeconds[us];
|
||||||
}
|
}
|
||||||
|
|
||||||
void Position::constructKey()
|
void Position::constructKey()
|
||||||
|
|
|
@ -90,7 +90,7 @@ public:
|
||||||
return action;
|
return action;
|
||||||
}
|
}
|
||||||
|
|
||||||
time_t getElapsedTime(int playerId);
|
time_t getElapsedTime(int us);
|
||||||
|
|
||||||
const string getTips() const
|
const string getTips() const
|
||||||
{
|
{
|
||||||
|
@ -117,14 +117,14 @@ public:
|
||||||
startTime = stimeb;
|
startTime = stimeb;
|
||||||
}
|
}
|
||||||
|
|
||||||
int getPiecesInHandCount(int playerId) const
|
int getPiecesInHandCount(Color c) const
|
||||||
{
|
{
|
||||||
return nPiecesInHand[playerId];
|
return nPiecesInHand[c];
|
||||||
}
|
}
|
||||||
|
|
||||||
int getPiecesOnBoardCount(int playerId) const
|
int getPiecesOnBoardCount(Color c) const
|
||||||
{
|
{
|
||||||
return nPiecesOnBoard[playerId];
|
return nPiecesOnBoard[c];
|
||||||
}
|
}
|
||||||
|
|
||||||
int getNum_NeedRemove() const
|
int getNum_NeedRemove() const
|
||||||
|
|
Loading…
Reference in New Issue