public void playCardToPosition(Card targetCard, int targetTilePosition)
        {
            BoardPositionHex targetTile = gameBoard.tiles[targetTilePosition];

            targetTile.bindToCard(targetCard);

            gameBoard.cardsPlayed.Add(targetCard);

            var recordCardPlayed = new RecordCardPlayed(targetCard, targetTile);

            historyCardsPlayed.Add(recordCardPlayed);

            // detect triggers card interaction
        }
 public InteractionPoint(BoardPositionHex tileA, BoardPositionHex tileB)
 {
     this.tileA = tileA;
     this.tileB = tileB;
 }
 public RecordCardPlayed(Card card, BoardPositionHex position)
 {
     this.card     = card;
     this.position = position;
 }
 public InteractionPoint()
 {
     this.tileA = null;
     this.tileB = null;
 }