コード例 #1
0
ファイル: GameLogic.cs プロジェクト: clear10/OnlineShogi
    void ParseBattleInfo(Dictionary <string, object> json)
    {
        string state = json["state"].ToString();

        if (state == "finish")
        {
            OnGameFinish();
            return;
        }
        if (state == "exit")
        {
            OnRivalExit();
            return;
        }
        int id      = System.Convert.ToInt32(json ["turn_player"]);
        int turn    = System.Convert.ToInt32(json ["turn_count"]);
        int watcher = System.Convert.ToInt32(json ["watcher_count"]);

        BattleInfoPanel panel = BattleInfoPanel.Instance;

        if (panel.Watcher < watcher)
        {
            panel.IncreaseWatcher();
            if (!NoticePanel.IsShowing)
            {
                NoticePanel.Show();
            }
        }
        if (id == GetTurnPlayer().UserId)
        {
            if (!panel.Inited)
            {
                panel.SetPanel(GetTurnPlayer().Name, turn);
                return;
            }
        }

        isTurnChanged = true;
        panel.SetPanel(GetTurnPlayer().Name, turn);

        if (id == first.UserId)
        {
            first.SetTurn(true);
            last.SetTurn(false);
            return;
        }
        if (id == last.UserId)
        {
            first.SetTurn(false);
            last.SetTurn(true);
            return;
        }
    }