public virtual TextFile.Token[] GetRSCTokens(int id)
        {
            if (localizedStringDebug && !string.IsNullOrEmpty(TextManager.Instance.RuntimeRSCStrings))
            {
                Debug.LogFormat("Trying localized string using RSC collection '{0}'", TextManager.Instance.RuntimeRSCStrings);
            }

            // First attempt to get string from localization
            string localizedString;

            if (GetLocalizedString(TextManager.Instance.RuntimeRSCStrings, id.ToString(), out localizedString))
            {
                return(DaggerfallStringTableImporter.ConvertStringToRSCTokens(localizedString));
            }

            if (localizedStringDebug)
            {
                Debug.Log("Failed to get localized string. Fallback to TEXT.RSC");
            }

            if (!rscFile.IsLoaded)
            {
                OpenTextRSCFile();
            }

            byte[] buffer = rscFile.GetBytesById(id);
            if (buffer == null)
            {
                return(null);
            }

            return(TextFile.ReadTokens(ref buffer, 0, TextFile.Formatting.EndOfRecord));
        }
        public virtual TextFile.Token[] GetRSCTokens(string id)
        {
            if (localizedStringDebug && !string.IsNullOrEmpty(TextManager.Instance.RuntimeRSCStrings))
            {
                Debug.LogFormat("Trying localized string using RSC collection '{0}'", TextManager.Instance.RuntimeRSCStrings);
            }

            // Attempt to get string from localization, no fallback for string IDs
            string localizedString;

            if (GetLocalizedString(TextManager.Instance.RuntimeRSCStrings, id, out localizedString))
            {
                return(DaggerfallStringTableImporter.ConvertStringToRSCTokens(localizedString));
            }

            return(null);
        }