59 lines
1.7 KiB
C#
59 lines
1.7 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
|
|
public class WindowsManager : MonoBehaviour
|
|
{
|
|
[Header("Manage windows In Rooms")]
|
|
[Header("Loops")]
|
|
[SerializeField] private ManageWindowsInRoom[] manageWindowsInLoop;
|
|
|
|
private static WindowsManager _instance;
|
|
public static WindowsManager GetInstance() { return _instance; }
|
|
|
|
void Awake()
|
|
{
|
|
if (!_instance)
|
|
{
|
|
_instance = this;
|
|
}
|
|
}
|
|
|
|
public bool WindowIsOpen(int manageWindowsInLoopID, int windowID)
|
|
{
|
|
if (manageWindowsInLoop[manageWindowsInLoopID].window[windowID].WindowIsOpen)
|
|
{
|
|
return true;
|
|
}
|
|
else
|
|
{
|
|
return false;
|
|
}
|
|
}
|
|
|
|
public void LockWindow(int manageWindowsInLoopID, int windowID)
|
|
{
|
|
manageWindowsInLoop[manageWindowsInLoopID].window[windowID].LockWindow();
|
|
#region Debugging
|
|
Debug.Log("Locks window", manageWindowsInLoop[manageWindowsInLoopID].window[windowID]);
|
|
#endregion
|
|
}
|
|
|
|
public void UnlockWindow(int manageWindowsInLoopID, int windowID)
|
|
{
|
|
manageWindowsInLoop[manageWindowsInLoopID].window[windowID].UnlockWindow();
|
|
#region Debugging
|
|
Debug.Log("Unlocks window", manageWindowsInLoop[manageWindowsInLoopID].window[windowID]);
|
|
#endregion
|
|
}
|
|
|
|
|
|
public void OpenWindow(int manageWindowsInLoopID, int windowID, float windowLerpTime)
|
|
{
|
|
manageWindowsInLoop[manageWindowsInLoopID].window[windowID].OpenThisWindow(windowLerpTime);
|
|
#region Debugging
|
|
Debug.Log("Window opened", manageWindowsInLoop[manageWindowsInLoopID].window[windowID]);
|
|
#endregion
|
|
}
|
|
}
|