65 lines
1.5 KiB
C#
Raw Normal View History

using QSB.Events;
using QSB.Patches;
2021-02-24 10:45:25 +00:00
using QSB.TranslationSync.WorldObjects;
using QSB.WorldSync;
namespace QSB.TranslationSync.Patches
{
internal class SpiralPatches : QSBPatch
{
public override QSBPatchTypes Type => QSBPatchTypes.OnClientConnect;
public override void DoPatches()
{
2021-06-18 21:54:32 +01:00
Prefix(nameof(NomaiWallText_SetAsTranslated));
Prefix(nameof(NomaiComputer_SetAsTranslated));
Prefix(nameof(NomaiVesselComputer_SetAsTranslated));
}
2021-06-18 21:54:32 +01:00
public static bool NomaiWallText_SetAsTranslated(NomaiWallText __instance, int id)
{
if (__instance.IsTranslated(id))
{
return true;
}
2021-06-18 22:38:32 +01:00
2021-02-10 19:34:41 +00:00
QSBEventManager.FireEvent(
EventNames.QSBTextTranslated,
NomaiTextType.WallText,
2021-02-24 10:45:25 +00:00
QSBWorldSync.GetIdFromUnity<QSBWallText, NomaiWallText>(__instance),
id);
return true;
}
2021-06-18 21:54:32 +01:00
public static bool NomaiComputer_SetAsTranslated(NomaiComputer __instance, int id)
{
if (__instance.IsTranslated(id))
{
return true;
}
2021-06-18 22:38:32 +01:00
2021-02-10 19:34:41 +00:00
QSBEventManager.FireEvent(
EventNames.QSBTextTranslated,
NomaiTextType.Computer,
2021-02-24 10:45:25 +00:00
QSBWorldSync.GetIdFromUnity<QSBComputer, NomaiComputer>(__instance),
id);
return true;
}
2021-06-18 21:54:32 +01:00
public static bool NomaiVesselComputer_SetAsTranslated(NomaiVesselComputer __instance, int id)
{
if (__instance.IsTranslated(id))
{
return true;
}
2021-06-18 22:38:32 +01:00
2021-02-10 19:34:41 +00:00
QSBEventManager.FireEvent(
EventNames.QSBTextTranslated,
NomaiTextType.VesselComputer,
2021-02-24 10:45:25 +00:00
QSBWorldSync.GetIdFromUnity<QSBVesselComputer, NomaiVesselComputer>(__instance),
id);
return true;
}
}
}