Scriptum/Assets/Scripts/REFACTORING/Story/OutsideWizard/WizardLetter.cs
2023-01-15 01:14:18 +01:00

53 lines
1.6 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using UnityEngine;
[RequireComponent(typeof(WindowController))]
class WizardLetter : MonoBehaviour
{
public Item RequiredObject;
public bool decided = false;
public void Start()
{
}
private void Update()
{
if(!decided)
{
if (InventoryUIManager.Instance != null && InventoryUIManager.Instance.FindItemInWarehouseByName(RequiredObject.name).Count > 0)
{
if (gameObject.GetComponent<DoorBehaviour>())
gameObject.GetComponent<DoorBehaviour>().isEnabled = false;
if (gameObject.GetComponent<AnimatedDoorBehaviour>())
gameObject.GetComponent<AnimatedDoorBehaviour>().isEnabled = false;
decided = true;
}
}
// DANGEROUS - we make sure that dorwont be opened by force - work only when on the scene there is only one door!!!
if (gameObject.GetComponent<AnimatedDoorBehaviour>().isEnabled == false)
TriggerDoor.ableToOpen = false;
}
private void OnTriggerEnter2D(Collider2D collision)
{
if (!gameObject.GetComponent<WindowController>().IsOpened() && InventoryUIManager.Instance.FindItemInWarehouseByName(RequiredObject.name).Count > 0)
gameObject.GetComponent<WindowController>().OpenPanel();
}
private void OnTriggerExit2D(Collider2D collision)
{
if (gameObject.GetComponent<WindowController>().IsOpened())
gameObject.GetComponent<WindowController>().DestroyPanel();
}
}