using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using QwirkleClassLibrary.Boards;
using QwirkleClassLibrary.Players;
using QwirkleClassLibrary.Tiles;
namespace QwirkleClassLibrary.Games
{
///
/// This interface is used to define the functions used in the game. It is mainly about all the rules of the games, chacking if the player moves are correct.
///
public interface IRules
{
Board CreateBoard();
TileBag CreateTileBag(int nbSet);
bool IsMoveCorrect(Tile t, int x, int y, Board b);
bool CheckExtendedSurroundingCells(ref bool previousTilesFound, Tile tile, int x, int y, int dx, int dy, Board b);
bool CheckTilesInLine(List cells, Board b, int x, int y);
bool CheckGameOver(Player player);
}
}
|