/// <summary>
    /// 保存玩家操作
    /// </summary>
    /// <param name="data">帧数据包</param>
    /// <param name="seed">随机种子</param>
    public void SavePlayerOperation(JArray data, int seed)
    {
        if (fsData == null || data == null)
        {
            Debug.LogError("SavePlayerOperation Error!!!");
            return;
        }
        fsData.SRandom = SeedRandom.New(seed);
        List <JArray> oData = new List <JArray>();

        for (int i = 0; i < data.Count; i++)
        {
            int logicFrame = (int)data[i][0];
            if (logicFrame != fsData.PlayerOperationList.Count)
            {
                //Debug.Log("logicFrame!= fsData.PlayerOperationList.Count" + logicFrame + ":" + fsData.PlayerOperationList.Count);
            }
            long   time = (long)data[i][1];
            JArray op   = (JArray)data[i][2];
            fsData.PlayerOperationList.Add(op);
        }
        fsData.PauseState = false;
        int difference = fsData.PlayerOperationList.Count - fsData.GameLogicFrame;

        // 追帧 临时代码
        //UnityEngine.Debug.Log("游戏逻辑帧 = " + fsData.GameLogicFrame + "  差帧" + difference);
        if (difference > data.Count + 1)
        {
            float scale = difference / data.Count;
            scale           = scale > 10 ? 10 : scale;
            GTime.TimeScale = scale;
        }
        else
        {
            GTime.TimeScale = 1;
        }
    }