Files
DSP_Mods/UXAssist/Functions/UI/AutoCruiseUI.cs
T

65 lines
1.8 KiB
C#

using UnityEngine;
using UXAssist.Common;
using UXAssist.UI;
namespace UXAssist.Functions.UI;
internal static class AutoCruiseUI
{
public static MyCheckButton ToggleAutoCruise;
public static void Init()
{
}
public static void Start()
{
}
public static void Uninit()
{
}
public static void OnInputUpdate()
{
}
public static void OnUpdate()
{
}
public static void InitToggleAutoCruiseCheckButton()
{
var lowGroup = GameObject.Find("UI Root/Overlay Canvas/In Game/Low Group");
ToggleAutoCruise = MyCheckButton.CreateCheckButton(0, 0, lowGroup.GetComponent<RectTransform>(), Patches.PlayerPatch.AutoCruiseEnabled).WithSize(160f, 40f);
var rectTrans = ToggleAutoCruise.rectTrans;
rectTrans.anchorMax = new Vector2(0.5f, 0f);
rectTrans.anchorMin = new Vector2(0.5f, 0f);
rectTrans.pivot = new Vector2(0.5f, 0f);
rectTrans.anchoredPosition3D = new Vector3(0f, 185f, 0f);
rectTrans.localScale = new Vector3(1f, 1f, 1f);
UpdateToggleAutoCruiseCheckButtonVisiblility();
ToggleAutoCruiseChecked();
ToggleAutoCruise.OnChecked += ToggleAutoCruiseChecked;
static void ToggleAutoCruiseChecked()
{
if (ToggleAutoCruise.Checked)
{
ToggleAutoCruise.SetLabelText("Disable auto-cruise");
}
else
{
ToggleAutoCruise.SetLabelText("Enable auto-cruise");
}
}
}
public static void UpdateToggleAutoCruiseCheckButtonVisiblility()
{
if (ToggleAutoCruise == null) return;
var active = Patches.PlayerPatch.AutoNavigationEnabled.Value && Patches.PlayerPatch.AutoNavigation.IndicatorAstroId > 0;
ToggleAutoCruise.gameObject.SetActive(active);
}
}