AcManager.Tools.SemiGui.VariablesReplacement.GetValue C# (CSharp) Method

GetValue() private method

private GetValue ( Game startProperties, [ result, string key ) : string
startProperties AcTools.Processes.Game
result [
key string
return string
        private static string GetValue(Game.StartProperties startProperties, [CanBeNull] Game.Result result, string key) {
            if (startProperties.BasicProperties == null) return null;

            switch (key) {
                case "type":
                    return GetType(startProperties, result);
                case "car":
                    return CarsManager.Instance.GetById(startProperties.BasicProperties.CarId)?.DisplayName;
                case "car.id":
                    return startProperties.BasicProperties.CarId;
                case "track":
                    var track = TracksManager.Instance.GetById(startProperties.BasicProperties.TrackId);
                    var config = startProperties.BasicProperties.TrackConfigurationId != null
                            ? track?.GetLayoutByLayoutId(startProperties.BasicProperties.TrackConfigurationId) : track;
                    return config?.Name;
                case "track.id":
                    return startProperties.BasicProperties.TrackId;
                case "date":
                    return startProperties.StartTime.ToString(CultureInfo.CurrentCulture);
                case "date_ac":
                    return GetAcDate(startProperties.StartTime);
                default:
                    return null;
            }
        }