using System; using BriarQueen.Data.Identifiers; using BriarQueen.Data.IO.Saves; using BriarQueen.Framework.Managers.IO; using BriarQueen.Framework.Managers.Player; using NaughtyAttributes; using UnityEngine; using VContainer; namespace BriarQueen.Framework.Managers { public class DebugManager : MonoBehaviour { private SaveManager _saveManager; private PlayerManager _playerManager; [Header("Current Loaded Save")] [SerializeField, ReadOnly] private SaveGame _currentSave; [Header("Interactive Debugging")] [SerializeField] private ItemKey _itemToGive; [Inject] public void Construct(SaveManager saveManager, PlayerManager playerManager) { _saveManager = saveManager; _playerManager = playerManager; } public void Start() { _saveManager.OnSaveGameLoaded += AttachSaveGame; } private void AttachSaveGame(SaveGame save) { _currentSave = save; } [Button] private void GiveItem() { if (_itemToGive == ItemKey.None) return; _playerManager.CollectItem(ItemIDs.Get(_itemToGive)); } } }