public void addGuns(int id) { Random n = new Random(); JObject mail = new JObject(); mail.Add("id", n.Next(1, 99999999).ToString());; mail.Add("user_id", "0"); mail.Add("type", "6"); mail.Add("sub_id", "0"); mail.Add("user_exp", "0"); mail.Add("mp", "0"); mail.Add("ammo", "0"); mail.Add("mre", "0"); mail.Add("part", "0"); mail.Add("core", "0"); mail.Add("gem", "0"); mail.Add("gun_id", id.ToString()); mail.Add("fairy_ids", ""); mail.Add("item_ids", ""); mail.Add("equip_ids", ""); mail.Add("furniture", ""); mail.Add("gift", ""); mail.Add("coins", ""); mail.Add("skin", "0"); mail.Add("commander_uniform", ""); mail.Add("bp_pay", "0"); mail.Add("chip", ""); mail.Add("title", string.Format("GiveGuns {0}", id.ToString())); mail.Add("content", ""); mail.Add("code", ""); mail.Add("start_time", MicaSecurityTools.GetCurrentTimeStamp().ToString()); mail.Add("end_time", "2100000000"); mail.Add("if_read", "0"); ((JArray)homedata["index_getmaillist"]).Add(mail); }
private void Form1_Load(object sender, EventArgs e) { server_togglebtn.Text = Properties.Strings.serverstart; tabControl1.TabPages["informationpage"].Text = Properties.Strings.tapPage_info; tabControl1.TabPages["dollsettingpage"].Text = Properties.Strings.tapPage_gunsett; tabControl1.TabPages["equipsettingpage"].Text = Properties.Strings.tapPage_equipsett; tabControl1.TabPages["fairysettingpage"].Text = Properties.Strings.tapPage_fairysett; tabControl1.TabPages["serversettingpage"].Text = Properties.Strings.tapPage_serversett; tr_RX.Text = Properties.Strings.indicater_rx; tr_TX.Text = Properties.Strings.indicater_tx; //tabControl1.TabPages.Remove(tabControl1.TabPages[4]); ind_RX_timer.Start(); ind_TX_timer.Start(); serveripaddrtextbox.Text = GetLocalIP(); gunNameCsv.AddRange(File.ReadAllLines("data/db/csv/guns.b64")); userdata = JObject.Parse(File.ReadAllText("data/db/json/userinfo.json")); homedata = JObject.Parse(File.ReadAllText("data/db/json/home.json")); JArray userdata_guninfo = JArray.Parse(userdata["gun_with_user_info"].ToString()); gundb = JArray.Parse(File.ReadAllText("data/db/json/dolls.json")); gundb.Merge(JArray.Parse(File.ReadAllText("data/db/json/dolls_missing.json"))); foreach (string name in gunNameCsv) { string[] t = name.Split(','); if (t[0].StartsWith("gun-1")) { gunNameID.Add(string.Format("{0},{1}", t[1], t[0].Substring(5))); } } foreach (JObject a in userdata_guninfo) { add_gun_list(a); GeneratedgunIDs.Add(Convert.ToInt32(a["id"])); } MicaSecurityTools.init(); server_status_text.Text = "停止"; }
private void sendbtn_Click(object sender, EventArgs e) { Random n = new Random(); JObject mail = new JObject(); mail.Add("id", n.Next(1, 99999999).ToString());; mail.Add("user_id", "0"); mail.Add("type", "6"); mail.Add("sub_id", "0"); mail.Add("user_exp", "0"); mail.Add("mp", "0"); mail.Add("ammo", "0"); mail.Add("mre", "0"); mail.Add("part", "0"); mail.Add("core", "0"); mail.Add("gem", "0"); mail.Add("gun_id", "0"); mail.Add("fairy_ids", ""); mail.Add("item_ids", ""); mail.Add("equip_ids", ""); mail.Add("furniture", ""); mail.Add("gift", ""); mail.Add("coins", ""); mail.Add("skin", "0"); mail.Add("commander_uniform", ""); mail.Add("bp_pay", "0"); mail.Add("chip", ""); mail.Add("title", titletext.Text); mail.Add("content", bodytext.Text); mail.Add("code", ""); mail.Add("start_time", MicaSecurityTools.GetCurrentTimeStamp().ToString()); mail.Add("end_time", notime.Checked ? "2100000000" : ((DateTimeOffset)dateTimePicker1.Value).ToUnixTimeSeconds().ToString()); mail.Add("if_read", "0"); this.FormCloseEvent(mail); Close(); }
protected override byte[] ResponseProcess(HttpRequest request) { void log_clientdata(string s) { Form1.frm.logtextbox_clientrequest.AppendText(string.Format("[{0}]{1}{2}", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), s, Environment.NewLine)); } void log_returndata(string s) { Form1.frm.logtextbox_clientresponce.AppendText(string.Format("[{0}]{1}{2}", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), s, Environment.NewLine)); } Form1.frm.indicater_blink_TX(); string datafromclient = null; foreach (string key in request.PostParameters.AllKeys) { if (key == "outdatacode") { datafromclient = MicaSecurityTools.Decode(request.PostParameters["outdatacode"], Form1.frm.signkey); log_clientdata(datafromclient); } else if (key == "signcode") { log_clientdata("Sign:" + request.PostParameters["signcode"]); } } if (request.Uri.LocalPath.ToString() == "/") { return(Encoding.UTF8.GetBytes("Welcome! Simple Http Server")); } if (request.Uri.LocalPath == "/getpac/pac.js") { return(Encoding.UTF8.GetBytes(File.ReadAllText(@"data/pac/pac.js"))); } if (request.Uri.ToString().Contains(GF_URLs_KR.host) && Form1.frm.causeErrorNext.Checked) { Form1.frm.causeErrorNext.Checked = false; Form1.frm.notification_show(Properties.Strings.notification, Properties.Strings.reset_client); return(Encoding.UTF8.GetBytes("error:1")); } else if (request.Uri.ToString().Contains(GF_URLs_KR.index_version)) { JObject outdata = new JObject(); TimeSpan monthzero = (new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1, 0, 0, 0) - new DateTime(1970, 1, 1, 0, 0, 0)); outdata.Add("now", Form1.frm.UnixTimeNow().ToString()); outdata.Add("tomorrow_zero", (Form1.frm.UnixTimeNow() + (86400 - Form1.frm.UnixTimeNow() % 86400)).ToString()); outdata.Add("month_zero", (long)monthzero.TotalSeconds); outdata.Add("next_month_zero", 0); outdata.Add("timezone", "Asia / Seoul"); outdata.Add("data_version", "193aded53d62f9b6dc784174e8dc8751"); outdata.Add("client_version", "20302"); outdata.Add("ab_version", "0"); outdata.Add("is_kick", "0"); outdata.Add("weekday", 4); outdata.Add("authentication_url", "http://127.0.0.1"); return(Encoding.UTF8.GetBytes(outdata.ToString())); } else if (request.Uri.ToString().Contains(GF_URLs_KR.getToken)) { JObject outdata = new JObject(); outdata.Add("uid", Form1.frm.uid); outdata.Add("sign", Form1.frm.signkey); outdata.Add("is_username_exist", true); outdata.Add("app_guard_id", ""); outdata.Add("real_name", 0); outdata.Add("authentication_url", "http://127.0.0.1"); return(Encoding.UTF8.GetBytes(MicaSecurityTools.EncodeWithGzip(outdata.ToString(), defaultkey))); } else if (request.Uri.ToString().Contains(GF_URLs_KR.gundevelop)) { JObject o = JObject.Parse(datafromclient); int slot = int.Parse(o["build_slot"].ToString()) - 1; current_develop[slot] = gunid_generate(); string data = "{ \"gun_id\":\"" + current_develop[slot].ToString() + "\"}"; return(Encoding.UTF8.GetBytes(MicaSecurityTools.EncodeWithGzip(data, Form1.frm.signkey))); } else if (request.Uri.ToString().Contains(GF_URLs_KR.finishdevelop)) { JObject o = JObject.Parse(datafromclient); int slot = int.Parse(o["build_slot"].ToString()) - 1; string gid = Form1.frm.GenerateRandomID(); string data = "{ \"gun_with_user_add\":{ \"gun_with_user_id\":\"" + gid + "\",\"gun_id\":\"" + current_develop[slot].ToString() + "\"} }"; JObject newgun = new JObject(Form1.frm.GenerateNewGun(gid, current_develop[slot].ToString())); current_develop[slot] = 0; Form1.frm.add_gun_list(newgun); Form1.frm.addGuntoUserinfo(newgun); return(Encoding.UTF8.GetBytes(MicaSecurityTools.EncodeWithGzip(data, Form1.frm.signkey))); } else if (request.Uri.ToString().Contains(GF_URLs_KR.GetgundevelopCollectList)) { StringBuilder data = new StringBuilder(); for (int i = 0; i < current_develop.Length; i = i + 2) { data.Append(string.Format("スロット{0} [一般] {1} [大型] {2}{3}", (i / 2) + 1, Form1.frm.getgunKRNAme(current_develop[i].ToString()), Form1.frm.getgunKRNAme(current_develop[i + 1].ToString()), Environment.NewLine )); } return(Encoding.UTF8.GetBytes(string.Format("error:202|[現在製造中リスト]{0}{1}", Environment.NewLine , data.ToString()))); } else if (request.Uri.ToString().Contains("sn-list.girlfrontline.co.kr") && request.Uri.ToString().Contains(".txt")) { //Uri url = new Uri("http:" + request.Uri.ToString()); WebClient wc = new WebClient(); wc.Headers.Add("Accept-Encoding", "gzip"); wc.Headers.Add("User-Agent", request.Headers["User-Agent"].ToString()); wc.Headers.Add("X-Unity-Version", request.Headers["X-Unity-Version"].ToString()); byte[] data = wc.DownloadData(request.Uri.ToString()); return(data); } else if (request.Uri.ToString().Contains("sn-list.girlfrontline.co.kr") && request.Uri.ToString().Contains("index.php")) { WebClient wc = new WebClient(); wc.Headers.Add("Accept-Encoding", "gzip"); wc.Headers.Add("Content-Type", request.Headers["Content-Type"].ToString()); wc.Headers.Add("X-Unity-Version", request.Headers["X-Unity-Version"].ToString()); byte[] reqdata = request.Postbody; byte[] data = wc.UploadData(request.Uri.ToString(), reqdata); return(data); } else if (request.Uri.ToString().Contains(GF_URLs_KR.quickdevelop)) { return(new byte[] { 0x31 }); } else if (request.Uri.ToString().Contains(GF_URLs_KR.unlockgun)) { return(new byte[] { 0x31 }); } else if (request.Uri.ToString().Contains(GF_URLs_KR.getuserinfo)) { Form1.frm.userdata["user_record"]["attendance_type1_day"] = DateTime.Now.Day.ToString(); Form1.frm.userdata["user_record"]["attendance_type1_time"] = (Form1.frm.UnixTimeNow() + (86400 - Form1.frm.UnixTimeNow() % 86400)).ToString(); return(Encoding.UTF8.GetBytes(MicaSecurityTools.EncodeWithGzip(Form1.frm.userdata.ToString(), Form1.frm.signkey))); } else if (request.Uri.ToString().Contains(GF_URLs_KR.Getfriendlist)) { JObject list = JObject.Parse(File.ReadAllText(@"data\db\json\friend.json")); return(Encoding.UTF8.GetBytes(MicaSecurityTools.EncodeWithGzip(list.ToString(), Form1.frm.signkey))); } else if (request.Uri.ToString().Contains(GF_URLs_KR.putMsg)) { JObject responce = JObject.Parse(datafromclient); string msg = responce["message"].ToString(); if (msg.StartsWith("/")) { string command = msg.Substring(1).Split(' ')[0]; try { if (command.ToLower() == "give") { string func = msg.Substring(1).Split(' ')[1]; if (func.ToLower() == "resource") { int[] mount = Array.ConvertAll(msg.Substring(1).Split(' ')[2].Split(','), s => int.Parse(s)); Form1.frm.addResource(mount[0], mount[1], mount[2], mount[3]); return(Encoding.UTF8.GetBytes("error:202|[GFBattleTester_v2]\n" + string.Format("인력:{0}, 탄약:{1}, 식량{2}, 부품:{3} 개를 우편으로 보냈습니다.", mount[0], mount[1], mount[2], mount[3]))); } else if (func.ToLower() == "gun") { int id = int.Parse(msg.Substring(1).Split(' ')[2]); Form1.frm.addGuns(id); return(Encoding.UTF8.GetBytes("error:202|[GFBattleTester_v2]\n" + string.Format("인형 {0}을(를) 우편으로 보냈습니다.", Form1.frm.getgunKRNAme(id.ToString())))); } return(Encoding.UTF8.GetBytes("error:202|[GFBattleTester_v2]\n" + "알 수 없는 옵션:" + func)); } return(Encoding.UTF8.GetBytes("error:202|[GFBattleTester_v2]\n" + "알 수 없는 명령어: " + command)); } catch (Exception ex) { return(Encoding.UTF8.GetBytes("error:202|[GFBattleTester_v2]\n" + "명령어 분석 오류\n" + ex.ToString())); } } return(Encoding.UTF8.GetBytes(MicaSecurityTools.EncodeWithGzip("{\"list\":[]}", Form1.frm.signkey))); } else if (request.Uri.ToString().Contains(GF_URLs_KR.gunoath)) { JObject t = new JObject(); t.Add("soul_bond_time", Form1.frm.UnixTimeNow()); return(Encoding.UTF8.GetBytes(MicaSecurityTools.EncodeWithGzip(t.ToString(), Form1.frm.signkey))); } else if (request.Uri.ToString().Contains(GF_URLs_KR.getResourceinmail)) { JObject id = JObject.Parse(datafromclient); string mailid = id["mail_with_user_id"].ToString(); return(Encoding.UTF8.GetBytes(MicaSecurityTools.EncodeWithGzip(string.Format("[{0}]", mailid), Form1.frm.signkey))); } else if (request.Uri.ToString().Contains(GF_URLs_KR.Getfriendapplylist)) { return(Encoding.UTF8.GetBytes(MicaSecurityTools.EncodeWithGzip("{\"list\":[]}", Form1.frm.signkey))); } else if (request.Uri.ToString().Contains(GF_URLs_KR.Getfriendmsglist)) { return(Encoding.UTF8.GetBytes(MicaSecurityTools.EncodeWithGzip("{\"list\":[]}", Form1.frm.signkey))); } else if (request.Uri.ToString().Contains(GF_URLs_KR.Getfriendmsg)) { return(Encoding.UTF8.GetBytes(MicaSecurityTools.EncodeWithGzip("{\"list\":[]}", Form1.frm.signkey))); } else if (request.Uri.ToString().Contains(GF_URLs_KR.getdorminfo)) { return(Encoding.UTF8.GetBytes(MicaSecurityTools.EncodeWithGzip(File.ReadAllText("data/db/json/dorm.json"), Form1.frm.signkey))); } else if (request.Uri.ToString().Contains(GF_URLs_KR.downloadsucsess)) { return(Encoding.UTF8.GetBytes("1")); } else if (request.Uri.ToString().Contains(GF_URLs_KR.home)) { return(Encoding.UTF8.GetBytes(MicaSecurityTools.EncodeWithGzip(Form1.frm.homedata.ToString(), Form1.frm.signkey))); } else if (request.Uri.ToString().Contains(GF_URLs_KR.attendance)) { return(Encoding.UTF8.GetBytes(MicaSecurityTools.EncodeWithGzip(File.ReadAllText("data/db/json/attendance.json"), Form1.frm.signkey))); } else if (request.Uri.ToString().Contains(GF_URLs_KR.statictables)) { return(Encoding.UTF8.GetBytes(MicaSecurityTools.EncodeWithGzip(File.ReadAllText("data/db/json/statictables.json"), Form1.frm.signkey))); } else if (request.Uri.ToString().Contains(GF_URLs_KR.ChangeGamesettings)) { return(Encoding.UTF8.GetBytes("1")); } else if (request.Uri.ToString().Contains("sn-list.xdg.com/kr_gf_index.php")) { return(Encoding.UTF8.GetBytes("1")); } return(Encoding.UTF8.GetBytes("error:202|[GFBattleTester_v2]\n" + Properties.Strings.message_server_notsupported)); }
private void Form1_Load(object sender, EventArgs e) { string mission = File.ReadAllText("data/db/csv/mission.b64"); // mission = Encoding.UTF8.GetString(Convert.FromBase64String(mission)); mission_name_list = mission.Split('\n').ToList(); JObject spotinfo = JObject.Parse(File.ReadAllText(@"data/db/json/spot_info.json")); enemy_team_info = JObject.Parse(File.ReadAllText(@"data/db/json/enemy_team_info.json")); enemy_character_info = JObject.Parse(File.ReadAllText(@"data/db/json/enemy_character_type_info.json")); server_togglebtn.Text = Properties.Strings.serverstart; tabControl1.TabPages["informationpage"].Text = Properties.Strings.tapPage_info; tabControl1.TabPages["dollsettingpage"].Text = Properties.Strings.tapPage_gunsett; tabControl1.TabPages["equipsettingpage"].Text = Properties.Strings.tapPage_equipsett; tabControl1.TabPages["fairysettingpage"].Text = Properties.Strings.tapPage_fairysett; tabControl1.TabPages["serversettingpage"].Text = Properties.Strings.tapPage_serversett; tr_RX.Text = Properties.Strings.indicater_rx; tr_TX.Text = Properties.Strings.indicater_tx; //tabControl1.TabPages.Remove(tabControl1.TabPages[4]); ind_RX_timer.Start(); ind_TX_timer.Start(); serveripaddrtextbox.Text = GetLocalIP(); gunNameCsv.AddRange(File.ReadAllLines("data/db/csv/guns.b64")); userdata = JObject.Parse(File.ReadAllText("data/db/json/userinfo.json")); homedata = JObject.Parse(File.ReadAllText("data/db/json/home.json")); JArray userdata_guninfo = JArray.Parse(userdata["gun_with_user_info"].ToString()); gundb = JArray.Parse(File.ReadAllText("data/db/json/dolls.json")); gundb.Merge(JArray.Parse(File.ReadAllText("data/db/json/dolls_missing.json"))); enemy_list_gridview.Columns[0].ValueType = typeof(int); foreach (string name in gunNameCsv) { string[] t = name.Split(','); if (t[0].StartsWith("gun-1")) { gunNameID.Add(string.Format("{0},{1}", t[1], t[0].Substring(5))); } } foreach (JObject a in userdata_guninfo) { add_gun_list(a); GeneratedgunIDs.Add(Convert.ToInt32(a["id"])); } MicaSecurityTools.init(); server_status_text.Text = "停止"; #region datagridview 전역/적 정보 리스트 추가 부분 foreach (var item in enemy_team_info) { string enemyID = enemy_team_info[item.Key]["id"].ToString(); string enemyLeaderID = enemy_team_info[enemyID]["enemy_leader"].ToString(); //string membernames = string.Empty; JArray a = JArray.Parse(enemy_team_info[enemyID]["member_ids"].ToString()); if (enemyLeaderID != "0") { /* * for(int i=0; i<a.Count; i++) * { * string id = a[i].ToString(); * if(enemy_character_info.ContainsKey(id)) * { * if (i == a.Count - 1) * membernames += enemy_character_info[id]["code"].ToString(); * else * membernames += enemy_character_info[id]["code"].ToString() + ","; * } * else * { * if (i == a.Count - 1) * membernames += id; * else * membernames += id + ","; * } * * }*/ string missionspotname = string.Empty; if (int.Parse(enemy_team_info[enemyID]["spot_id"].ToString()) > 0) { missionspotname = CodeToMissionName(int.Parse(spotinfo[enemy_team_info[enemyID]["spot_id"].ToString()]["mission_id"].ToString())); } else { missionspotname = "-"; } string[] enemyinfo = { enemyID, enemy_character_info[enemyLeaderID]["code"].ToString(), enemy_character_info[enemyLeaderID]["boss_hp"].ToString(), enemy_character_info[enemyLeaderID]["maxlife"].ToString(), missionspotname /*membernames*/ }; enemy_list_gridview.Rows.Add(enemyinfo); } //enemyGrpID.Add(enemyID); //enemy_team_id_combobox.Items.Add(enemyID); } bs.DataSource = enemy_list_gridview.DataSource; #endregion }