Files
ConvenientHorror/Assets/Scripts/Door/Door.cs

60 lines
1.6 KiB
C#

using UnityEngine;
public class Door : MonoBehaviour
{
[SerializeField] private GameObject light;
[SerializeField] private Vector3 openPos;
[SerializeField] private Vector3 closePos;
[SerializeField] private float doorSpeed;
public bool isOpen;
public bool isOn;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
transform.position = openPos;
isOpen = true;
ChangeLights();
}
// Update is called once per frame
void Update()
{
if (isOpen) {
if (transform.position != openPos) {
// Damit sich die Tür smooth öffnen lässt.
if (Vector3.Distance(transform.position, openPos) <= 0.5f) {
transform.position = openPos;
}
else {
transform.position = Vector3.Lerp(transform.position, openPos, doorSpeed * Time.deltaTime);
}
}
} else {
if (transform.position != closePos) {
// Damit sich die Tür smooth öffnen lässt.
if (Vector3.Distance(transform.position, closePos) <= 0.5f) {
transform.position = closePos;
} else {
transform.position = Vector3.Lerp(transform.position, closePos, doorSpeed * Time.deltaTime);
}
}
}
}
public void ChangeLights() {
isOn = !isOn;
if (isOn) {
light.SetActive(true);
}
else {
light.SetActive(false);
}
}
}