83 lines
2.0 KiB
C#
83 lines
2.0 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using UnityEngine.SceneManagement;
|
|
using System;
|
|
using System.Diagnostics;
|
|
using Debug = UnityEngine.Debug;
|
|
|
|
public class ChangeScene : MonoBehaviour
|
|
{
|
|
float x, y, z;
|
|
private Animator myanim;
|
|
|
|
|
|
|
|
public void MoveToScene(int sceneID)
|
|
{
|
|
SceneManager.LoadScene(sceneID);
|
|
}
|
|
|
|
|
|
public void MoveToSceneFirst(int sceneID)
|
|
{
|
|
//Scene current = SceneManager.GetActiveScene();
|
|
//Debug.Log(PlayerPrefs.HasKey("HER"));
|
|
if (!PlayerPrefs.HasKey("SceneSaved"))
|
|
{
|
|
SceneManager.LoadScene(5);
|
|
}
|
|
else
|
|
{
|
|
SceneManager.LoadScene(sceneID);
|
|
}
|
|
|
|
}
|
|
|
|
void Start(){
|
|
|
|
}
|
|
private void Awake()
|
|
{
|
|
}
|
|
|
|
private void Update()
|
|
{
|
|
}
|
|
|
|
private IEnumerator WaitForAnimationAndMoveToScene(float waitTime, Collision2D collision)
|
|
{
|
|
while (true)
|
|
{
|
|
yield return new WaitForSeconds(waitTime);
|
|
Debug.Log("BEFORE");
|
|
collision.gameObject.GetComponent<DoorBehaviour>().ScenetToMoveTo();
|
|
Debug.Log("AFTER");
|
|
}
|
|
}
|
|
|
|
|
|
// method is invoked only when script is assign to the player prefab object
|
|
public void OnCollisionEnter2D(Collision2D collision)
|
|
{
|
|
if(collision.gameObject.tag == "SceneTransition")
|
|
{
|
|
if(!collision.gameObject.GetComponent<DoorBehaviour>().isEnabled)
|
|
{
|
|
Debug.Log("Door are not enabled");
|
|
return;
|
|
}
|
|
|
|
collision.gameObject.GetComponent<DoorBehaviour>().ScenetToMoveTo();
|
|
}
|
|
if(collision.gameObject.tag == "AnimatedDoorSceneTransition")
|
|
{
|
|
Debug.Log("Starting coroutine");
|
|
Debug.Log(TriggerDoor.ableToOpen);
|
|
if (TriggerDoor.ableToOpen)
|
|
{
|
|
StartCoroutine(WaitForAnimationAndMoveToScene(0.3f, collision));
|
|
}
|
|
}
|
|
}
|
|
} |