Esempio n. 1
0
        public static string GetNewCode(string sGame, string sUserID)
        {
            string        sid     = GetServerID(sGame);//服务器编号
            string        account = sUserID;
            string        time    = ProvideCommon.getTime().ToString();
            StringBuilder sbText  = new StringBuilder();

            sbText.AppendFormat("tid={0}&", tid);
            sbText.AppendFormat("sid={0}&", sid);
            sbText.AppendFormat("account={0}&", account);
            sbText.AppendFormat("time={0}&", time);
            string     auth    = Base64.EncodeBase64(sbText.ToString());
            string     verify  = ProvideCommon.MD5(string.Format("{0}{1}", auth, key));
            string     sUrl    = string.Format("http://up.9787.com/api/1/uinterface.php?action=getNewCard&auth={0}&verify={1}", auth, verify);
            string     sRes    = ProvideCommon.GetPageInfo(sUrl);
            string     sResult = string.Empty;
            JSONObject json    = JSONConvert.DeserializeObject(sRes);
            string     status  = json["status"].ToString();

            if (status == "-1" || status == "1")
            {
                sResult = json["card"].ToString();
            }
            else
            {
                sResult = status;
            }
            JSONConvert.clearJson();
            return(sResult);
        }
Esempio n. 2
0
        public static string GetBdShortUrl(string url)
        {
            string          bdshorturl     = "";
            string          bdshortpost    = "url=" + url;
            CookieContainer cc             = new CookieContainer();
            string          shorturlresult = HttpHelper1.SendDataByPost("http://dwz.cn/create.php", bdshortpost, "", ref cc);

            if (shorturlresult.Contains("0"))
            {
                JSONObject shorturljson = JSONConvert.DeserializeObject(shorturlresult);
                bdshorturl = shorturljson["tinyurl"].ToString();
                return(bdshorturl);
            }
            while (shorturlresult.Contains("-1"))
            {
                Thread.Sleep(10 * 1000);
                shorturlresult = HttpHelper1.SendDataByPost("http://dwz.cn/create.php", bdshortpost, "", ref cc);
                JSONObject shorturljson = JSONConvert.DeserializeObject(shorturlresult);
                if (shorturljson.Count == 1)
                {
                    continue;
                }
                bdshorturl = shorturljson["tinyurl"].ToString();
            }
            return(bdshorturl);
        }
Esempio n. 3
0
        public static string GameisLogin(string sUserID, string sGameAbbre)
        {
            string        server_id = GetServerID(sGameAbbre);//游戏各个分区的编号,一区为1,二区为2
            string        time      = ProvideCommon.getTime().ToString();
            string        sKey      = "dao50$%^&K:NVCx12#$~@#$d87d9d0";
            StringBuilder sbText    = new StringBuilder();

            sbText.AppendFormat("{0}{1}{2}", sUserID, time, sKey);
            string sign = ProvideCommon.MD5(sbText.ToString());//md5(user + time + 密钥)

            sbText.Remove(0, sbText.Length);
            sbText.AppendFormat("http://s{0}.tjz.dao50.com/cgi-bin/queryrole.cgi?time={1}&server={0}&sign={3}&user={2}&fcm=1", server_id, time, sUserID, sign);
            string sUrl    = sbText.ToString();
            string sRes    = ProvideCommon.GetPageInfo(sUrl);
            string sReturn = string.Empty;

            try
            {
                JSONObject json  = JSONConvert.DeserializeObject(sRes);
                string     sCode = json["status"].ToString();
                if (sCode == "-3")
                {
                    sReturn = "1";
                }
                else
                {
                    sReturn = "0";
                }
            }
            finally
            {
                JSONConvert.clearJson();
            }
            return(sReturn);
        }
Esempio n. 4
0
        public static string GameisLogin(string sUserID, string sGameAbbre)
        {
            string key       = "76ju^j*3Hi2";
            string sReturn   = string.Empty;
            string server_id = GetServerID(sGameAbbre);
            string time      = ProvideCommon.getTime().ToString();
            string agentid   = "29";
            string sign      = ProvideCommon.MD5(key + time + sUserID);
            string sQueryUrl = string.Format("http://domestic.naruto.gametrees.com/api/dao50/info.player.php?user_name={0}&agentid={1}&serverid={2}&t={3}&s={4} ", sUserID, agentid, server_id, time, sign);
            string sRes      = ProvideCommon.GetPageInfo(sQueryUrl);

            try
            {
                JSONObject json  = JSONConvert.DeserializeObject(sRes);
                string     sCode = json["error_code"].ToString();
                if (sCode != "0")
                {
                    sReturn = "1";
                }
                else
                {
                    sReturn = sCode;
                }
            }
            finally
            {
                JSONConvert.clearJson();
            }
            return(sReturn);
        }
Esempio n. 5
0
        public static string Pay(string sUserID, decimal dMoney, string sOrderID, string sGame)
        {
            string op_id      = "115";
            string sid        = GetServerID(sGame);
            string account    = sUserID;
            int    iMoney     = Convert.ToInt32(dMoney);
            int    iGameMoney = iMoney * 10;
            //int iGameMoney = Convert.ToInt32(dMoney * 10);
            string game_money = iGameMoney.ToString();
            string u_money    = iMoney.ToString();
            string time       = ProvideCommon.getTime().ToString();
            string sAuth      = string.Format("op_id={0}&sid={1}&game_id=8&account={2}&order_id={3}&game_money={4}&u_money={5}&time={6}",
                                              op_id, sid, account, sOrderID, game_money, u_money, time);
            string sBase64Auth = Base64.EncodeBase64(sAuth);
            string sVerify     = ProvideCommon.MD5(string.Format("{0}{1}", sBase64Auth, key));
            string sPayUrl     = string.Format("http://up.uuzu.com/api/commonAPI/charge?auth={0}&verify={1}", sBase64Auth, sVerify);
            string sRes        = ProvideCommon.GetPageInfo(sPayUrl);
            string user_ip     = ProvideCommon.GetRealIP();
            int    iUserID     = 0;

            int.TryParse(sUserID, out iUserID);
            GamePayBLL.GamePayAdd(user_ip, sPayUrl, sOrderID, sRes, sGame, iUserID);
            string sCode = string.Empty;

            try
            {
                JSONObject json = JSONConvert.DeserializeObject(sRes);
                sCode = json["status"].ToString();
            }
            finally
            {
                JSONConvert.clearJson();
            }
            return(sCode);
        }
Esempio n. 6
0
        public static string GameisLogin(string sUserID, string sGameAbbre)
        {
            string sReturn = string.Empty;
            string op_id   = "115";
            string sid     = GetServerID(sGameAbbre);
            string account = sUserID;
            string time    = ProvideCommon.getTime().ToString();
            string sAuth   = string.Format("op_id={0}&sid={1}&game_id=36&account={2}&time={3}",
                                           op_id, sid, account, time);
            string sBase64Auth = Base64.EncodeBase64(sAuth);
            string sVerify     = ProvideCommon.MD5(string.Format("{0}{1}", sBase64Auth, key));
            string sPayUrl     = string.Format("http://up.uuzu.com/api/commonAPI/roleverify?auth={0}&verify={1}", sBase64Auth, sVerify);
            string sRes        = ProvideCommon.GetPageInfo(sPayUrl);

            try
            {
                JSONObject json  = JSONConvert.DeserializeObject(sRes);
                string     sCode = json["status"].ToString();
                switch (sCode)
                {
                case "8":
                    sReturn = "1";
                    break;

                default:
                    sReturn = sRes;
                    break;
                }
            }
            finally
            {
                JSONConvert.clearJson();
            }
            return(sReturn);
        }
Esempio n. 7
0
        public static string jdsjPay(string sGameAbbre, int iUserID, string sUserName, int iPayPoints, string sPhone, int iGUserID)
        {
            int    iMoney  = iPayPoints / 10;
            string sTranIP = ProvideCommon.GetRealIP();
            string sTranID = TransGBLL.GameSalesInit(sGameAbbre, iPayPoints, sUserName, sPhone, iGUserID, sTranIP);
            string sTGRes  = TransGBLL.GameSalesCommit(sTranID, sUserName, sGameAbbre).ToString();

            if (sTGRes != "0")
            {
                return(sTGRes);
            }
            string sRes    = Pay(iGUserID.ToString(), iMoney, sTranID, sGameAbbre);
            string sReturn = string.Empty;

            try
            {
                JSONObject json   = JSONConvert.DeserializeObject(sRes);
                string     status = json["status"].ToString();
                if (status == "400")
                {
                    sReturn = string.Format("0|{0}", sTranID);
                }
                else
                {
                    sReturn = sRes;
                }
            }
            finally
            {
                JSONConvert.clearJson();
            }
            return(sReturn);
        }
Esempio n. 8
0
        public static string Pay(string sUserID, int iMoney, string sOrderID, string sGame, string ip, string otype)
        {
            string        sid     = GetServerID(sGame);        //服务器编号
            string        account = sUserID;
            string        oid     = sOrderID.Substring(0, 32); //订单号 char (32)
            string        money   = iMoney.ToString();
            string        gold    = (iMoney * 10).ToString();
            string        time    = ProvideCommon.getTime().ToString();
            StringBuilder sbText  = new StringBuilder();

            sbText.AppendFormat("tid={0}&", tid);
            sbText.AppendFormat("sid={0}&", sid);
            sbText.AppendFormat("account={0}&", account);
            sbText.AppendFormat("oid={0}&", oid);
            sbText.AppendFormat("otype={0}&", otype);
            sbText.AppendFormat("money={0}&", money);
            sbText.AppendFormat("gold={0}&", gold);
            sbText.AppendFormat("ip={0}&", ip);
            sbText.AppendFormat("time={0}", time);
            string     auth   = Base64.EncodeBase64(sbText.ToString());
            string     verify = ProvideCommon.MD5(string.Format("{0}{1}", auth, key));
            string     sUrl   = string.Format("http://passport.9787.com/api/1/uinterface.php?action=charge&auth={0}&verify={1}", auth, verify);
            string     sRes   = ProvideCommon.GetPageInfo(sUrl);
            JSONObject json   = JSONConvert.DeserializeObject(sRes);
            string     result = json["result"].ToString();

            JSONConvert.clearJson();
            return(result);
        }
Esempio n. 9
0
        //{"retcode":0,"result":[{"poll_type":"message","value":{"msg_id":21273,"from_uin":2684355364,"to_uin":496063973,"msg_id2":105299,"msg_type":9,"reply_ip":176756443,"time":1386733521,"content":[["font",{"size":15,"color":"000000","style":[0,0,0],"name":"\u5B8B\u4F53"}],"strlist\u6492\u65E6\u53D1\u8069\r "]}},{"poll_type":"message","value":{"msg_id":21271,"from_uin":2684355364,"to_uin":496063973,"msg_id2":105297,"msg_type":9,"reply_ip":176756443,"time":1386733510,"content":[["font",{"size":15,"color":"000000","style":[0,0,0],"name":"\u5B8B\u4F53"}],"str\u5012\u8428\u7A7A\u95F4 "]}},{"poll_type":"message","value":{"msg_id":21270,"from_uin":2684355364,"to_uin":496063973,"msg_id2":105296,"msg_type":9,"reply_ip":176756443,"time":1386733508,"content":[["font",{"size":15,"color":"000000","style":[0,0,0],"name":"\u5B8B\u4F53"}],"str\u5012\u8428\u7A7A\u95F4 "]}},{"poll_type":"message","value":{"msg_id":21269,"from_uin":2684355364,"to_uin":496063973,"msg_id2":105295,"msg_type":9,"reply_ip":176756443,"time":1386733506,"content":[["font",{"size":15,"color":"000000","style":[0,0,0],"name":"\u5B8B\u4F53"}],"str\u5012\u8428\u7A7A\u95F4 "]}},{"poll_type":"message","value":{"msg_id":21272,"from_uin":2684355364,"to_uin":496063973,"msg_id2":105292,"msg_type":9,"reply_ip":176756443,"time":1386733512,"content":[["font",{"size":15,"color":"000000","style":[0,0,0],"name":"\u5B8B\u4F53"}],"str\u5012\u8428\u7A7A\u95F4 "]}},{"poll_type":"message","value":{"msg_id":21268,"from_uin":2684355364,"to_uin":496063973,"msg_id2":105291,"msg_type":9,"reply_ip":176756443,"time":1386733499,"content":[["font",{"size":15,"color":"000000","style":[0,0,0],"name":"\u5B8B\u4F53"}],"str\u5012\u8428\u7A7A\u95F4 "]}}]}


        public static List <QQMessageEventArgs> Parse(string text)
        {
            List <QQMessageEventArgs> list = new List <QQMessageEventArgs>();
            JSONObject obj = JSONConvert.DeserializeObject(text);

            Debug.WriteLine(obj.GetString("result"));
            JSONArray array = obj.GetJSONArray("result");

            foreach (JSONObject item in array)
            {
                JSONObject         newobj = item.GetJSONObject("value");
                QQMessageEventArgs m      = new QQMessageEventArgs(text);

                switch (item.GetString("poll_type"))
                {
                case "tips":
                    m = null;
                    break;

                case "message":
                    m.PollMsgType = PollType.Friend;
                    m.Data        = GetFriendMessage(newobj);
                    break;

                case "group_message":
                    m.PollMsgType = PollType.Group;
                    m.Data        = GetGroupMessage(newobj);
                    break;

                case "kick_message":
                    m.PollMsgType = PollType.KickMessage;
                    m.Data        = GetKickMessage(newobj);
                    break;

                case "system_message":
                case "sys_g_msg":
                    m.PollMsgType = PollType.System;
                    m             = null;
                    break;

                default:
                    m = null;
                    break;
                }
                if (m != null)
                {
                    list.Add(m);
                }
            }

            return(list);
        }
Esempio n. 10
0
        public static string GetReturn(string sText)
        {
            int    iId    = sText.IndexOf("code");
            string sErrNo = string.Empty;

            if (iId > 0)
            {
                JSONObject json = JSONConvert.DeserializeObject(sText);
                sErrNo = json["code"].ToString();
                JSONConvert.clearJson();
            }
            return(sErrNo);
        }
Esempio n. 11
0
        public static string Pay(string sUserID, decimal dMoney, string sOrderID, string sGame)
        {
            string from   = "dao50";
            string game   = "zsg";
            string server = GetServerID(sGame);
            string transfer_secret_signature = "d060e2a1ac5f5b7ecfdcc4bfd75562fc";
            string user_id      = sUserID;
            string order_number = sOrderID;
            string t            = ProvideCommon.getTime().ToString();

            int    iMoney = Convert.ToInt32(dMoney);
            string amount = (iMoney * 100).ToString();//充入的人民币数量(单位分,为10的整数倍),大于10

            StringBuilder sbText = new StringBuilder();

            sbText.AppendFormat("from={0}game={1}server={2}user_id={3}amount={4}order_number={5}t={6}transfer_secret_signature={7}", from, game, server, user_id, amount, order_number, t, transfer_secret_signature);
            string signature = ProvideCommon.MD5(sbText.ToString()).ToLower();

            string sGamePayUrl = "http://api.lianyun.173.com/api/pay";

            sbText.Remove(0, sbText.Length);
            sbText.AppendFormat("from={0}&game={1}&server={2}&user_id={3}&amount={4}&order_number={5}&t={6}&signature={7}",
                                from, game, server, user_id, amount, order_number, t, signature);
            string sRes   = ProvideCommon.GetPageInfoByPost(sGamePayUrl, sbText.ToString(), "UTF-8");
            string status = string.Empty;

            if (sRes.IndexOf("status") > -1)
            {
                try
                {
                    JSONObject json = JSONConvert.DeserializeObject(sRes);
                    status = json["status"].ToString();
                }
                finally
                {
                    JSONConvert.clearJson();
                }
            }
            string sTranIP = ProvideCommon.GetRealIP();
            int    iUserID = 0;

            int.TryParse(sUserID, out iUserID);
            string sUrl = string.Format("{0}?{1}", sGamePayUrl, sbText.ToString());

            GamePayBLL.GamePayAdd(sTranIP, sUrl, sOrderID, sRes, sGame, iUserID);
            return(status);
        }
Esempio n. 12
0
        /// <summary>
        /// 生产和收获兵力
        /// </summary>
        /// <param name="userRun"></param>
        /// <param name="intForceID"></param>
        private void gainAndProduceForce(string userRun, int intForceID)
        {
            userRun = Regex.Match(userRun.Replace("\r\n", ""), @"\{.*\}").Value;

            JSONObject info       = JSONConvert.DeserializeObject(userRun);
            JSONObject build_list = ((JSONObject)((JSONObject)((JSONObject)((JSONObject)info["info"])["enter_scene"])["build_info"])["build_list"]);

            int       intd      = build_list.Count;
            ArrayList foodBuild = new ArrayList();

            string[] strKeys = new string[build_list.Keys.Count];
            build_list.Keys.CopyTo(strKeys, 0);
            for (int i = 0; i < strKeys.Length; i++)
            {
                JSONObject objBuild    = (JSONObject)build_list[strKeys[i].ToString().Trim()];
                int        intBuild_Id = Convert.ToInt32(objBuild["build_id"].ToString().Trim());
                if (intBuild_Id >= 30000 && intBuild_Id < 40000)
                {
                    //这个是食物
                }
                else if (intBuild_Id >= 40000 && intBuild_Id < 50000)
                {
                    //兵工厂
                    long st = Convert.ToInt64(objBuild["start_time"].ToString().Trim());
                    long et = Convert.ToInt64(objBuild["end_time"].ToString().Trim());

                    if (st == 0)
                    {
                        //空的 。可以直接生产兵
                        string data = "{\"produce_id\":" + intForceID + ",\"id\":" + Convert.ToInt32(objBuild["id"].ToString().Trim()) + "}";
                        produceForce(data);
                        //RefeshforceInfo(produceForce(data));
                    }
                    else if (et <= Timestamp())
                    {
                        //先收兵,再生产兵
                        string data = "{\"id\":" + Convert.ToInt32(objBuild["id"].ToString().Trim()) + "}";
                        gainForce(data);
                        //RefeshforceInfo(gainForce(data));
                        data = "{\"produce_id\":" + intForceID + ",\"id\":" + Convert.ToInt32(objBuild["id"].ToString().Trim()) + "}";
                        produceForce(data);
                        //RefeshforceInfo(produceForce(data));
                    }
                }
            }
        }
Esempio n. 13
0
        public static string Pay(string sUserID, decimal dMoney, string sOrderID, string sGame)
        {
            string        pfid       = "12";//平台id
            int           iMoney     = Convert.ToInt32(dMoney);
            int           iGameMoney = iMoney * 10;
            string        money      = iGameMoney.ToString();
            string        PAY_KEY    = "=TZ=::dao50::PayZL::KEY::*!!ieSi40OSigi2~!*";
            string        sSHAPAYKEY = ProvideCommon.SHA1(PAY_KEY).ToLower();
            string        serverid   = sGame.Replace("tzcq", "s");
            string        tstamp     = ProvideCommon.getTime().ToString();
            StringBuilder sbText     = new StringBuilder();

            sbText.Append(pfid);
            sbText.Append(sOrderID);
            sbText.Append(sUserID);
            sbText.Append(sUserID);
            sbText.Append(money);
            sbText.Append(serverid);
            sbText.Append(tstamp);
            sbText.Append(sSHAPAYKEY);
            string sig   = ProvideCommon.SHA1(sbText.ToString()).ToLower();//sha1(pfid + orderid + uid + name + money + serverid + tstamp +sha1(PAY_KEY))
            string sHost = GetDomain(sGame);
            string sUrl  = string.Format("http://{0}/pay.php?pfid={1}&orderid={2}&uid={3}&name={3}&money={4}&serverid={5}&tstamp={6}&sig={7}", sHost, pfid, sOrderID, sUserID, money, serverid, tstamp, sig);
            string sRes  = ProvideCommon.GetPageInfo(sUrl.ToString());
            string sRet  = string.Empty;

            try
            {
                JSONObject json = JSONConvert.DeserializeObject(sRes);
                sRet = json["ret"].ToString();
            }
            finally
            {
                JSONConvert.clearJson();
            }
            string user_ip = ProvideCommon.GetRealIP();
            int    iUserID = 0;

            int.TryParse(sUserID, out iUserID);
            GamePayBLL.GamePayAdd(user_ip, sUrl, sOrderID, sRes, sGame, iUserID);
            return(sRet);
        }
Esempio n. 14
0
        public static string GameisLogin(string sUserID, string sGameAbbre)
        {
            string        spid     = "dao50";
            string        gameid   = "2";
            string        serverid = GetServerID(sGameAbbre);
            StringBuilder sbText   = new StringBuilder();

            sbText.AppendFormat("{0}|", spid);
            sbText.AppendFormat("{0}|", gameid);
            sbText.AppendFormat("{0}|", serverid);
            sbText.AppendFormat("{0}|", sUserID);
            sbText.Append(key);
            string sign = ProvideCommon.MD5(sbText.ToString());//md5(spid|gameid|serverid|userid|key)

            sbText.Remove(0, sbText.Length);
            string TranURL = "http://mid.gamefy.cn/union_mid/query_user";

            sbText.Append(TranURL);
            sbText.AppendFormat("?userid={0}&", sUserID);
            sbText.AppendFormat("spid={0}&", spid);
            sbText.AppendFormat("gameid={0}&", gameid);
            sbText.AppendFormat("serverid={0}&", serverid);
            sbText.AppendFormat("sign={0}", sign);
            string     sRes    = ProvideCommon.GetPageInfo(sbText.ToString());
            string     sReturn = string.Empty;
            JSONObject json    = JSONConvert.DeserializeObject(sRes);
            string     sCode   = json["code"].ToString();

            JSONConvert.clearJson();
            switch (sCode)
            {
            case "2001":
                sReturn = "1";
                break;

            default:
                sReturn = "0";
                break;
            }
            return(sReturn);
        }
Esempio n. 15
0
        public static string jdsjQucikPay(string sGameAbbre, string sUserName, decimal dPrice, string sTranID)
        {
            int iMoney      = Convert.ToInt32(dPrice);
            int iUserID     = UserBll.UserIDSel(sUserName);
            int iUserPoints = UserPointsBLL.UPointSel(iUserID);
            int iGamePoints = iMoney * 10;

            if (iUserPoints < iGamePoints)
            {
                return("-2");
            }
            string sRes    = Pay(iUserID.ToString(), iMoney, sTranID, sGameAbbre);
            string sReturn = string.Empty;

            try
            {
                JSONObject json   = JSONConvert.DeserializeObject(sRes);
                string     status = json["status"].ToString();
                if (status == "400")
                {
                    int iGRes = TransGBLL.GameSalesCommit(sTranID, sUserName, sGameAbbre);
                    if (iGRes == 0)
                    {
                        sReturn = "0";
                    }
                    else
                    {
                        sReturn = "-1";
                    }
                }
                else
                {
                    sReturn = sRes;
                }
            }
            finally
            {
                JSONConvert.clearJson();
            }
            return(sReturn);
        }
Esempio n. 16
0
    public static void MyTest()
    {
        JSONArray _array = new JSONArray();

        _array.Add("1");
        _array.Add("2");
        _array.Add("3");
        _array.Add("4");
        JSONObject _object = new JSONObject();//新建json对象作为内嵌

        _object.Add("oneKey", "one");
        _object.Add("twoArray", _array);
        JSONArray jsonArray = new JSONArray();

        jsonArray.Add("2006");
        jsonArray.Add("2007");
        jsonArray.Add("2008");
        jsonArray.Add("2009");
        jsonArray.Add("2010");
        JSONObject jsonObject = new JSONObject();

        jsonObject.Add("domain", "mzwu.com");
        jsonObject.Add("two", _object);//添加json对象
        jsonObject.Add("years", jsonArray);
        Console.WriteLine("json序列化为字符串");
        Console.WriteLine(JSONConvert.SerializeObject(jsonObject));                                                                                                            //执行序列化
        //反序列化
        JSONObject json = JSONConvert.DeserializeObject("{\"domain\":\"mzwu.com\",\"two\":{\"oneKey\":\"one\",\"twoArray\":[1,2,3,4]},\"years\":[2006,2007,2008,2009,2010]}"); //执行反序列化

        if (json != null)
        {
            Console.WriteLine("将json结构的字符串反序列化为json对象并调用");
            Console.WriteLine(json["domain"]);
            Console.WriteLine(((JSONObject)json["two"])["oneKey"]);
            Console.WriteLine(((JSONArray)((JSONObject)json["two"])["twoArray"])[0]);
            Console.WriteLine(((JSONArray)json["years"])[3]);
        }
        Console.ReadLine();
    }
Esempio n. 17
0
        /// <summary>
        /// 生产和收获食物
        /// </summary>
        /// <param name="userRun">Scene.run</param>
        /// <param name="intFoodID">1-4</param>
        private void gainAndProduceFood(string userRun, int intFoodID)
        {
            userRun = Regex.Match(userRun.Replace("\r\n", ""), @"\{.*\}").Value;

            JObject o  = JObject.Parse(userRun);//Unicode2Character(userRun)
            JObject ob = (JObject)o["info"]["enter_scene"]["build_info"]["build_list"];

            JSONObject info       = JSONConvert.DeserializeObject(userRun);
            JSONObject build_list = ((JSONObject)((JSONObject)((JSONObject)((JSONObject)info["info"])["enter_scene"])["build_info"])["build_list"]);

            int       intd      = build_list.Count;
            ArrayList foodBuild = new ArrayList();

            string[] strKeys = new string[build_list.Keys.Count];
            build_list.Keys.CopyTo(strKeys, 0);
            for (int i = 0; i < strKeys.Length; i++)
            {
                JSONObject objBuild    = (JSONObject)build_list[strKeys[i].ToString().Trim()];
                int        intBuild_Id = Convert.ToInt32(objBuild["build_id"].ToString().Trim());
                if (intBuild_Id >= 30000 && intBuild_Id < 40000)
                {
                    foodBuild.Add(Convert.ToInt32(objBuild["id"].ToString().Trim()));

                    long st = Convert.ToInt64(objBuild["start_time"].ToString().Trim());
                    long et = Convert.ToInt64(objBuild["end_time"].ToString().Trim());

                    if (st == 0)
                    {
                        string data = "{\"produce_id\":" + intFoodID + ",\"id\":" + Convert.ToInt32(objBuild["id"].ToString().Trim()) + "}";
                        produceFood(data);
                        //RefeshfoodInfo(produceFood(data));
                    }
                }
            }

            //看看食物列表里哪个能收获的
            JArray foodBuildIds = new JArray();

            for (int j = 0; j < foodBuild.Count; j++)
            {
                foodBuildIds.Add(foodBuild[j]);
            }
            //收获生产食物
            for (int k = 0; k < strKeys.Length; k++)
            {
                JSONObject objBuild    = (JSONObject)build_list[strKeys[k].ToString().Trim()];
                int        intBuild_Id = Convert.ToInt32(objBuild["build_id"].ToString().Trim());
                if (intBuild_Id >= 30000 && intBuild_Id < 40000)
                {
                    long st = Convert.ToInt64(objBuild["start_time"].ToString().Trim());
                    long et = Convert.ToInt64(objBuild["end_time"].ToString().Trim());
                    if (et != 0 && et <= Timestamp())
                    {
                        //可以收获了
                        String data = "{\"ids\":" + foodBuildIds.ToString().Replace("\r\n", "").Replace("  ", "") + ",\"id\":" + Convert.ToInt32(objBuild["id"].ToString().Trim()) + "}";
                        gainFood(data);
                        //RefeshfoodInfo(gainFood(data));
                        //收货后再生产
                        data = "{\"produce_id\":" + intFoodID + ",\"id\":" + Convert.ToInt32(objBuild["id"].ToString().Trim()) + "}";
                        produceFood(data);
                        //RefeshfoodInfo(produceFood(data));
                    }
                }
            }
        }