Files
2025TapTapGameJam/Assets/Script/Gameplay/Facility/NumberSlotController.cs

54 lines
1.3 KiB
C#

using System.Collections.Generic;
using UnityEngine;
using Script.Gameplay.Connect;
namespace Script.Gameplay.Facility
{
// 号码枚举类型
public enum NumberType
{
Zero,
One,
Two,
Three,
Four,
Five,
// Six,
// Seven,
// Eight,
// Nine
}
// 号码槽
public class NumberSlotController : BaseFacilityController
{
[Header("号码槽设置")]
[SerializeField] private NumberType currentNumber = NumberType.Zero;
[SerializeField] private NumberType correctNumber = NumberType.One;
// 接收信号
public override void OnSignalReceived(bool active, GameObject sender)
{
base.OnSignalReceived(active, sender);
if (active)
{
SwitchToNextNumber();
}
}
// 切换到下一个号码
private void SwitchToNextNumber()
{
currentNumber = (NumberType)(((int)currentNumber + 1) % System.Enum.GetValues(typeof(NumberType)).Length);
CheckNumberAndSendSignal();
}
// 检查号码并发信号
private void CheckNumberAndSendSignal()
{
bool isCorrect = currentNumber == correctNumber;
SendSignal(isCorrect, this.gameObject);
}
}
}