using UnityEngine;
using System.Collections;
public class ObjectHighlighter : MonoBehaviour {
bool isClicked = false;
GameObject ARCamera;
GameObject SaftyAnchor;
GameObject SpecsCamera;
GameObject CloseCamera;
GameObject baseObject;
string obj_name;
string layerName;
// Use this for initialization
void Start () {
SpecsCamera = GameObject.Find( "SpecsCamera" );
CloseCamera = GameObject.Find( "CloseCamera" );
SaftyAnchor = GameObject.Find( "SaftyAnchor" );
ARCamera = GameObject.Find( "ARCamera" );
ARCamera.camera.enabled = true;
SpecsCamera.camera.enabled = false;
CloseCamera.camera.enabled = false;
NGUITools.SetActive(SaftyAnchor, false);
}
// Turn on the bit using an OR operation:
private void Show( string layerName) {
ARCamera.camera.cullingMask |= 1 << LayerMask.NameToLayer(layerName);
}
// Turn off the bit using an AND operation with the complement of the shifted int:
private void Hide( string layerName ) {
ARCamera.camera.cullingMask &= ~(1 << LayerMask.NameToLayer(layerName));
}
// Toggle the bit using a XOR operation:
private void Toggle( string layerName ) {
ARCamera.camera.cullingMask ^= 1 << LayerMask.NameToLayer(layerName);
}
// Update is called once per frame
void Update () {
}
//Calls the click event of Vuforia
void OnMouseDown () {
obj_name = this.gameObject.name;
baseObject = GameObject.Find( obj_name );
string obj_tag = baseObject.gameObject.tag;
if (isClicked == false){
switch (obj_tag)
{
case "tag_SpecsPopUp": // Safty Summery
SpecsCamera.camera.enabled = true;
CloseCamera.camera.enabled = true;
GameObject.Find ("ImageTarget").GetComponent<TrackerPopup>().enabled = false;
GameObject.Find ("xRayButton").GetComponent<BoxCollider>().enabled = false;
NGUITools.SetActive(SaftyAnchor, true);
isClicked = false;
break;
// my full code has multiple other cases with tags allowing for game items to be clicked on and the user gets a pop up with info on the item
}
}
else {
switch (obj_tag)
{
case "tag_SpecsPopUp": // Safty string
Hide ("SpecsPopUp");
ARCamera.camera.enabled = true;
SpecsCamera.camera.enabled = false;
GameObject.Find ("ImageTarget").GetComponent<TrackerPopup>().enabled = true;
NGUITools.SetActive(SaftyAnchor, false);
isClicked = false;
break;
//And of course more "else" cases that work with the other "if" cases when present
default:
Debug.Log ("default");
break;
}
}
}
}