44 lines
1.3 KiB
C#
44 lines
1.3 KiB
C#
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>() : inputManager;
|
|
if (!inputManager.GameplayManager.CanRollDice) return;
|
|
|
|
RollDiceOnClick();
|
|
}
|
|
|
|
private void Update()
|
|
{
|
|
inputManager = inputManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<InputManager>() : inputManager;
|
|
if (!inputManager.GameplayManager.CanRollDice) return;
|
|
|
|
if (Input.GetKeyDown(KeyCode.Space))
|
|
RollDiceOnClick();
|
|
}
|
|
|
|
private void RollDiceOnClick()
|
|
{
|
|
SoundManager soundManager = InterfaceManager.Instance?.GetInterfaceInstance<SoundManager>();
|
|
soundManager?.PlayGameSoundClip(SoundType.Dice);
|
|
|
|
int currentRolledVal = // Random.Range(1, Ludo_3D_Constants.Max_Dice_Rolls + 1);
|
|
diceTestValue != 0 ? diceTestValue : Random.Range(1, Ludo_3D_Constants.Max_Dice_Rolls + 1);
|
|
inputManager.SetDiceRollValue(currentRolledVal);
|
|
}
|
|
|
|
public void HandleDiceView()
|
|
{
|
|
diceView.Roll();
|
|
}
|
|
}
|