Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ FillNameCacheArray< IdClass, IdType >()

static void Terraria.Lang.FillNameCacheArray< IdClass, IdType > ( string category,
LocalizedText[] nameCache,
bool leaveMissingEntriesBlank = false )
inlinestaticprivate
Type Constraints
IdType :IConvertible 

Definition at line 422 of file Lang.cs.

423 {
424 for (int i = 0; i < nameCache.Length; i++)
425 {
426 nameCache[i] = LocalizedText.Empty;
427 }
428 (from f in typeof(IdClass).GetFields(BindingFlags.Static | BindingFlags.Public)
429 where f.FieldType == typeof(IdType)
430 select f).ToList().ForEach(delegate(FieldInfo field)
431 {
432 long num = Convert.ToInt64((IdType)field.GetValue(null));
433 if (num >= 0 && num < nameCache.Length)
434 {
435 nameCache[num] = ((!leaveMissingEntriesBlank || Language.Exists(category + "." + field.Name)) ? Language.GetText(category + "." + field.Name) : LocalizedText.Empty);
436 }
437 else if (field.Name == "None")
438 {
439 nameCache[num] = LocalizedText.Empty;
440 }
441 });
442 }
static long ToInt64(object? value)
Definition Convert.cs:1623
object? GetValue(object? obj)
static LocalizedText GetText(string key)
Definition Language.cs:10
static bool Exists(string key)
Definition Language.cs:45
static readonly LocalizedText Empty

References Terraria.Localization.LocalizedText.Empty, Terraria.Localization.Language.Exists(), Terraria.Localization.Language.GetText(), System.Reflection.FieldInfo.GetValue(), System.Reflection.MemberInfo.Name, and System.Convert.ToInt64().