コード例 #1
0
    public void lose(LoseParam loseParam)
    {
        lock (lockObject) {
            int color     = loseParam.color;
            int gameEvent = loseParam.gameEvent;
            if (myBlokusController.loseColor[color] == 1 ||
                myBlokusController.gameOver ||
                myBlokusController.loseCount == myBlokusController.MAX_PLAYERS_COUNT - 1)
            {
                return;
            }

            if (myBlokusController.MAX_PLAYERS_COUNT - myBlokusController.loseCount == 2)
            {
                int nextColor = myBlokusController.getNextColor(color);
                if (color == myBlokusController.myColor)
                {
                    if (GameEvent.TIME_CONSUME == gameEvent)
                    {
                        NetManager.Instance.TransferMessage(MessageFormater.formatLoseMessage());
                    }
                    ShowMessage(getColor(nextColor) + " player win!");
                }
                else if (nextColor == myBlokusController.myColor)
                {
                    NetManager.Instance.TransferMessage(MessageFormater.formatWinMessage());
                    ShowMessage("Congratulations to you on winning this match!");
                }
                else
                {
                    ShowMessage(getColor(nextColor) + " player win!");
                }
                chatInGame(getColor(color) + " player lose!");
                chatInGame(getColor(nextColor) + " player win!");
                myBlokusController.lose(color);
                myBlokusController.gameOver = true;
                return;
            }

            if (color == myBlokusController.myColor)
            {
                ShowMessage("you lose!");  //下棋截止时间到,
                if (GameEvent.TIME_CONSUME == gameEvent)
                {
                    NetManager.Instance.TransferMessage(MessageFormater.formatLoseMessage());
                }
                //  NetManager.Instance.TransferMessage(MessageFormater.formatLoseMessage());
            }
            else
            {
                ShowMessage(getColor(color) + " player lose!");//"下棋截止时间到," +
            }
            chatInGame(getColor(color) + " player lose!");
            myBlokusController.lose(color);
            Debug.Log("lock  end*********************************!!!!!!!!!1");
        }
    }