using System; using System.Collections; using System.Collections.Generic; using UnityEngine; public class DiceRollHandler : MonoBehaviour { [SerializeField] private DiceView diceView; [SerializeField] private int diceTestValue = 0; private InputManager inputManager; private void OnMouseDown() { inputManager = inputManager == null ? InterfaceManager.Instance?.GetInterfaceInstance() : inputManager; // RollDiceOnClick(); } private void Update() { inputManager = inputManager == null ? InterfaceManager.Instance?.GetInterfaceInstance() : inputManager; } public void OnUserDiceRollComplete(int rolledVal) { SoundManager soundManager = InterfaceManager.Instance?.GetInterfaceInstance(); soundManager?.PlayGameSoundClip(SoundType.Dice); inputManager.SetDiceRollValue(rolledVal); } public void HandleDiceViewForUser() { if (!inputManager.GameplayManager.CanRollDiceForUser) return; diceView.Roll(onComplete: (rolledVal) => OnUserDiceRollComplete(rolledVal), false); } public void HandleDiceViewForBot(Action onComplete) { diceView.Roll(onComplete: (val) => onComplete?.Invoke(val), true); } }