/*import Tile from '@/model/Tile.js'

const COMBINATION_NAME = {
    "0": "Chow",
    "1": "Pung",
    "2": "Kong"
    };
*/
export default class Hand{
    constructor() {
        this.tiles_left = [];
        this.claimed =[];
    }

    discard(pos){
        var discarded_tile = this.tiles_left.splice(pos, 1);
        return discarded_tile;
    }

    draw(tile){
        this.tiles_left.push(tile);
    }

    sort(){
        this.tiles_left.sort(function (a, b) {
            return a.id_tuile - b.id_tuile;
          });
    }

    /**
     * Check if 3 tiles of the same family consecutively (winds and dragons excluded)
     */
    //checkChow(){}

    /**
     * Check if 3 tiles are the same
     */
    checkPung(){
        let pungArray=[];
        const tile_ids = this.tiles_left.map(tile => tile.id_tuile);
        let ids_set = new Set(tile_ids);
        ids_set.forEach(unique_tile => {
            var count = tile_ids.reduce(function(n, val) {
                return n + (val === unique_tile);
            }, 0);
            if(count>=3){
                pungArray.push(unique_tile);
            }
        })
        return pungArray;
    }

    /**
     * Check if 4 tiles are the same
     */
    //checkKong(){}
}