Exemplo n.º 1
0
        public static List <RouteTimeTableEntry> GetAirportDepartures(Airport airport, int count)
        {
            List <RouteTimeTableEntry> entries = new List <RouteTimeTableEntry>();

            foreach (Route route in AirportHelpers.GetAirportRoutes(airport))
            {
                if (route.HasAirliner && route.getCurrentAirliner() != null)
                {
                    RouteTimeTableEntry entry = route.getCurrentAirliner().CurrentFlight == null?route.TimeTable.getNextEntry(GameObject.GetInstance().GameTime, airport) : route.getCurrentAirliner().CurrentFlight.Entry;

                    if (!entry.Destination.Airport.Profile.Coordinates.Equals(airport.Profile.Coordinates))
                    {
                        entries.Add(entry);
                    }

                    while (entries.Count < 4)
                    {
                        entry = route.TimeTable.getNextEntry(entry);
                        if (entry.Destination.Airport != airport)
                        {
                            entries.Add(entry);
                        }
                    }
                }
            }
            entries.Sort(delegate(RouteTimeTableEntry e1, RouteTimeTableEntry e2) { return(MathHelpers.ConvertEntryToDate(e1).CompareTo(MathHelpers.ConvertEntryToDate(e2))); });
            return(entries.GetRange(0, Math.Min(entries.Count, count)));
        }
Exemplo n.º 2
0
        //returns the list of departures for an airport
        public static List <RouteTimeTableEntry> GetAirportDepartures(Airport airport, DayOfWeek day)
        {
            List <RouteTimeTableEntry> entries = new List <RouteTimeTableEntry>();

            foreach (Route route in AirportHelpers.GetAirportRoutes(airport))
            {
                if (route.HasAirliner)
                {
                    var rEntries = route.TimeTable.Entries.Where(e => e.Day == day && e.DepartureAirport == airport);

                    entries.AddRange(rEntries);
                }
            }
            entries.Sort(delegate(RouteTimeTableEntry e1, RouteTimeTableEntry e2) { return(MathHelpers.ConvertEntryToDate(e1).CompareTo(MathHelpers.ConvertEntryToDate(e2))); });
            return(entries);
        }
Exemplo n.º 3
0
        public static List <RouteTimeTableEntry> GetAirportArrivals(Airport airport, int count)
        {
            List <RouteTimeTableEntry> entries = new List <RouteTimeTableEntry>();

            foreach (Route route in AirportHelpers.GetAirportRoutes(airport))
            {
                if (route.HasAirliner && route.getCurrentAirliner() != null)
                {
                    RouteTimeTableEntry entry = route.getCurrentAirliner().CurrentFlight == null?route.TimeTable.getNextEntry(GameObject.GetInstance().GameTime, (airport == route.Destination1 ? route.Destination2 : route.Destination1)) : route.getCurrentAirliner().CurrentFlight.Entry;

                    for (int i = 0; i < route.TimeTable.Entries.Count; i++)
                    {
                        if (entry.Destination.Airport == airport)
                        {
                            entries.Add(entry);
                        }
                        entry = route.TimeTable.getNextEntry(entry);
                    }
                }
            }
            entries.Sort(delegate(RouteTimeTableEntry e1, RouteTimeTableEntry e2) { return(MathHelpers.ConvertEntryToDate(e1).CompareTo(MathHelpers.ConvertEntryToDate(e2))); });
            return(entries.GetRange(0, Math.Min(entries.Count, count)));
        }
Exemplo n.º 4
0
        // chs, 2011-17-11 changed for showing departures and arrivals from one airport to another
        //returns the list of arrivals or departures from one airport to another
        public static List <RouteTimeTableEntry> GetAirportFlights(Airport fAirport, Airport tAirport, Boolean arrivals)
        {
            List <RouteTimeTableEntry> entries = new List <RouteTimeTableEntry>();

            foreach (Route route in AirportHelpers.GetAirportRoutes(fAirport))
            {
                if (route.HasAirliner && (route.Destination1 == tAirport || route.Destination2 == tAirport))
                {
                    RouteTimeTableEntry entry = route.getCurrentAirliner() == null || route.getCurrentAirliner().CurrentFlight == null || route.getCurrentAirliner().CurrentFlight.Entry == null?route.TimeTable.getNextEntry(GameObject.GetInstance().GameTime) : route.getCurrentAirliner().CurrentFlight.Entry;

                    for (int i = 0; i < route.TimeTable.Entries.Count; i++)
                    {
                        if (!arrivals && entry.Destination.Airport == tAirport)
                        {
                            entries.Add(entry);
                        }

                        if (arrivals && entry.Destination.Airport == fAirport)
                        {
                            entries.Add(entry);
                        }

                        entry = route.TimeTable.getNextEntry(entry);
                    }
                }
            }
            entries.Sort(delegate(RouteTimeTableEntry e1, RouteTimeTableEntry e2) { return(MathHelpers.ConvertEntryToDate(e1).CompareTo(MathHelpers.ConvertEntryToDate(e2))); });
            return(entries);
        }
Exemplo n.º 5
0
        //returns the monthly payment for the loan

        public double getMonthlyPayment()
        {
            double basePayment = MathHelpers.GetMonthlyPayment(this.Amount, this.Rate, this.Length);

            return(basePayment * GameObject.GetInstance().Difficulty.LoanLevel);
        }
Exemplo n.º 6
0
 //returns as geocoordinate
 public GeoCoordinate convertToGeoCoordinate()
 {
     return(new GeoCoordinate(MathHelpers.DMStoDeg(this.Latitude.Degrees, this.Latitude.Minutes, this.Latitude.Seconds), MathHelpers.DMStoDeg(this.Longitude.Degrees, this.Longitude.Minutes, this.Longitude.Seconds)));
 }