//CUP FUTURES void FindClosestCup() { Enemy nCup; Enemy eCup; Enemy sCup; Enemy wCup; GameObject northCup = GameObject.Find("cupFiducial/cupNorth"); GameObject eastCup = GameObject.Find("cupFiducial/cupEast"); GameObject southCup = GameObject.Find("cupFiducial/cupSouth"); GameObject westCup = GameObject.Find("cupFiducial/cupWest"); nCup = northCup.GetComponent <Enemy>(); eCup = eastCup.GetComponent <Enemy>(); sCup = southCup.GetComponent <Enemy>(); wCup = westCup.GetComponent <Enemy>(); // calculate closest distance float distanceToClosestEnemy = Mathf.Infinity; Enemy closestEnemy = null; Enemy[] allEnemies = GameObject.FindObjectsOfType <Enemy>(); foreach (Enemy currentEnemy in allEnemies) { float distanceToEnemy = (currentEnemy.transform.position - this.transform.position).sqrMagnitude; if (distanceToEnemy < distanceToClosestEnemy) { distanceToClosestEnemy = distanceToEnemy; closestEnemy = currentEnemy; } } Enemy currentCup = closestEnemy; if (currentCup == lastCup) { // GameObject mainCamera = GameObject.Find("Main Camera"); // AnalogGlitch glitchy = mainCamera.GetComponent <AnalogGlitch> (); // glitchy.setGlitchboolean(false); } else { print("registered a change to: " + currentCup + " from: " + lastCup); if (currentCup == sCup) { GameObject mainCamera = GameObject.Find("Main Camera"); AnalogGlitch glitchy = mainCamera.GetComponent <AnalogGlitch> (); glitchy.setGlitchboolean(true); for (int i = 1; i < SceneManager.sceneCount; i++) { Scene currentscene = SceneManager.GetSceneAt(i); Debug.Log("Current SCENE is '" + currentscene.name + "'."); SceneManager.UnloadSceneAsync(currentscene.name); } SceneManager.LoadScene("Cup2", LoadSceneMode.Additive); print("south"); } if (currentCup == nCup) { GameObject mainCamera = GameObject.Find("Main Camera"); AnalogGlitch glitchy = mainCamera.GetComponent <AnalogGlitch> (); glitchy.setGlitchboolean(true); for (int i = 1; i < SceneManager.sceneCount; i++) { Scene currentscene = SceneManager.GetSceneAt(i); Debug.Log("Current SCENE is '" + currentscene.name + "'."); SceneManager.UnloadSceneAsync(currentscene.name); } int cointoss = Random.Range(0, 2); if (cointoss == 0) { SceneManager.LoadScene("Cup4", LoadSceneMode.Additive); } else if (cointoss == 1) { SceneManager.LoadScene("Cup5", LoadSceneMode.Additive); } print("north"); } if (currentCup == eCup) { GameObject mainCamera = GameObject.Find("Main Camera"); AnalogGlitch glitchy = mainCamera.GetComponent <AnalogGlitch> (); glitchy.setGlitchboolean(true); for (int i = 1; i < SceneManager.sceneCount; i++) { Scene currentscene = SceneManager.GetSceneAt(i); Debug.Log("Current SCENE is '" + currentscene.name + "'."); SceneManager.UnloadSceneAsync(currentscene.name); } SceneManager.LoadScene("Cup1", LoadSceneMode.Additive); print("east"); } if (currentCup == wCup) { GameObject mainCamera = GameObject.Find("Main Camera"); AnalogGlitch glitchy = mainCamera.GetComponent <AnalogGlitch> (); glitchy.setGlitchboolean(true); for (int i = 1; i < SceneManager.sceneCount; i++) { Scene currentscene = SceneManager.GetSceneAt(i); Debug.Log("Current SCENE is '" + currentscene.name + "'."); SceneManager.UnloadSceneAsync(currentscene.name); } SceneManager.LoadScene("Cup3", LoadSceneMode.Additive); print("west"); } lastCup = currentCup; } }
/// <summary> /// Implementation of the ITrackableEventHandler function called when the /// tracking state changes. /// </summary> public void OnTrackableStateChanged( TrackableBehaviour.Status previousStatus, TrackableBehaviour.Status newStatus) { if (newStatus == TrackableBehaviour.Status.DETECTED || newStatus == TrackableBehaviour.Status.TRACKED || newStatus == TrackableBehaviour.Status.EXTENDED_TRACKED) { GameObject mainCamera = GameObject.Find("Main Camera"); AnalogGlitch glitchy = mainCamera.GetComponent <AnalogGlitch> (); glitchy.setGlitchboolean(true); Debug.Log("Trackable " + mTrackableBehaviour.TrackableName + " found"); if (mTrackableBehaviour.TrackableName == "orangefiducial") { nearfuturetest thefutures = mainCamera.GetComponent <nearfuturetest> (); thefutures.whichFiducial("orange"); } if (mTrackableBehaviour.TrackableName == "cupfiducial") { nearfuturetest thefutures = mainCamera.GetComponent <nearfuturetest> (); thefutures.whichFiducial("cup"); } // if (mTrackableBehaviour.TrackableName == "postitfiducial") { // nearfuturetest thefutures = mainCamera.GetComponent <nearfuturetest> (); // thefutures.whichFiducial("postit"); // } OnTrackingFound(); } else if (previousStatus == TrackableBehaviour.Status.TRACKED && newStatus == TrackableBehaviour.Status.NOT_FOUND) { Debug.Log("Trackable " + mTrackableBehaviour.TrackableName + " lost"); GameObject mainCamera = GameObject.Find("Main Camera"); nearfuturetest thefutures = mainCamera.GetComponent <nearfuturetest> (); thefutures.whichFiducial("NULL"); GameObject uiElements = GameObject.Find("UI Base Dividers"); for (int i = 1; i < SceneManager.sceneCount; i++) { Scene currentscene = SceneManager.GetSceneAt(i); Debug.Log("Current SCENE is '" + currentscene.name + "'."); SceneManager.UnloadSceneAsync(currentscene.name); } OnTrackingLost(); } else { for (int i = 1; i < SceneManager.sceneCount; i++) { Scene currentscene = SceneManager.GetSceneAt(i); Debug.Log("Current SCENE is '" + currentscene.name + "'."); SceneManager.UnloadSceneAsync(currentscene.name); } GameObject mainCamera = GameObject.Find("Main Camera"); nearfuturetest thefutures = mainCamera.GetComponent <nearfuturetest> (); thefutures.whichFiducial("null"); OnTrackingLost(); } }
//CHANNEL ORANGE void FindClosestOrange() { orange northside; orange eastside; orange southside; orange westside; GameObject northWindow = GameObject.Find("orangeFiducial/orangeNorth"); GameObject eastWindow = GameObject.Find("orangeFiducial/orangeEast"); GameObject southWindow = GameObject.Find("orangeFiducial/orangeSouth"); GameObject westWindow = GameObject.Find("orangeFiducial/orangeWest"); northside = northWindow.GetComponent <orange>(); eastside = eastWindow.GetComponent <orange>(); southside = southWindow.GetComponent <orange>(); westside = westWindow.GetComponent <orange>(); // calculate closest distance float distanceToClosestOrange = Mathf.Infinity; orange closestEnemy = null; orange[] allEnemies = GameObject.FindObjectsOfType <orange>(); foreach (orange currentEnemy in allEnemies) { float distanceToEnemy = (currentEnemy.transform.position - this.transform.position).sqrMagnitude; if (distanceToEnemy < distanceToClosestOrange) { distanceToClosestOrange = distanceToEnemy; closestEnemy = currentEnemy; } } orange currentOrange = closestEnemy; if (currentOrange == lastOrange) { // GameObject mainCamera = GameObject.Find("Main Camera"); // AnalogGlitch glitchy = mainCamera.GetComponent <AnalogGlitch> (); // glitchy.setGlitchboolean(false); } else { if (currentOrange == southside) { GameObject mainCamera = GameObject.Find("Main Camera"); AnalogGlitch glitchy = mainCamera.GetComponent <AnalogGlitch> (); glitchy.setGlitchboolean(true); for (int i = 1; i < SceneManager.sceneCount; i++) { Scene currentscene = SceneManager.GetSceneAt(i); Debug.Log("Current SCENE is '" + currentscene.name + "'."); SceneManager.UnloadSceneAsync(currentscene.name); } SceneManager.LoadScene("juicing", LoadSceneMode.Additive); print("HEY THIS IS SHOULD BE A GROWING TREE"); } if (currentOrange == northside) { GameObject mainCamera = GameObject.Find("Main Camera"); AnalogGlitch glitchy = mainCamera.GetComponent <AnalogGlitch> (); glitchy.setGlitchboolean(true); for (int i = 1; i < SceneManager.sceneCount; i++) { Scene currentscene = SceneManager.GetSceneAt(i); Debug.Log("Current SCENE is '" + currentscene.name + "'."); SceneManager.UnloadSceneAsync(currentscene.name); } SceneManager.LoadScene("GrowingTree", LoadSceneMode.Additive); print("ORANGE north"); } if (currentOrange == eastside) { GameObject mainCamera = GameObject.Find("Main Camera"); AnalogGlitch glitchy = mainCamera.GetComponent <AnalogGlitch> (); glitchy.setGlitchboolean(true); for (int i = 1; i < SceneManager.sceneCount; i++) { Scene currentscene = SceneManager.GetSceneAt(i); Debug.Log("Current SCENE is '" + currentscene.name + "'."); SceneManager.UnloadSceneAsync(currentscene.name); } SceneManager.LoadScene("OrangeCutting", LoadSceneMode.Additive); print("ORANGE east"); } if (currentOrange == westside) { GameObject mainCamera = GameObject.Find("Main Camera"); AnalogGlitch glitchy = mainCamera.GetComponent <AnalogGlitch> (); glitchy.setGlitchboolean(true); for (int i = 1; i < SceneManager.sceneCount; i++) { Scene currentscene = SceneManager.GetSceneAt(i); Debug.Log("Current SCENE is '" + currentscene.name + "'."); SceneManager.UnloadSceneAsync(currentscene.name); } SceneManager.LoadScene("RottingOrange", LoadSceneMode.Additive); print("ORANGE west"); } lastOrange = currentOrange; } }