Added Game Logic
Added chest logic for key press Added Door openning script Openning doors on start (for now) Added UI for chest openning
This commit is contained in:
48
3D blobici/Assets/Prefabs/Scripts/DoorAnimation.cs
Normal file
48
3D blobici/Assets/Prefabs/Scripts/DoorAnimation.cs
Normal file
@@ -0,0 +1,48 @@
|
||||
using UnityEngine;
|
||||
|
||||
public class DoorAnimation : MonoBehaviour
|
||||
{
|
||||
[SerializeField] private GameObject door;
|
||||
[SerializeField] private float openSpeed = 2.0f;
|
||||
[SerializeField] private float closeSpeed = 2.0f;
|
||||
private bool isOpen = false;
|
||||
private Vector3 closedPosition;
|
||||
private Vector3 openPosition;
|
||||
|
||||
void Start()
|
||||
{
|
||||
closedPosition = door.transform.position;
|
||||
openPosition = new Vector3(door.transform.position.x, door.transform.position.y - 4.6f, door.transform.position.z);
|
||||
}
|
||||
|
||||
public void ToggleDoor()
|
||||
{
|
||||
if (isOpen)
|
||||
{
|
||||
StartCoroutine(CloseDoor());
|
||||
}
|
||||
else
|
||||
{
|
||||
StartCoroutine(OpenDoor());
|
||||
}
|
||||
}
|
||||
private System.Collections.IEnumerator OpenDoor()
|
||||
{
|
||||
while (Vector3.Distance(door.transform.position, openPosition) > 0.01f)
|
||||
{
|
||||
door.transform.position = Vector3.MoveTowards(door.transform.position, openPosition, openSpeed * Time.deltaTime);
|
||||
yield return null;
|
||||
}
|
||||
isOpen = true;
|
||||
}
|
||||
|
||||
private System.Collections.IEnumerator CloseDoor()
|
||||
{
|
||||
while (Vector3.Distance(door.transform.position, closedPosition) > 0.01f)
|
||||
{
|
||||
door.transform.position = Vector3.MoveTowards(door.transform.position, closedPosition, closeSpeed * Time.deltaTime);
|
||||
yield return null;
|
||||
}
|
||||
isOpen = false;
|
||||
}
|
||||
}
|
||||
2
3D blobici/Assets/Prefabs/Scripts/DoorAnimation.cs.meta
Normal file
2
3D blobici/Assets/Prefabs/Scripts/DoorAnimation.cs.meta
Normal file
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e52671dd81cd5334e9cfa7610de4c062
|
||||
Reference in New Issue
Block a user