49 lines
1.8 KiB
C#
49 lines
1.8 KiB
C#
using UnityEngine;
|
||
|
||
namespace Beyond
|
||
{
|
||
public class FinishTreeGrowthStep : MonoBehaviour
|
||
{
|
||
public BaseStepController baseStepController; // Odwo<77>anie do BaseStepController
|
||
public TreeSpotController treeSpotController; // Odwo<77>anie do kontrolera drzewa
|
||
|
||
private bool isTreeFullyGrown = false; // Flaga wskazuj<75>ca, czy drzewo jest w pe<70>ni wyro<72>ni<6E>te
|
||
|
||
private void Start()
|
||
{
|
||
// Subskrybuje wydarzenie rozpocz<63>cia kroku tutoriala
|
||
baseStepController.OnStarted += OnStepStarted;
|
||
|
||
// Dodaje warunek do BaseStepController, kt<6B>ry okre<72>la, czy krok mo<6D>e zosta<74> zako<6B>czony
|
||
baseStepController.ConditionsAreMet += () => isTreeFullyGrown;
|
||
|
||
// Subskrybuje zdarzenie zmiany stanu drzewa
|
||
if (treeSpotController != null)
|
||
{
|
||
treeSpotController.onStateChanged.AddListener(OnTreeStateChanged);
|
||
}
|
||
|
||
}
|
||
|
||
private void OnStepStarted()
|
||
{
|
||
// Ustawiamy flag<61> na false przy rozpocz<63>ciu kroku
|
||
isTreeFullyGrown = false;
|
||
//replenish faith so we can grow tree for sure
|
||
PlayerAttribute faithAttribute = Player.Instance.GetAttribute("Faith");
|
||
faithAttribute.AttributeCurrentValue = faithAttribute.AttributeMaxValue;
|
||
}
|
||
|
||
private void OnTreeStateChanged(TreeState newState)
|
||
{
|
||
// Sprawdzamy, czy drzewo osi<73>gn<67>o stan w pe<70>ni wyro<72>ni<6E>ty
|
||
if (newState == TreeState.FullyGrown)
|
||
{
|
||
isTreeFullyGrown = true;
|
||
Debug.Log("Drzewo jest w pe<70>ni wyro<72>ni<6E>te. Zako<6B>czenie tutoriala.");
|
||
baseStepController.ForceStepFinished(); // Ko<4B>czymy krok i wy<77><79>czamy tutorial
|
||
}
|
||
}
|
||
}
|
||
}
|