PVZFusionTranslation/Source/Patches/Modes/Odyssey/TravelBuffOptionButton_Patch.cs

35 lines
1.5 KiB
C#

using HarmonyLib;
using PvZ_Fusion_Translator.AssetStore;
using static PvZ_Fusion_Translator.Patches.Modes.Odyssey.TravelMgr_Patch;
namespace PvZ_Fusion_Translator.Patches.Modes.Odyssey;
[HarmonyPatch(typeof(TravelBuffOptionButton))]
public static class TravelBuffOptionButton_Patch
{
[HarmonyPatch(nameof(TravelBuffOptionButton.Awake)), HarmonyPostfix]
public static void Awake(TravelBuffOptionButton __instance) => TranslateOptionButton(__instance);
[HarmonyPatch(nameof(TravelBuffOptionButton.OnAnimOver)), HarmonyPostfix]
public static void OnAnimOver(TravelBuffOptionButton __instance) => TranslateOptionButton(__instance);
public static void TranslateOptionButton(TravelBuffOptionButton button)
{
if (TravelBuffString.ContainsKey(button.introduce.text))
{
var translatedBuff = TravelBuffString[button.introduce.text];
button.introduce.text = AddBuffName(translatedBuff);
}
if (!Utils.CheckForUntranslatedText(button.introduce.text))
button.introduce.text = AddBuffName(button.introduce.text);
if (!TravelBuffString.ContainsKey(button.introduce.text) &&
Utils.CheckForUntranslatedText(button.introduce.text))
button.introduce.text = StringStore.TranslateText(button.introduce.text);
}
}
//List<string> buffSet = translatedTravelBuffs[buffLinks[__instance.buffType]];
//string buff = (__instance.show != null) ? buffSet[__instance.buffIndex] : StringStore.TranslateText("无");
//__instance.introduce.text = buff;