示例#1
0
 public void InitPlayer(int playerId, ESeat seat, bool isDealer = false)
 {
     this.PlayerId    = playerId;
     this.Seat        = seat;
     this.IsDealer    = isDealer;
     this.m_CardArray = new int[34];
 }
示例#2
0
    public void DiscardCard(GamePlayer player, ECardType card)
    {
        //Check if anyone win
        bool anyoneWin = false;

        for (int i = 1; i < 4; ++i)
        {
            ESeat seat = (ESeat)(((int)player.Seat + i) % 4);
            if (this.m_PlayerDict[seat].CanWin(card))
            {
                anyoneWin = true;
                Debug.LogError("Player Id " + this.m_PlayerDict[seat].PlayerId + " Win !");
            }
        }
        if (anyoneWin)
        {
            return;
        }

        //Check if anyone kong/pong
        bool anyonePong = false;

        for (int i = 1; i < 4; ++i)
        {
            ESeat seat = (ESeat)(((int)player.Seat + i) % 4);
            if (this.m_PlayerDict[seat].CanKong(card) || this.m_PlayerDict[seat].CanPong(card))
            {
                anyonePong = true;
            }
        }
        if (anyonePong)
        {
            return;
        }

        //Check if anyone chow
        bool anyoneChow = false;

        for (int i = 1; i < 4; ++i)
        {
            ESeat seat = (ESeat)(((int)player.Seat + i) % 4);
            if (this.m_PlayerDict[seat].CanChow(card))
            {
                anyoneChow = true;
            }
        }
        if (anyoneChow)
        {
            return;
        }
        //todo: something
    }