Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using UnityEngine;
- using System.Collections;
- public class LevelLoader : MonoBehaviour {
- public int levelToLoad;
- private string loadPrompt;
- private bool inRange;
- private int completedLevel;
- private bool canLoadLevel;
- public GameObject lockedNode;
- void Start()
- {
- completedLevel = PlayerPrefs.GetInt ("Level Completed");
- if (completedLevel == 0)
- {
- completedLevel = 1;
- }
- canLoadLevel = levelToLoad <= completedLevel ? true : false;
- if (!canLoadLevel) {
- Instantiate (lockedNode, new Vector3(transform.position.x, 0f, transform.position.z), Quaternion.identity);
- }
- }
- void Update()
- {
- if (canLoadLevel && Input.GetButtonDown ("Action") && inRange)
- {
- Application.LoadLevel ("Level " + levelToLoad.ToString ());
- }
- }
- void OnTriggerStay(Collider other)
- {
- inRange = true;
- if (canLoadLevel) {
- loadPrompt = "[E] to load level " + levelToLoad.ToString ();
- } else {
- loadPrompt = "Level " + levelToLoad.ToString() + " is locked";
- }
- }
- void OnTriggerExit()
- {
- inRange = false;
- loadPrompt = "";
- }
- void OnGUI()
- {
- GUI.Label (new Rect(50, Screen.height* .9f, 200, 40), loadPrompt);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement