protected ATPAirplane(string title, CategoryClass.CatClassID ccid, decimal minTime = 1500, decimal minXCTime = 500, bool fCanCreditSICAndFlightEngineer = false) { Title = title; requiredCatClassID = ccid; BaseFAR = "61.159"; FARLink = "https://www.law.cornell.edu/cfr/text/14/61.159"; RatingSought = RatingType.ATPAirplane; ATPTotalTime = minTime; ATPMinXC = minXCTime; CanCreditSICAndFlightEngineer = fCanCreditSICAndFlightEngineer; CategoryClass cc = CategoryClass.CategoryClassFromID(ccid); miTotal = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.ATPMinTime, ATPTotalTime), ResolvedFAR("(a)"), fCanCreditSICAndFlightEngineer ? Branding.ReBrand(Resources.MilestoneProgress.ATPTotalTimeSubstitutionNote) : string.Empty, MilestoneItem.MilestoneType.Time, ATPTotalTime); miMinXCTime = new MilestoneItem(Resources.MilestoneProgress.ATPMinXCTime, ResolvedFAR("(a)(1)"), string.Empty, MilestoneItem.MilestoneType.Time, ATPMinXC); miMinNightTime = new MilestoneItem(Resources.MilestoneProgress.ATPMinNightTime, ResolvedFAR("(a)(2)"), Resources.MilestoneProgress.ATPAirplaneNightLandingsNote, MilestoneItem.MilestoneType.Time, ATPMinNight); miMinTimeInClass = new MilestoneItem(String.Format(CultureInfo.CurrentCulture, Resources.MilestoneProgress.ATPTimeInClass, ATPMinTimeInClass, cc.Class), ResolvedFAR("(a)(3)"), Branding.ReBrand(Resources.MilestoneProgress.ATPAirplaneClassSimulatorNote), MilestoneItem.MilestoneType.Time, ATPMinTimeInClass); miMinInstrumentTime = new MilestoneItem(Resources.MilestoneProgress.ATPInstrumentTime, ResolvedFAR("(a)(4)"), Resources.MilestoneProgress.ATPAirplaneSimulatorNote, MilestoneItem.MilestoneType.Time, ATPMinIFR); miMinPIC = new MilestoneItem(Resources.MilestoneProgress.ATPPICTime, ResolvedFAR("(a)(5)"), Resources.MilestoneProgress.ATPPICTimeNote, MilestoneItem.MilestoneType.Time, ATPMinPIC); miMinPICXC = new MilestoneItem(Resources.MilestoneProgress.ATPXCPICTime, ResolvedFAR("(a)(5)(i)"), Resources.MilestoneProgress.ATPPICTimeNote, MilestoneItem.MilestoneType.Time, ATPMinPICXC); miMinPICNight = new MilestoneItem(Resources.MilestoneProgress.ATPNightPICTime, ResolvedFAR("(a)(5)(ii)"), Resources.MilestoneProgress.ATPPICTimeNote, MilestoneItem.MilestoneType.Time, ATPMinPICNight); miNightTO = new MilestoneItem(string.Empty, ResolvedFAR("(b)"), string.Empty, MilestoneItem.MilestoneType.Count, ATPMinNightTOLandingsSubst); miNightLanding = new MilestoneItem(string.Empty, ResolvedFAR("(b)"), string.Empty, MilestoneItem.MilestoneType.Count, ATPMinNightTOLandingsSubst); }
protected void Init(CategoryClass.CatClassID ccid) { CategoryClass cc = CategoryClass.CategoryClassFromID(CatClassID = ccid); Title = String.Format(CultureInfo.CurrentCulture, "{0} - {1}", Resources.MilestoneProgress.Title6199, cc.CatClass); BaseFAR = "61.99"; RatingSought = RatingType.RecreationalPilot; // 61.99 overall miMinTime = new MilestoneItem(Resources.MilestoneProgress.RecreationalMinTime, BaseFAR, string.Empty, MilestoneItem.MilestoneType.Time, 30.0M); // 61.99(a) - 15 hours of dual miMinInstruction = new MilestoneItem(Resources.MilestoneProgress.RecreationalMinTraining, ResolvedFAR("(a)"), String.Empty, MilestoneItem.MilestoneType.Time, 15.0M); // 61.99(a)(1)(i) - 2 hours of flight training in 25nm flights with at least 4 landings miXCFlight = new MilestoneItem(Resources.MilestoneProgress.RecreationalMinXC, ResolvedFAR("(a)(1)(i)"), Resources.MilestoneProgress.RecreationalMinXCNote, MilestoneItem.MilestoneType.Time, 2.0M); // 61.99(a)(1)(ii) - 3 hours of flight training within preceding 2 months. miTestPrep = new MilestoneItem(Resources.MilestoneProgress.RecreationTestPrep, ResolvedFAR("(a)(1)(ii)"), Branding.ReBrand(Resources.MilestoneProgress.NoteTestPrep), MilestoneItem.MilestoneType.Time, 3.0M); // 61.99(a)(2) - 3 hours of solo time miMinSolo = new MilestoneItem(Resources.MilestoneProgress.RecreationalMinSolo, ResolvedFAR("(a)(2)"), Resources.MilestoneProgress.NoteSoloTime, MilestoneItem.MilestoneType.Time, 3.0M); }
public SportPilotGlider() : base() { // Basic MilestoneProgress stuff Title = Resources.MilestoneProgress.TitleSportGlider; CatClassID = CategoryClass.CatClassID.Glider; BaseFAR = "61.313(b, c)"; RatingSought = RatingType.SportGlider; // Parameters for SportBasePilot CategoryName = Resources.MilestoneProgress.SportGliderCategory; // Unique to this class TotalHeavierThanAir = 0.0M; QualifiesByHeavierThanAir = false; string szFar = ResolvedFAR("(1)"); miMinTime = new MilestoneItem(Resources.MilestoneProgress.SportMinTimeGlider, szFar, string.Empty, MilestoneItem.MilestoneType.Time, 10); miMinTrainingFlights = new MilestoneItem(Resources.MilestoneProgress.SportMinFlightsGlider, szFar, string.Empty, MilestoneItem.MilestoneType.Count, 10); miMinSolo = new MilestoneItem(Resources.MilestoneProgress.SportMinSoloGlider, szFar, string.Empty, MilestoneItem.MilestoneType.Time, 2); miMinSoloFlights = new MilestoneItem(Resources.MilestoneProgress.SportMinSoloLandings, ResolvedFAR("(1)(i)"), Resources.MilestoneProgress.SportMinLandingsNote, MilestoneItem.MilestoneType.Count, 5); miTestPrep = new MilestoneItemDecayable(Resources.MilestoneProgress.SportMinTraining, ResolvedFAR("(1)(ii)"), Resources.MilestoneProgress.NoteTestPrep, MilestoneItem.MilestoneType.Count, 3, 2); }