using UnityEngine; public class SteerBoatScript : MonoBehaviour { private Boat currntBoat; private bool wasSteeringClicked; private string infoText; private void Start() { currntBoat = Object.FindObjectOfType(); } private void Update() { if (GameManager.Instance.ChechIfPlayerShouldBeStoppedFromDoingAnything() || FScriptsHandler.Instance.m_HudManager.currentSteerBoatPanel == null) { return; } if (GameManager.Instance.player.GetButtonTimePressed("isStartStopSteringBoat") >= 1.0 && !wasSteeringClicked) { wasSteeringClicked = true; FScriptsHandler.Instance.m_HudManager.currentSteerBoatPanel.circleImage.fillAmount = 0f; if (currntBoat.currentPlayerCharacter.currentRod != null) { GameManager.Instance.ShowMessagePopup(LanguageManager.Instance.GetText("START_SEERING_BOAT_WITH_ROD"), FScriptsHandler.Instance.m_Canvas.transform); return; } string key = "R"; if (currntBoat.currentSitPointIndex == 0 && !currntBoat.currentPlayerCharacter.currentRod) { currntBoat.currentSitPointIndex = 1; infoText = LanguageManager.Instance.GetText("BOAT_STOP_STERING_KEY"); FScriptsHandler.Instance.m_HudManager.currentSteerBoatPanel.Set(infoText, key, 3); currntBoat.ShowHideUIPanel(); } else { currntBoat.currentSitPointIndex = 0; infoText = LanguageManager.Instance.GetText("BOAT_START_STERING_KEY"); FScriptsHandler.Instance.m_HudManager.currentSteerBoatPanel.Set(infoText, key, 3); currntBoat.ShowHideUIPanel(isHide: true); } } if ((bool)FScriptsHandler.Instance.m_HudManager.currentSteerBoatPanel && !wasSteeringClicked) { FScriptsHandler.Instance.m_HudManager.currentSteerBoatPanel.circleImage.fillAmount = (float)GameManager.Instance.player.GetButtonTimePressed("isStartStopSteringBoat"); } if (GameManager.Instance.player.GetButtonUp("isStartStopSteringBoat")) { wasSteeringClicked = false; } } private void OnTriggerEnter(Collider other) { if (LayerMask.NameToLayer("Player") == other.gameObject.layer) { Debug.Log("OnTriggerEnter"); FScriptsHandler.Instance.m_HudManager.ShowSteerBoatPanel(hide: false); } } private void OnTriggerExit(Collider other) { if (LayerMask.NameToLayer("Player") == other.gameObject.layer) { Debug.Log("OnTriggerExit"); FScriptsHandler.Instance.m_HudManager.ShowSteerBoatPanel(hide: true); } } }