Example #1
0
void Goban::Game::setPlayer(const int pNum, const std::string name, const int playerID)
{
	if (pNum < players.size() && pNum >= 0)
	{
		players[pNum] = new Player(name, playerID);
	}
	else
	{
		throw InvalidPlayerException(pNum);
	}
}
Example #2
0
Goban::Player * Goban::Game::getPlayer(int pNum) const
{
	if (pNum < players.size() && pNum >= 0)
	{
		return players.at(pNum);
	}
	else
	{
		throw InvalidPlayerException(pNum);
	}
}
Example #3
0
int PlayerProxy::getIndex()
{
	auto begin = connection.getGameState().getPlayers().begin();
	auto end = connection.getGameState().getPlayers().end();
	auto i = std::find(begin, end, this);

	if(i == end)
		throw InvalidPlayerException();

	return std::distance(begin, i);
}
Example #4
0
void Goban::Game::makeMove(int pNum, int r, int c)
{
	if (pNum < players.size() && pNum >= 0)
	{
		previousPlayer = pNum;
		theBoard->playStone(players.at(pNum), r, c);
	}
	else
	{
		throw InvalidPlayerException(pNum);
	}
}