public ThirdGenLanguageGlobals(ThirdGenCacheFile cacheFile, StructureValueCollection values, IndexOffsetConverter converter, BuildInformation buildInfo) { _cacheFile = cacheFile; _converter = converter; _languages = LoadLanguages(values, converter, buildInfo); _alignment = buildInfo.LocaleAlignment; }
public ThirdGenLanguage(ThirdGenLanguageGlobals languageGlobals, StructureValueCollection values, IndexOffsetConverter converter, BuildInformation buildInfo) { _languageGlobals = languageGlobals; _pointerLayout = buildInfo.GetLayout("locale index table entry"); _encryptionKey = buildInfo.LocaleKey; _symbols = buildInfo.LocaleSymbols; _converter = converter; _pageSize = buildInfo.LocaleAlignment; Load(values, converter); }
private List<ThirdGenLanguage> LoadLanguages(StructureValueCollection values, IndexOffsetConverter converter, BuildInformation buildInfo) { StructureValueCollection[] languageSet = values.GetArray("languages"); var result = from language in languageSet select new ThirdGenLanguage(this, language, converter, buildInfo); return result.ToList<ThirdGenLanguage>(); }
private void Load(StructureValueCollection values, IndexOffsetConverter converter) { StringCount = (int)values.GetNumber("string count"); LocaleTableSize = (int)values.GetNumber("locale table size"); LocaleIndexTableLocation = new Pointer(values.GetNumber("locale index table offset"), converter); LocaleDataLocation = new Pointer(values.GetNumber("locale data index offset"), converter); // H3 beta doesn't have hashes if (values.HasRaw("index table hash")) IndexTableHash = values.GetRaw("index table hash"); if (values.HasRaw("string data hash")) StringDataHash = values.GetRaw("string data hash"); }