Files
AppleHillsProduction/Assets/Scripts/StateMachines/Quarry/SoundBird/IdleState.cs
2025-11-24 11:41:47 +01:00

46 lines
1.3 KiB
C#

using Core.SaveLoad;
using Interactions;
using UnityEngine;
namespace StateMachines.Quarry.SoundBird
{
/// <summary>
/// Idle state for the Sound Bird - bird is landed and slot is interactable
/// </summary>
public class IdleState : AppleState
{
[Header("Slot Reference")]
[Tooltip("The item slot that should be enabled when the bird is idle")]
[SerializeField] private ItemSlot itemSlot;
public override void OnEnterState()
{
// Enable the slot when the bird lands (enters idle)
if (itemSlot != null)
{
itemSlot.SetActive(true);
Debug.Log($"[IdleState] Enabled ItemSlot: {itemSlot.gameObject.name}");
}
else
{
Debug.LogWarning("[IdleState] ItemSlot reference is null - cannot enable slot");
}
}
private void OnDisable()
{
// Disable the slot when the bird takes off
if (itemSlot != null)
{
itemSlot.SetActive(false);
Debug.Log($"[IdleState] Disabled ItemSlot: {itemSlot.gameObject.name}");
}
else
{
Debug.LogWarning("[IdleState] ItemSlot reference is null - cannot disable slot");
}
}
}
}