コード例 #1
0
    bool ParseOneResponse(object obj)
    {
        Dictionary <string, object> dic = (Dictionary <string, object>)obj;

        if (dic != null)
        {
            if (dic.ContainsKey("o"))
            {
                int selId = int.Parse(dic["o"].ToString());
                if (requests.ContainsKey((int)selId))
                {
                    NetRequest request = requests[(int)selId];
                    request.Respond(dic);

                    //if (request.resultFlag == 0)
                    //{
                    //	return true;
                    //}
                    if (request.isDone)
                    {
                        lock (NetworkManager.instance.mRequestStack)
                        {
                            NetworkManager.instance.mRequestStack.Remove(request);
                        }
                        return(true);
                    }

                    NetworkManager.instance.mErrorRequestSerialId = request.serialId;
                    NetworkManager.instance.mErrorCommandId       = request.cmdId;
                    NetworkManager.instance.mErrorCode            = request.resultFlag;
                }
            }
        }

        return(false);
    }