/// <summary> /// Simple wrapper /// </summary> /// <param name="currentValue"></param> /// <param name="settings"></param> /// <returns></returns> private int AudibleSelectionGrid(int currentValue, ref ProfileData.ExperimentSettings settings) { int newValue = GUILayout.SelectionGrid(currentValue, filterList.ToArray(), 2, GUILayout.ExpandWidth(true)); if (newValue != currentValue) { audio.PlayUI("click1"); settings.Filter = (ProfileData.ExperimentSettings.FilterMethod)newValue; } return(newValue); }
/// <summary> /// A shortcut to get experiment settings /// </summary> /// <param name="expid"></param> /// <returns></returns> public ProfileData.ExperimentSettings this[string expid] { get { if (settings.ContainsKey(expid)) { return(settings[expid]); } // I never expect to see this. If it shows up, something in // loading or initialization has broken Log.Warning("Profile '{0}' has no settings for expid {1}; creating a default", name, expid); settings[expid] = new ProfileData.ExperimentSettings(); return(settings[expid]); } private set { settings.Add(expid.ToLower(), value); } }
/****************************************************************************** * Implementation Details ******************************************************************************/ public ExperimentObserver(StorageCache cache, ProfileData.ExperimentSettings expSettings, BiomeFilter filter, ScanInterface scanMapInterface, string expid) { settings = expSettings; biomeFilter = filter; requireControllable = true; if (scanMapInterface == null) { Log.Warning("ExperimentObserver for {0} given null scanning interface. Using default.", expid); scanMapInterface = new DefaultScanInterface(); } scanInterface = scanMapInterface; experiment = ResearchAndDevelopment.GetExperiment(expid); if (experiment == null) { Log.Error("Failed to get experiment '{0}'", expid); } storage = cache; Rescan(); }
public SurfaceSampleObserver(StorageCache cache, ProfileData.ExperimentSettings settings, BiomeFilter filter, ScanInterface scanInterface) : base(cache, settings, filter, scanInterface, "surfaceSample") { }
public EvaReportObserver(StorageCache cache, ProfileData.ExperimentSettings settings, BiomeFilter filter, ScanInterface scanInterface, string expid = "evaReport") : base(cache, settings, filter, scanInterface, expid) { }
public RequiresCrew(StorageCache cache, ProfileData.ExperimentSettings settings, BiomeFilter filter, ScanInterface scanInterface, string expid) : base(cache, settings, filter, scanInterface, expid) { this.requireControllable = false; }