62 lines
1.7 KiB
C#
62 lines
1.7 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
|
|
public class MainHouseDoorManager : MonoBehaviour
|
|
{
|
|
[Header("Manage Doors In Rooms")]
|
|
[Header("HOUSE")]
|
|
[SerializeField] private ManageDoorsInRoom[] manageDoorsInHouse;
|
|
|
|
[HideInInspector] public bool IsDraggingADoor;
|
|
|
|
private static MainHouseDoorManager _instance;
|
|
public static MainHouseDoorManager GetInstance() { return _instance; }
|
|
|
|
void Awake()
|
|
{
|
|
if (!_instance)
|
|
{
|
|
_instance = this;
|
|
}
|
|
}
|
|
|
|
public bool CanOpenDoor(int manageDoorsInHouseID, int doorID)
|
|
{
|
|
if (manageDoorsInHouse[manageDoorsInHouseID].door[doorID].CanOpenDoor)
|
|
{
|
|
return true;
|
|
}
|
|
else
|
|
{
|
|
return false;
|
|
}
|
|
}
|
|
|
|
public void LockDoor(int manageDoorsInHouseID, int doorID)
|
|
{
|
|
manageDoorsInHouse[manageDoorsInHouseID].door[doorID].LockDoor();
|
|
#region Debugging
|
|
Debug.Log("Locks door", manageDoorsInHouse[manageDoorsInHouseID].door[doorID]);
|
|
#endregion
|
|
}
|
|
|
|
public void UnlockDoor(int manageDoorsInHouseID, int doorID)
|
|
{
|
|
manageDoorsInHouse[manageDoorsInHouseID].door[doorID].UnlockDoor();
|
|
#region Debugging
|
|
Debug.Log("Unlocks door", manageDoorsInHouse[manageDoorsInHouseID].door[doorID]);
|
|
#endregion
|
|
}
|
|
|
|
public void OpenDoor(int manageDoorsInHouseID, int doorID, float doorLerpSpeed)
|
|
{
|
|
manageDoorsInHouse[manageDoorsInHouseID].door[doorID].OpenDoor(doorLerpSpeed);
|
|
}
|
|
|
|
public void CloseDoor(int manageDoorsInHouseID, int doorID, float doorLerpSpeed)
|
|
{
|
|
manageDoorsInHouse[manageDoorsInHouseID].door[doorID].CloseDoor(doorLerpSpeed);
|
|
}
|
|
}
|