public void OnQuitClick()
    {
        MsgQuit msg = new MsgQuit();

        msg.id = GameManager.GetInstance().client_id;
        NetManager.Send(msg);
    }
 private void OnApplicationQuit()
 {
     if (!useQuitButton)
     {
         MsgQuit msg = new MsgQuit();
         msg.id = client_id;
         NetManager.Send(msg);
         NetManager.Close();
     }
 }
 public void ProcessMsgQuit(MsgQuit msg)
 {
     Over(msg.id, true);
     for (int i = 0; i < 4; i++)
     {
         if (i == msg.id)
         {
             msg.isQuit = true;
         }
         else
         {
             msg.isQuit = false;
         }
         players[i].Send(msg);
     }
 }
    public void OnMsgQuit(MsgBase msgBase)
    {
        MsgQuit msg = (MsgQuit)msgBase;

        useQuitButton = msg.isQuit;
        if (msg.isQuit)
        {
            NetManager.Close();
            Application.Quit();
        }
        else
        {
            PanelManager.Open <TipPanel>("有人退出,游戏被迫中止!");
            PanelManager.Open <GameoverPanel>(-1, client_id, msg.id);
            PanelManager.Close("GamePanel");
            //直接平局
        }
    }
    public static void MsgQuit(ClientState c, MsgBase msgBase)
    {
        MsgQuit msg    = (MsgQuit)msgBase;
        Player  player = c.player;

        if (player == null)
        {
            return;
        }
        Room room = RoomManager.GetRoom(player.roomId);

        if (room == null)
        {
            return;
        }
        GameManager gameManager = room.gameManager;

        if (gameManager == null)
        {
            return;
        }
        gameManager.ProcessMsgQuit(msg);
    }