public bool TryGetGenreString(string section, string name, string language, out string genreString) { genreString = null; var bestLang = GetBestLanguage(language); if (bestLang == null) { return(false); } lock (_syncObj) { if (!_strings.ContainsKey(language)) { _strings[language] = new LocalizationStrings(_languageDirectories, bestLang); } } genreString = _strings[language].ToString(section, name); if (genreString == null) { return(false); } return(true); }
protected virtual void ReLoad() { lock (_syncObj) { _availableLanguages = LocalizationStrings.FindAvailableLanguages(_languageDirectories); _strings = new LocalizationStrings(_languageDirectories, _currentCulture); } }
public SettingsPartVMBase(LocalizationStrings nameReference, Type navigateToType, IMessenger messenger) : base(messenger) { NavigateToType = navigateToType; Name = Localization.GetLocalizedString(nameReference); FrameLoadedCommand = new RelayCommand(FrameLoaded); }
public void Init(int levelIndex) { Index = levelIndex; info = Player.Instance.Info(Index); level = MainMenu.Instance.LoadedLevels.First(x => x.Name == (Index + 1).ToString(CultureInfo.InvariantCulture)); LevelNumberTitle.text = LocalizationStrings.GetString(LevelNumberString, info.Number); BestScoreLabel.text = LocalizationStrings.GetString(BestScoreString, info.BestScore); TaskLabel.text = LocalizationStrings.GetString(TaskString, GameModeToString.GetString(GameModeFactory.CreateGameMode(level.GameMode))); }
public static string GetString(GameMode gameMode) { if (gameMode is TargetChuzzleGameMode) { return(LocalizationStrings.GetString(ChuzzleString, (gameMode as TargetChuzzleGameMode).Amount, gameMode.Turns)); } if (gameMode is TargetPlaceGameMode) { return(LocalizationStrings.GetString(PlaceString, gameMode.Turns)); } if (gameMode is TargetScoreGameMode) { return(LocalizationStrings.GetString(ScoreString, (gameMode as TargetScoreGameMode).TargetScore, gameMode.Turns)); } throw new NotImplementedException("Unknown game mode"); }
private void OpenLocalization() { OpenFileDialog openFileDialog1 = new OpenFileDialog(); // Set filter options and filter index. openFileDialog1.Filter = "JSON Files (.json)|*.json|All Files (*.*)|*.*"; openFileDialog1.FilterIndex = 1; //openFileDialog1.InitialDirectory = Directory.GetCurrentDirectory(); openFileDialog1.Multiselect = false; // Call the ShowDialog method to show the dialog box. bool?userClickedOK = openFileDialog1.ShowDialog(); int added = 0; // Process input if the user clicked OK. if (userClickedOK == true) { string path = openFileDialog1.FileName; string json = File.ReadAllText(path); try { var data = JsonConvert.DeserializeObject <LocalizationData>(json); LocalizationStrings.Clear(); foreach (var item in data.Items) { LocalizationStrings.Add(item); } LogStatus("Succesfully parsed " + LocalizationStrings.Count + " localization keys", true); } catch (Exception e) { LogStatus("Json File is not in the correct format", true); throw; } } }
public static string GetLocalizedString(LocalizationStrings localizationStringReference) { return(GetLocalizedString(localizationStringReference.GetLocalizationStringValue())); }
protected override void ReLoad() { base.ReLoad(); lock (_syncObj) _strings = new LocalizationStrings(_languageDirectories, _currentCulture); }
private void OnTurnsChanged(int turns, int maxTurns) { TurnsLabel.text = LocalizationStrings.GetString(TurnsString, turns); TurnsBar.value = ((float)turns) / maxTurns; }
private void OnPointsChanged(int points, int targetPoints) { PointsLabel.text = LocalizationStrings.GetString(PointsString, points); PointsBar.value = ((float)points) / targetPoints; }
public void Awake() { Instance = this; PrintStrings(); LoadLocalization(DefaultLocalization); }