Implemented ITask

This commit is contained in:
2026-05-17 10:06:36 +02:00
parent e55aa6b258
commit 2ae5d28cc9
2 changed files with 32 additions and 2 deletions

View File

@@ -1,13 +1,24 @@
using System;
using UnityEngine;
public class InserKeysMinigameManager : MonoBehaviour
public class InserKeysMinigameManager : MonoBehaviour, ITask
{
public int correctIndex;
public bool isInputLocked = false;
public string TaskID { get; set; }
public TaskType TaskType { get; set; }
public string TaskName { get; set; }
public (double, double) TaskLocation { get; set; }
public bool IsCompleted { get; private set; }
private Action<ITask> _onCompleted;
private void Start()
{
correctIndex = Random.Range(0, 9);
correctIndex = UnityEngine.Random.Range(0, 9);
Debug.Log("The correct keyhole is: " + correctIndex);
}
@@ -15,4 +26,22 @@ public class InserKeysMinigameManager : MonoBehaviour
{
return index == correctIndex;
}
public void Initialize(System.Action<ITask> onCompleted)
{
IsCompleted = false;
_onCompleted = onCompleted;
}
public void ExitTask(System.Action<ITask> onExit)
{
onExit.Invoke(this);
}
public void Complete()
{
IsCompleted = true;
_onCompleted?.Invoke(this);
ExitTask(null);
}
}

View File

@@ -82,6 +82,7 @@ public class Key : MonoBehaviour
Debug.Log("You win");
if (winText != null) winText.SetActive(true);
manager.Complete();
}
}