-
Notifications
You must be signed in to change notification settings - Fork 2
/
player.h
39 lines (34 loc) · 997 Bytes
/
player.h
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
#ifndef PLAYER_H
#define PLAYER_H
#include <vector>
#include "pawn.h"
#include "rook.h"
#include "knight.h"
#include "bishop.h"
#include "queen.h"
#include "king.h"
class Player
{
public:
Player();
virtual ~Player();
void init(int side);
void init(int side, const std::vector<Piece *> &_pieces);
void loose();
void win();
std::vector<Piece*> getPieces() const { return pieces; }
Piece * getPieceByVao(int VaoId);
Piece* getKing() const { return king; }
///Calcule les mouvements disponibles pour toutes les pièces du joueur
void computeAvailableMovements(std::vector<Piece*>, std::vector<Piece*>);
void deletePieceAt(std::vector<int>);
void deletePieces();
private:
///Numéro du joueur
int number;
///Liste des pièces du joueur
std::vector<Piece*> pieces;
///une référence directe vers le roi
King *king;
};
#endif // PLAYER_H