summaryrefslogtreecommitdiff
path: root/server/player.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'server/player.cpp')
-rw-r--r--server/player.cpp54
1 files changed, 27 insertions, 27 deletions
diff --git a/server/player.cpp b/server/player.cpp
index 67d35c9..59b128e 100644
--- a/server/player.cpp
+++ b/server/player.cpp
@@ -2,7 +2,7 @@
#include "hand.h"
-void Game::Player::round_start(int w) {
+void Player::round_start(int w) {
// Reset contents.
hand.clear();
open.clear();
@@ -16,7 +16,7 @@ void Game::Player::round_start(int w) {
client->round_start();
}
-PlayerState Game::Player::get_state() {
+PlayerState Player::get_state() {
Tilegroups h;
h.push_back(hand);
@@ -28,7 +28,7 @@ PlayerState Game::Player::get_state() {
return state;
}
-PlayerState Game::Player::get_state_filtered() {
+PlayerState Player::get_state_filtered() {
Tilegroups h;
h.push_back(hand);
@@ -40,7 +40,7 @@ PlayerState Game::Player::get_state_filtered() {
return state;
}
-Actions Game::Player::get_actions_draw() {
+Actions Player::get_actions_draw() {
Actions possible_actions;
// Check if player can force a draw.
@@ -94,9 +94,7 @@ Actions Game::Player::get_actions_draw() {
return possible_actions;
}
-Actions Game::Player::get_actions_discard(Tile tile, PlayerNum discarder) {
- std::cout << "Fisk:" << std::endl;
-
+Actions Player::get_actions_discard(Tile tile, PlayerNum discarder) {
Actions possible_actions;
if(!riichi) {
@@ -136,7 +134,7 @@ Actions Game::Player::get_actions_discard(Tile tile, PlayerNum discarder) {
return possible_actions;
}
-bool Game::Player::can_riichi() {
+bool Player::can_riichi() {
if(open) {
return false;
}
@@ -155,7 +153,7 @@ bool Game::Player::can_riichi() {
return bool(tenpai_indexes);
}
-Game::Player::Targets Game::Player::can_chi(Tile tile) {
+Player::Targets Player::can_chi(Tile tile) {
Targets targets;
Tile::Set set = tile.get_set();
@@ -199,7 +197,7 @@ Game::Player::Targets Game::Player::can_chi(Tile tile) {
return targets;
}
-int Game::Player::can_pon(Tile tile) {
+int Player::can_pon(Tile tile) {
Tiles::iterator it = std::find(hand.begin(), hand.end(), tile);
if(it + 1 < hand.end() && it[1] == tile) {
return it - hand.begin();
@@ -208,7 +206,7 @@ int Game::Player::can_pon(Tile tile) {
return -1;
}
-Game::Player::Targets Game::Player::can_kan() {
+Player::Targets Player::can_kan() {
Targets targets;
for(Tiles::iterator it = hand.begin(); it != hand.end(); it++) {
@@ -225,7 +223,7 @@ Game::Player::Targets Game::Player::can_kan() {
return targets;
}
-Game::Player::Targets Game::Player::can_kan_extend() {
+Player::Targets Player::can_kan_extend() {
Targets targets;
for(Sets::iterator it = open.begin(); it != open.end(); it++) {
@@ -237,52 +235,54 @@ Game::Player::Targets Game::Player::can_kan_extend() {
return targets;
}
-bool Game::Player::can_kan(Tile tile, int target) {
+bool Player::can_kan(Tile tile, int target) {
if(std::size_t(target + 2) < hand.size() && hand[target + 2] == tile) {
return true;
}
return false;
}
-bool Game::Player::can_tsumo() {
+bool Player::can_tsumo() {
Tiles tiles = hand;
tiles.sort();
return Hand::agari(tiles);
}
-bool Game::Player::can_ron(Tile tile) {
+bool Player::can_ron(Tile tile) {
+ // TODO: Check furiten.
+
Tiles tiles = hand;
tiles.push_back(tile);
tiles.sort();
return Hand::agari(tiles);
}
-void Game::Player::draw(Tile tile) {
+void Player::draw(Tile tile) {
hand.push_back(tile);
}
-void Game::Player::discard(int target) {
+void Player::discard(int target) {
Tile tile = hand[target];
hand.erase(hand.begin() + target);
hand.sort();
pond.push_back(tile);
}
-Tile Game::Player::last_discard() {
+Tile Player::last_discard() {
return pond.back();
}
-Tile Game::Player::claim() {
+Tile Player::claim() {
Tile& t = pond.back();
t.invisible = true;
return t;
}
-void Game::Player::declare_riichi() {
+void Player::declare_riichi() {
riichi = true;
}
-void Game::Player::make_chi(Tile tile, int target) {
+void Player::make_chi(Tile tile, int target) {
Tiles chi;
tile.rotated = true;
@@ -325,7 +325,7 @@ void Game::Player::make_chi(Tile tile, int target) {
open.push_back(Set(Set::Chi, chi, true));
}
-void Game::Player::make_pon(Tile tile, int target, PlayerNum discarder) {
+void Player::make_pon(Tile tile, int target, PlayerNum discarder) {
Tiles pon;
tile.rotated = true;
@@ -351,7 +351,7 @@ void Game::Player::make_pon(Tile tile, int target, PlayerNum discarder) {
open.push_back(Set(Set::Pon, pon, true));
}
-void Game::Player::make_kan(Tile tile, int target, PlayerNum discarder) {
+void Player::make_kan(Tile tile, int target, PlayerNum discarder) {
Tiles kan;
tile.rotated = true;
@@ -380,7 +380,7 @@ void Game::Player::make_kan(Tile tile, int target, PlayerNum discarder) {
open.push_back(Set(Set::Kan, kan, true));
}
-void Game::Player::make_kan(int target) {
+void Player::make_kan(int target) {
Tiles kan;
Tiles::iterator it = hand.begin() + target;
@@ -403,7 +403,7 @@ void Game::Player::make_kan(int target) {
open.push_back(Set(Set::Kan, kan, false));
}
-void Game::Player::make_kan_extend(int target) {
+void Player::make_kan_extend(int target) {
Set& set = open[target - 1];
Tiles::iterator it = std::find(hand.begin(), hand.end(), set.tiles.front());
@@ -422,10 +422,10 @@ void Game::Player::make_kan_extend(int target) {
set.type = Set::Kan;
}
-void Game::Player::declare_ron(Tile tile) {
+void Player::declare_ron(Tile tile) {
}
-void Game::Player::declare_tsumo() {
+void Player::declare_tsumo() {
}