// Use this for initialization void Start() { SystemPosition position = new SystemPosition(new Vector3[] { Vector3.zero, Vector3.one, Vector3.right }); print(string.Format("{0} - {1} - {2}", position.location[0], position.location[1], position.location[2])); SystemPosition.Subtract(position.location, Vector3.one * 52.1f, 1); print(string.Format("{0} - {1} - {2}", position.location[0], position.location[1], position.location[2])); print(position.ToWorldPosition(0)); }
private void toolStripButton1_Click(object sender, EventArgs e) { SystemPosition ps2 = (from c in VisitedSystems where c.curSystem != null && c.curSystem.HasCoordinate == true orderby c.time descending select c).FirstOrDefault <SystemPosition>(); if (ps2 != null) { SetCenterSystem(ps2.curSystem); } }
private async Task AddNewSystem(SystemPosition ps) { if (ps == null) { throw new ArgumentNullException("ps"); } var starSystem = await _persistentStore.AddNewStarSystem(ps); NetLogWatcherEventArgs args = new NetLogWatcherEventArgs(); args.CurrentSystem = starSystem; OnNewPosition(this, args); //ss.Name = ps.Name; //var sys = await _starSystemRepository.Save(ss); //LogText(string.Format("{0}: Adding system: {1}", DateTime.Now, ps.Name)); //var current = _systemPointer.Get<string>("currentObjectId"); ; //_systemPointer["lastObjectId"] = current; //_systemPointer["currentObjectId"] = sys.ObjectId; //_systemPointer = await _systemPointerRepository.Save(_systemPointer); }
public async Task <StarSystem> AddNewStarSystem(SystemPosition ps) { if (null == CurrentExpedition) { throw new Exception("CurrentExpedition is null"); } if (null == ps) { throw new ArgumentNullException("ps"); } var ss = new StarSystem(); ss.Name = ps.Name; ss.Expedition = CurrentExpedition; var sys = await _starSystemRepository.Insert(ss); if (null != sys) { StarSystems.ToList().Add(sys); } return(sys); }
public int GetLogs(DateTime starttime, out List <SystemPosition> log) { log = new List <SystemPosition>(); string query = "get-logs?startdatetime=" + HttpUtility.UrlEncode(starttime.ToString("yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture)) + "&apiKey=" + apiKey + "&commanderName=" + HttpUtility.UrlEncode(commanderName); //string query = "get-logs?apiKey=" + apiKey + "&commanderName=" + HttpUtility.UrlEncode(commanderName); var response = RequestGet("api-logs-v1/" + query); var json = response.Body; if (json == null) { return(0); } JObject msg = JObject.Parse(json); int msgnr = msg["msgnum"].Value <int>(); JArray logs = (JArray)msg["logs"]; if (logs != null) { foreach (JObject jo in logs) { SystemPosition pos = new SystemPosition(); pos.Name = jo["system"].Value <string>(); string str = jo["date"].Value <string>(); pos.time = DateTime.ParseExact(str, "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture, DateTimeStyles.AssumeUniversal).ToLocalTime(); log.Add(pos); } } return(msgnr); }
public void Sync(bool pushOnly) { try { SQLiteDBClass db = new SQLiteDBClass(); EDSMClass edsm = new EDSMClass(); edsm.apiKey = EDDiscoveryForm.EDDConfig.CurrentCommander.APIKey; edsm.commanderName = EDDiscoveryForm.EDDConfig.CurrentCommander.Name; //string comments = edsm.GetComments(new DateTime(2015, 1, 1)); List <SystemPosition> log; int ret = edsm.GetLogs(new DateTime(2011, 1, 1), out log); if (log == null) { log = new List <SystemPosition>(); } // Send Unsynced system to EDSM. List <SystemPosition> systems = (from s in mainForm.VisitedSystems where s.vs != null && s.vs.EDSM_sync == false && s.vs.Commander == EDDiscoveryForm.EDDConfig.CurrentCommander.Nr select s).ToList <SystemPosition>(); mainForm.LogLine("EDSM: Sending " + systems.Count.ToString() + " flightlog entries", Color.Black); foreach (var system in systems) { string json = null; if (Exit) { running = false; return; } if (system.vs != null && system.vs.EDSM_sync == false) { // check if it exist in EDSM SystemPosition ps2 = (from c in log where c.Name == system.Name && c.time.Ticks == system.time.Ticks select c).FirstOrDefault <SystemPosition>(); if (ps2 != null) { system.vs.EDSM_sync = true; system.Update(); } else { json = edsm.SetLog(system.Name, system.time); } if (json != null) { JObject msg = (JObject)JObject.Parse(json); int msgnum = msg["msgnum"].Value <int>(); string msgstr = msg["msg"].Value <string>(); if (msgnum == 100 || msgnum == 401 || msgnum == 402 || msgnum == 403) { if (msgnum == 100) { System.Diagnostics.Trace.WriteLine("New"); } system.vs.EDSM_sync = true; system.Update(); } else { mainForm.LogLine("EDSM sync ERROR:" + msgnum.ToString() + ":" + msgstr, Color.Red); System.Diagnostics.Trace.WriteLine("Error sync:" + msgnum.ToString() + " : " + system.Name); break; } } } } TravelLogUnit tlu = null; bool newsystem = false; if (!pushOnly) { // Check for new systems from EDSM int defaultColour = db.GetSettingInt("DefaultMap", Color.Red.ToArgb()); foreach (var system in log) { SystemPosition ps2 = (from c in mainForm.VisitedSystems where c.Name == system.Name && c.time.Ticks == system.time.Ticks select c).FirstOrDefault <SystemPosition>(); if (ps2 == null) // Add to local DB... { if (tlu == null) // If we dontt have a travellogunit yet then create it. { tlu = new TravelLogUnit(); tlu.type = 2; // EDSM tlu.Path = "http://www.edsm.net/api-logs-v1/get-logs"; tlu.Name = "EDSM-" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture); tlu.Size = 0; tlu.Add(); // Add to Database } VisitedSystemsClass vs = new VisitedSystemsClass(); vs.Source = tlu.id; vs.Unit = tlu.Name; vs.Name = system.Name; vs.Time = system.time; vs.MapColour = defaultColour; vs.EDSM_sync = true; vs.Add(); // Add to DB; System.Diagnostics.Trace.WriteLine("New from EDSM"); newsystem = true; } } } mainForm.LogLine("EDSM sync Done", Color.Black); if (newsystem) { OnNewEDSMTravelLog(this); } } catch (Exception ex) { System.Diagnostics.Trace.WriteLine("Exception ex:" + ex.Message); mainForm.LogLine("EDSM sync Exception " + ex.Message, Color.Red); } }
private async Task AddNewSystem(SystemPosition ps) { StarSystem ss = new StarSystem(); ss.Name = ps.Name; var sys = await _starSystemRepository.Insert(ss); LogText(string.Format("{0}: Adding system: {1}", DateTime.Now, ps.Name)); var current = _systemPointer.Get<string>("currentObjectId"); ; _systemPointer["lastObjectId"] = current; _systemPointer["currentObjectId"] = sys.ObjectId; _systemPointer = await _systemPointerRepository.Save(_systemPointer); }
private async Task <int> ReadData(FileInfo fileInfo, StreamReader sr) { if (fileInfo == null) { throw new ArgumentNullException("fileInfo"); } if (sr == null) { throw new ArgumentNullException("sr"); } DateTime gammastart = new DateTime(2014, 11, 22, 13, 00, 00); var count = 0; DateTime filetime = DateTime.Now.AddDays(-500); string FirstLine = sr.ReadLine(); string line, str; NetLogFileInfo nfi = null; str = "20" + FirstLine.Substring(0, 8) + " " + FirstLine.Substring(9, 5); filetime = DateTime.Parse(str); if (_netlogfiles.ContainsKey(fileInfo.FullName)) { nfi = _netlogfiles[fileInfo.FullName]; sr.BaseStream.Position = nfi.filePos; sr.DiscardBufferedData(); } while ((line = sr.ReadLine()) != null) { if (line.Contains(" System:")) { SystemPosition ps = SystemPosition.Parse(filetime, line); if (ps != null) { if (ps.Name.Equals("Training")) { continue; } if (ps.Name.Equals("Destination")) { continue; } filetime = ps.Time; if (VisitedSystems.Count > 0) { if (VisitedSystems[VisitedSystems.Count - 1].Name.Equals(ps.Name)) { continue; } } if (ps.Time.Subtract(gammastart).TotalMinutes > 0) // Ta bara med efter gamma. { if (!VisitedSystems.Contains(ps)) { VisitedSystems.Add(ps); await AddNewSystem(ps); } count++; } } } } if (nfi == null) { nfi = new NetLogFileInfo(); } nfi.FileName = fileInfo.FullName; nfi.lastchanged = File.GetLastWriteTimeUtc(nfi.FileName); nfi.filePos = sr.BaseStream.Position; nfi.fileSize = fileInfo.Length; _netlogfiles[nfi.FileName] = nfi; _lastnfi = nfi; return(count); }