Пример #1
0
 public MissionState(MissionState other, JournalMissionRedirected m)      // completed mission
 {
     Mission        = other.Mission;
     Redirected     = m;
     State          = other.State;
     MissionEndTime = other.MissionEndTime;
     sys            = other.sys;
     body           = other.body;
 }
Пример #2
0
        public MissionState(MissionState other, JournalMissionRedirected m)      // redirected mission
        {
            Mission    = other.Mission;
            Redirected = m;                                                     // no completed, since we can't be
            CargoDepot = other.CargoDepot;

            State          = other.State;
            MissionEndTime = other.MissionEndTime;
            sys            = other.sys;
            body           = other.body;
        }
Пример #3
0
 public void Redirected(JournalMissionRedirected m)
 {
     if (missionlist.Missions.ContainsKey(MissionList.Key(m))) // make sure not repeating, ignore if so
     {
         missionlist = new MissionList(missionlist);           // shallow copy
         missionlist.Redirected(m);
     }
     else
     {
         System.Diagnostics.Debug.WriteLine("Missions: Unknown " + MissionList.Key(m));
     }
 }
Пример #4
0
        public void Redirected(JournalMissionRedirected r)
        {
            string       key = Key(r);
            MissionState m   = history.GetLast(key);     // we must have a last entry to add

            if (m != null)
            {
                history.AddGeneration(key, new MissionState(m, r));
            }
            else
            {
                System.Diagnostics.Debug.WriteLine("Missions: Unknown " + key);
            }
        }
Пример #5
0
 public static string Key(JournalMissionRedirected m)
 {
     return(m.MissionId.ToStringInvariant() + ":" + m.Name);
 }
Пример #6
0
 public void Redirected(JournalMissionRedirected r)
 {
     Missions[Key(r)] = new MissionState(Missions[Key(r)], r); // copy previous, add redirected
 }
Пример #7
0
 public void Redirected(JournalMissionRedirected m)
 {
     Missions[Key(m)] = new MissionState(Missions[Key(m)], MissionState.StateTypes.Redirected); // copy previous mission state, add failed
     // Todo  update destination....
     //Missions[Key(m)] = new MissionState(Missions[Key(m)], MissionState.StateTypes.Failed); // copy previous mission state, add failed
 }
Пример #8
0
 public void Redirected(JournalMissionRedirected m, ISystem sys, string body)
 {
     // Update State with new info...     TODO
     //Missions[Key(m)] = new MissionState(m, sys, body); // add a new one..
 }