Esempio n. 1
0
 static void ReplaceTooltip(ItemTooltip[] tooltipArray, string newTooltip, short itemID)
 {
     ReplacedTooltips.Add(new ReplacedTooltipLine(tooltipArray[itemID], itemID));
     if (newTooltip == null)
     {
         tooltipArray[itemID] = ItemTooltip.None;
     }
     else
     {
         tooltipArray[itemID] = ItemTooltip.FromLanguageKey(newTooltip);
     }
 }
Esempio n. 2
0
        public static void EditTooltips(LanguageManager manager)
        {
            var bindFlags     = BindingFlags.Static | BindingFlags.NonPublic;
            var tooltipsField = typeof(Lang).GetField("_itemTooltipCache", bindFlags);
            var tooltips      = (ItemTooltip[])tooltipsField.GetValue(null);

            if (Config.ObsidianArmorTweak)
            {
                tooltips[ItemID.ObsidianHelm]  = ItemTooltip.FromLanguageKey("Mods.VanillaTweaks.ItemTooltip.ObsidianArmor");
                tooltips[ItemID.ObsidianShirt] = ItemTooltip.FromLanguageKey("Mods.VanillaTweaks.ItemTooltip.ObsidianArmor");
                tooltips[ItemID.ObsidianPants] = ItemTooltip.FromLanguageKey("Mods.VanillaTweaks.ItemTooltip.ObsidianArmor");
            }
            if (Config.SwatHelmetTweak)
            {
                if (VanillaTweaks.MiscellaniaLoaded && ModLoader.GetMod("GoldensMisc").ItemType("ReinforcedVest") > 0)
                {
                    tooltips[ItemID.SWATHelmet] = ItemTooltip.FromLanguageKey("Mods.VanillaTweaks.MiscellaniaTooltip.SwatHelmet");
                }
                else
                {
                    tooltips[ItemID.SWATHelmet] = ItemTooltip.FromLanguageKey("Mods.VanillaTweaks.ItemTooltip.SwatHelmet");
                }
            }
            if (Config.MeteorArmorDamageTweak)
            {
                tooltips[ItemID.MeteorHelmet]   = ItemTooltip.None;
                tooltips[ItemID.MeteorSuit]     = ItemTooltip.None;
                tooltips[ItemID.MeteorLeggings] = ItemTooltip.None;
            }
            if (Config.EskimoArmorTweak)
            {
                tooltips[ItemID.EskimoHood]  = ItemTooltip.FromLanguageKey("Mods.VanillaTweaks.ItemTooltip.Eskimo");
                tooltips[ItemID.EskimoCoat]  = ItemTooltip.FromLanguageKey("Mods.VanillaTweaks.ItemTooltip.Eskimo");
                tooltips[ItemID.EskimoPants] = ItemTooltip.FromLanguageKey("Mods.VanillaTweaks.ItemTooltip.Eskimo");
            }
            if (Config.PharaohSetTweak)
            {
                tooltips[ItemID.PharaohsMask] = ItemTooltip.FromLanguageKey("Mods.VanillaTweaks.ItemTooltip.Pharaoh");
                tooltips[ItemID.PharaohsRobe] = ItemTooltip.FromLanguageKey("Mods.VanillaTweaks.ItemTooltip.Pharaoh");
            }
            if (Config.CrimsonArmorTweak)
            {
                tooltips[ItemID.CrimsonHelmet]    = ItemTooltip.FromLanguageKey("Mods.VanillaTweaks.ItemTooltip.Crimson");
                tooltips[ItemID.CrimsonScalemail] = ItemTooltip.FromLanguageKey("Mods.VanillaTweaks.ItemTooltip.Crimson");
                tooltips[ItemID.CrimsonGreaves]   = ItemTooltip.FromLanguageKey("Mods.VanillaTweaks.ItemTooltip.Crimson");
            }
        }
Esempio n. 3
0
        public static void RefreshModLanguage(GameCulture culture)
        {
            Dictionary <string, LocalizedText> dict = LanguageManager.Instance._localizedTexts;

            foreach (ModItem item in ItemLoader.items)
            {
                LocalizedText text = new LocalizedText(item.DisplayName.Key, item.DisplayName.GetTranslation(culture));
                Lang._itemNameCache[item.item.type] = SetLocalizedText(dict, text);
                text = new LocalizedText(item.Tooltip.Key, item.Tooltip.GetTranslation(culture));
                if (text.Value != null)
                {
                    text = SetLocalizedText(dict, text);
                    Lang._itemTooltipCache[item.item.type] = ItemTooltip.FromLanguageKey(text.Key);
                }
            }
            foreach (ModPrefix prefix in ModPrefix.prefixes)
            {
                LocalizedText text = new LocalizedText(prefix.DisplayName.Key, prefix.DisplayName.GetTranslation(culture));
                Lang.prefix[prefix.Type] = SetLocalizedText(dict, text);
            }
            foreach (var keyValuePair in MapLoader.tileEntries)
            {
                foreach (MapEntry entry in keyValuePair.Value)
                {
                    if (entry.translation != null)
                    {
                        LocalizedText text = new LocalizedText(entry.translation.Key, entry.translation.GetTranslation(culture));
                        SetLocalizedText(dict, text);
                    }
                }
            }
            foreach (var keyValuePair in MapLoader.wallEntries)
            {
                foreach (MapEntry entry in keyValuePair.Value)
                {
                    if (entry.translation != null)
                    {
                        LocalizedText text = new LocalizedText(entry.translation.Key, entry.translation.GetTranslation(culture));
                        SetLocalizedText(dict, text);
                    }
                }
            }
            foreach (ModProjectile proj in ProjectileLoader.projectiles)
            {
                LocalizedText text = new LocalizedText(proj.DisplayName.Key, proj.DisplayName.GetTranslation(culture));
                Lang._projectileNameCache[proj.projectile.type] = SetLocalizedText(dict, text);
            }
            foreach (ModNPC npc in NPCLoader.npcs)
            {
                LocalizedText text = new LocalizedText(npc.DisplayName.Key, npc.DisplayName.GetTranslation(culture));
                Lang._npcNameCache[npc.npc.type] = SetLocalizedText(dict, text);
            }
            foreach (ModBuff buff in BuffLoader.buffs)
            {
                LocalizedText text = new LocalizedText(buff.DisplayName.Key, buff.DisplayName.GetTranslation(culture));
                Lang._buffNameCache[buff.Type] = SetLocalizedText(dict, text);
                text = new LocalizedText(buff.Description.Key, buff.Description.GetTranslation(culture));
                Lang._buffDescriptionCache[buff.Type] = SetLocalizedText(dict, text);
            }
            foreach (Mod mod in loadedMods)
            {
                foreach (ModTranslation translation in mod.translations.Values)
                {
                    LocalizedText text = new LocalizedText(translation.Key, translation.GetTranslation(culture));
                    SetLocalizedText(dict, text);
                }
            }
            LanguageManager.Instance.ProcessCopyCommandsInTexts();
        }
Esempio n. 4
0
 public static void InitializeLegacyLocalization()
 {
     Lang.FillNameCacheArray <PrefixID, int>("Prefix", Lang.prefix, false);
     for (int index = 0; index < Lang.gen.Length; ++index)
     {
         Lang.gen[index] = Language.GetText("LegacyWorldGen." + (object)index);
     }
     for (int index = 0; index < Lang.menu.Length; ++index)
     {
         Lang.menu[index] = Language.GetText("LegacyMenu." + (object)index);
     }
     for (int index = 0; index < Lang.inter.Length; ++index)
     {
         Lang.inter[index] = Language.GetText("LegacyInterface." + (object)index);
     }
     for (int index = 0; index < Lang.misc.Length; ++index)
     {
         Lang.misc[index] = Language.GetText("LegacyMisc." + (object)index);
     }
     for (int index = 0; index < Lang.mp.Length; ++index)
     {
         Lang.mp[index] = Language.GetText("LegacyMultiplayer." + (object)index);
     }
     for (int index = 0; index < Lang.tip.Length; ++index)
     {
         Lang.tip[index] = Language.GetText("LegacyTooltip." + (object)index);
     }
     for (int index = 0; index < Lang.chestType.Length; ++index)
     {
         Lang.chestType[index] = Language.GetText("LegacyChestType." + (object)index);
     }
     for (int index = 0; index < Lang.chestType2.Length; ++index)
     {
         Lang.chestType2[index] = Language.GetText("LegacyChestType2." + (object)index);
     }
     for (int index = 0; index < Lang.dresserType.Length; ++index)
     {
         Lang.dresserType[index] = Language.GetText("LegacyDresserType." + (object)index);
     }
     Lang.FillNameCacheArray <ItemID, short>("ItemName", Lang._itemNameCache, false);
     Lang.FillNameCacheArray <ProjectileID, short>("ProjectileName", Lang._projectileNameCache, false);
     Lang.FillNameCacheArray <NPCID, short>("NPCName", Lang._npcNameCache, false);
     Lang.FillNameCacheArray <BuffID, int>("BuffName", Lang._buffNameCache, false);
     Lang.FillNameCacheArray <BuffID, int>("BuffDescription", Lang._buffDescriptionCache, false);
     for (int id = -65; id < 0; ++id)
     {
         Lang._negativeNpcNameCache[-id - 1] = Lang._npcNameCache[NPCID.FromNetId(id)];
     }
     Lang._negativeNpcNameCache[0]  = Language.GetText("NPCName.Slimeling");
     Lang._negativeNpcNameCache[1]  = Language.GetText("NPCName.Slimer2");
     Lang._negativeNpcNameCache[2]  = Language.GetText("NPCName.GreenSlime");
     Lang._negativeNpcNameCache[3]  = Language.GetText("NPCName.Pinky");
     Lang._negativeNpcNameCache[4]  = Language.GetText("NPCName.BabySlime");
     Lang._negativeNpcNameCache[5]  = Language.GetText("NPCName.BlackSlime");
     Lang._negativeNpcNameCache[6]  = Language.GetText("NPCName.PurpleSlime");
     Lang._negativeNpcNameCache[7]  = Language.GetText("NPCName.RedSlime");
     Lang._negativeNpcNameCache[8]  = Language.GetText("NPCName.YellowSlime");
     Lang._negativeNpcNameCache[9]  = Language.GetText("NPCName.JungleSlime");
     Lang._negativeNpcNameCache[53] = Language.GetText("NPCName.SmallRainZombie");
     Lang._negativeNpcNameCache[54] = Language.GetText("NPCName.BigRainZombie");
     ItemTooltip.AddGlobalProcessor((TooltipProcessor)(tooltip =>
     {
         if (tooltip.Contains("<right>"))
         {
             InputMode index = InputMode.XBoxGamepad;
             if (PlayerInput.UsingGamepad)
             {
                 index = InputMode.XBoxGamepadUI;
             }
             if (index == InputMode.XBoxGamepadUI)
             {
                 string newValue = PlayerInput.BuildCommand("", true, PlayerInput.CurrentProfile.InputModes[index].KeyStatus["MouseRight"]).Replace(": ", "");
                 tooltip = tooltip.Replace("<right>", newValue);
             }
             else
             {
                 tooltip = tooltip.Replace("<right>", Language.GetTextValue("Controls.RightClick"));
             }
         }
         return(tooltip);
     }));
     for (int index = 0; index < Lang._itemTooltipCache.Length; ++index)
     {
         Lang._itemTooltipCache[index] = ItemTooltip.None;
     }
     ((IEnumerable <FieldInfo>) typeof(ItemID).GetFields(BindingFlags.Static | BindingFlags.Public)).Where <FieldInfo>((Func <FieldInfo, bool>)(f => f.FieldType == typeof(short))).ToList <FieldInfo>().ForEach((Action <FieldInfo>)(field =>
     {
         short num = (short)field.GetValue((object)null);
         if ((int)num <= 0 || (int)num >= Lang._itemTooltipCache.Length)
         {
             return;
         }
         Lang._itemTooltipCache[(int)num] = ItemTooltip.FromLanguageKey("ItemTooltip." + field.Name);
     }));
 }
Esempio n. 5
0
 public static void InitializeLegacyLocalization()
 {
     FillNameCacheArray <PrefixID, int>("Prefix", prefix);
     for (int i = 0; i < gen.Length; i++)
     {
         gen[i] = Language.GetText("LegacyWorldGen." + i);
     }
     for (int j = 0; j < menu.Length; j++)
     {
         menu[j] = Language.GetText("LegacyMenu." + j);
     }
     for (int k = 0; k < inter.Length; k++)
     {
         inter[k] = Language.GetText("LegacyInterface." + k);
     }
     for (int l = 0; l < misc.Length; l++)
     {
         misc[l] = Language.GetText("LegacyMisc." + l);
     }
     for (int m = 0; m < mp.Length; m++)
     {
         mp[m] = Language.GetText("LegacyMultiplayer." + m);
     }
     for (int n = 0; n < tip.Length; n++)
     {
         tip[n] = Language.GetText("LegacyTooltip." + n);
     }
     for (int num = 0; num < chestType.Length; num++)
     {
         chestType[num] = Language.GetText("LegacyChestType." + num);
     }
     for (int num2 = 0; num2 < chestType2.Length; num2++)
     {
         chestType2[num2] = Language.GetText("LegacyChestType2." + num2);
     }
     for (int num3 = 0; num3 < dresserType.Length; num3++)
     {
         dresserType[num3] = Language.GetText("LegacyDresserType." + num3);
     }
     FillNameCacheArray <ItemID, short>("ItemName", _itemNameCache);
     FillNameCacheArray <ProjectileID, short>("ProjectileName", _projectileNameCache);
     FillNameCacheArray <NPCID, short>("NPCName", _npcNameCache);
     FillNameCacheArray <BuffID, int>("BuffName", _buffNameCache);
     FillNameCacheArray <BuffID, int>("BuffDescription", _buffDescriptionCache);
     FillNameCacheArray <EmoteID, int>("EmojiName", _emojiNameCache, leaveMissingEntriesBlank: true);
     for (int num4 = -65; num4 < 0; num4++)
     {
         _negativeNpcNameCache[-num4 - 1] = _npcNameCache[NPCID.FromNetId(num4)];
     }
     _negativeNpcNameCache[0]  = Language.GetText("NPCName.Slimeling");
     _negativeNpcNameCache[1]  = Language.GetText("NPCName.Slimer2");
     _negativeNpcNameCache[2]  = Language.GetText("NPCName.GreenSlime");
     _negativeNpcNameCache[3]  = Language.GetText("NPCName.Pinky");
     _negativeNpcNameCache[4]  = Language.GetText("NPCName.BabySlime");
     _negativeNpcNameCache[5]  = Language.GetText("NPCName.BlackSlime");
     _negativeNpcNameCache[6]  = Language.GetText("NPCName.PurpleSlime");
     _negativeNpcNameCache[7]  = Language.GetText("NPCName.RedSlime");
     _negativeNpcNameCache[8]  = Language.GetText("NPCName.YellowSlime");
     _negativeNpcNameCache[9]  = Language.GetText("NPCName.JungleSlime");
     _negativeNpcNameCache[53] = Language.GetText("NPCName.SmallRainZombie");
     _negativeNpcNameCache[54] = Language.GetText("NPCName.BigRainZombie");
     ItemTooltip.AddGlobalProcessor(delegate(string tooltip)
     {
         if (tooltip.Contains("<right>"))
         {
             InputMode inputMode = InputMode.XBoxGamepad;
             if (PlayerInput.UsingGamepad)
             {
                 inputMode = InputMode.XBoxGamepadUI;
             }
             if (inputMode == InputMode.XBoxGamepadUI)
             {
                 KeyConfiguration keyConfiguration = PlayerInput.CurrentProfile.InputModes[inputMode];
                 string text = PlayerInput.BuildCommand("", true, keyConfiguration.KeyStatus["MouseRight"]);
                 text        = text.Replace(": ", "");
                 tooltip     = tooltip.Replace("<right>", text);
             }
             else
             {
                 tooltip = tooltip.Replace("<right>", Language.GetTextValue("Controls.RightClick"));
             }
         }
         if (tooltip.Contains("<left>"))
         {
             InputMode inputMode2 = InputMode.XBoxGamepad;
             if (PlayerInput.UsingGamepad)
             {
                 inputMode2 = InputMode.XBoxGamepadUI;
             }
             if (inputMode2 == InputMode.XBoxGamepadUI)
             {
                 KeyConfiguration keyConfiguration2 = PlayerInput.CurrentProfile.InputModes[inputMode2];
                 string text2 = PlayerInput.BuildCommand("", true, keyConfiguration2.KeyStatus["MouseLeft"]);
                 text2        = text2.Replace(": ", "");
                 tooltip      = tooltip.Replace("<left>", text2);
             }
             else
             {
                 tooltip = tooltip.Replace("<left>", Language.GetTextValue("Controls.LeftClick"));
             }
         }
         return(tooltip);
     });
     for (int num5 = 0; num5 < _itemTooltipCache.Length; num5++)
     {
         _itemTooltipCache[num5] = ItemTooltip.None;
     }
     (from f in typeof(ItemID).GetFields(BindingFlags.Static | BindingFlags.Public)
      where f.FieldType == typeof(short)
      select f).ToList().ForEach(delegate(FieldInfo field)
     {
         short num6 = (short)field.GetValue(null);
         if (num6 > 0 && num6 < _itemTooltipCache.Length)
         {
             _itemTooltipCache[num6] = ItemTooltip.FromLanguageKey("ItemTooltip." + field.Name);
         }
     });
 }
Esempio n. 6
0
 public static void InitializeLegacyLocalization()
 {
     FillNameCacheArray <PrefixID, int>("Prefix", prefix);
     for (int i = 0; i < gen.Length; i++)
     {
         gen[i] = Language.GetText("LegacyWorldGen." + i);
     }
     for (int j = 0; j < menu.Length; j++)
     {
         menu[j] = Language.GetText("LegacyMenu." + j);
     }
     for (int k = 0; k < inter.Length; k++)
     {
         inter[k] = Language.GetText("LegacyInterface." + k);
     }
     for (int l = 0; l < misc.Length; l++)
     {
         misc[l] = Language.GetText("LegacyMisc." + l);
     }
     for (int m = 0; m < mp.Length; m++)
     {
         mp[m] = Language.GetText("LegacyMultiplayer." + m);
     }
     for (int n = 0; n < tip.Length; n++)
     {
         tip[n] = Language.GetText("LegacyTooltip." + n);
     }
     for (int num = 0; num < chestType.Length; num++)
     {
         chestType[num] = Language.GetText("LegacyChestType." + num);
     }
     for (int num2 = 0; num2 < dresserType.Length; num2++)
     {
         dresserType[num2] = Language.GetText("LegacyDresserType." + num2);
     }
     FillNameCacheArray <ItemID, short>("ItemName", _itemNameCache);
     FillNameCacheArray <MobileLangID, short>("Mobile", mobile);
     for (int num3 = 0; num3 < _negativeItemNameCache.Length; num3++)
     {
         _negativeItemNameCache[num3] = LocalizedText.Empty;
     }
     _negativeItemNameCache[23] = Language.GetText("ItemName.YellowPhasesaber");
     _negativeItemNameCache[22] = Language.GetText("ItemName.WhitePhasesaber");
     _negativeItemNameCache[21] = Language.GetText("ItemName.PurplePhasesaber");
     _negativeItemNameCache[20] = Language.GetText("ItemName.GreenPhasesaber");
     _negativeItemNameCache[19] = Language.GetText("ItemName.RedPhasesaber");
     _negativeItemNameCache[18] = Language.GetText("ItemName.BluePhasesaber");
     FillNameCacheArray <ProjectileID, short>("ProjectileName", _projectileNameCache);
     FillNameCacheArray <NPCID, short>("NPCName", _npcNameCache);
     FillNameCacheArray <BuffID, int>("BuffName", _buffNameCache);
     FillNameCacheArray <BuffID, int>("BuffDescription", _buffDescriptionCache);
     for (int num4 = -65; num4 < 0; num4++)
     {
         _negativeNpcNameCache[-num4 - 1] = _npcNameCache[NPCID.FromNetId(num4)];
     }
     _negativeNpcNameCache[0]  = Language.GetText("NPCName.Slimeling");
     _negativeNpcNameCache[1]  = Language.GetText("NPCName.Slimer2");
     _negativeNpcNameCache[2]  = Language.GetText("NPCName.GreenSlime");
     _negativeNpcNameCache[3]  = Language.GetText("NPCName.Pinky");
     _negativeNpcNameCache[4]  = Language.GetText("NPCName.BabySlime");
     _negativeNpcNameCache[5]  = Language.GetText("NPCName.BlackSlime");
     _negativeNpcNameCache[6]  = Language.GetText("NPCName.PurpleSlime");
     _negativeNpcNameCache[7]  = Language.GetText("NPCName.RedSlime");
     _negativeNpcNameCache[8]  = Language.GetText("NPCName.YellowSlime");
     _negativeNpcNameCache[9]  = Language.GetText("NPCName.JungleSlime");
     _negativeNpcNameCache[53] = Language.GetText("NPCName.SmallRainZombie");
     _negativeNpcNameCache[54] = Language.GetText("NPCName.BigRainZombie");
     ItemTooltip.AddGlobalProcessor(delegate(string tooltip)
     {
         if (tooltip.Contains("<right>"))
         {
             tooltip = tooltip.Replace("<right>", Language.GetTextValue("Controls.RightClick"));
         }
         return(tooltip);
     });
     for (int num5 = 0; num5 < _itemTooltipCache.Length; num5++)
     {
         _itemTooltipCache[num5] = ItemTooltip.None;
     }
     for (int num6 = 0; num6 < _negativeItemTooltipCache.Length; num6++)
     {
         _negativeItemTooltipCache[num6] = ItemTooltip.None;
     }
     (from f in typeof(ItemID).GetFields(BindingFlags.Static | BindingFlags.Public)
      where f.FieldType == typeof(short)
      select f).ToList().ForEach(delegate(FieldInfo field)
     {
         short num8 = (short)field.GetValue(null);
         if (num8 > 0 && num8 < _itemTooltipCache.Length)
         {
             _itemTooltipCache[num8] = ItemTooltip.FromLanguageKey("ItemTooltip." + field.Name);
         }
     });
     _negativeItemTooltipCache[23] = ItemTooltip.FromLanguageKey("ItemTooltip.YellowPhasesaber");
     _negativeItemTooltipCache[22] = ItemTooltip.FromLanguageKey("ItemTooltip.WhitePhasesaber");
     _negativeItemTooltipCache[21] = ItemTooltip.FromLanguageKey("ItemTooltip.PurplePhasesaber");
     _negativeItemTooltipCache[20] = ItemTooltip.FromLanguageKey("ItemTooltip.GreenPhasesaber");
     _negativeItemTooltipCache[19] = ItemTooltip.FromLanguageKey("ItemTooltip.RedPhasesaber");
     _negativeItemTooltipCache[18] = ItemTooltip.FromLanguageKey("ItemTooltip.BluePhasesaber");
     for (int num7 = 0; num7 < Recipe.numRecipes; num7++)
     {
         Main.recipe[num7].createItem.RebuildTooltip();
     }
 }