Tanoda
HandMenu.cs
Go to the documentation of this file.
1using GILES;
2using GILES.Interface;
3using System.Collections;
4using System.Collections.Generic;
5using UnityEngine;
6using UnityEngine.UI;
7
8public class HandMenu : MonoBehaviour
9{
12 private GameObject Models, ModelCopy;
13 pb_MetaDataComponent[] LoadedModels;
14 pb_PrefabBrowserItemButton[] CollectedButtons;
15 VivePointerTarget[] vivePointerTargets;
17 bool isAlreadyLoaded = false;
18 bool isAlreadyAdded = false;
19 Vector3 HandPosition;
20
21 // Start is called before the first frame update
22 void Start()
23 {
24 if (!isAlreadyLoaded && !ModelList.GetComponentInChildren<VivePointerTarget>())
25 {
26 isAlreadyLoaded = true;
27 Models = FileDragAndDrop.paretnObject;
28 LoadedModels = Models.GetComponentsInChildren<pb_MetaDataComponent>();
29 CollectedButtons = Buttons.GetComponentsInChildren<pb_PrefabBrowserItemButton>();
30 foreach (var item in CollectedButtons)
31 {
32 ModelCopy = Instantiate(item.gameObject);
33 ModelCopy.transform.parent = ModelList.transform;
34 ModelCopy.transform.localScale = Vector3.one;
35 ModelCopy.transform.localEulerAngles = Vector3.zero;
36 ModelCopy.transform.localPosition = Vector3.zero;
37 ModelCopy.layer = 5;
38 ModelCopy.AddComponent<BoxCollider>().size = new Vector3(25, 25, 0.1f);
39 ModelCopy.AddComponent<VivePointerTarget>().onPointerClick = new UnityEngine.Events.UnityEvent();
40 var ButtonCopy = ModelCopy;
41 ModelCopy.GetComponent<VivePointerTarget>().onPointerClick.AddListener(() => { ButtonCopy.GetComponent<pb_PrefabBrowserItemButton>().Instantiate(); });
42 Destroy(ModelCopy.GetComponentInChildren<ResourceDeleter>().gameObject);
43
44 }
45 //foreach (var item in LoadedModels)
46 //{
47 // if (item.name.Contains("fbx") || item.name.Contains("FBX"))
48 // {
49 // ModelCopy = Instantiate(ModelList);
50 // ModelCopy.transform.parent = ModelList.transform;
51
52 // }
53 //}
54 //isAlreadyLoaded = true;
55 }
56 }
57 private void Awake()
58 {
59
60 }
62 {
63 HandPosition = GetComponentInParent<VivePointer>().GetComponent<Transform>().position;
64 if (StageManagerWindow.GetComponent<CanvasGroup>().alpha == 0 && !StageManagerCanvas.activeInHierarchy)
65 {
67 StageManagerCanvas.SetActive(true);
68 StageManagerCanvas.transform.position = new Vector3(HandPosition.x, HandPosition.y + 0.1f, HandPosition.z);
69 return;
70 }
71
72 if (StageManagerWindow.GetComponent<CanvasGroup>().alpha == 1 && !StageManagerCanvas.activeInHierarchy)
73 {
74 StageManagerCanvas.SetActive(true);
75 StageManagerCanvas.transform.position = new Vector3(HandPosition.x, HandPosition.y + 0.1f, HandPosition.z);
76 return;
77 }
78
79 else
80 {
82 StageManagerCanvas.SetActive(false);
83 return;
84 }
85 }
86
88 {
89 //if (!isAlreadyAdded)
90 //{
91 // isAlreadyAdded = true;
92 // vivePointerTargets = ModelList.GetComponentsInChildren<VivePointerTarget>();
93 // foreach (var item in vivePointerTargets)
94 // {
95 // item.onPointerClick = new UnityEngine.Events.UnityEvent();
96 // item.onPointerClick.AddListener(() => { item.GetComponent<pb_PrefabBrowserItemButton>().Instantiate(); });
97 // }
98 //}
99 if (!ModelBrowser.activeInHierarchy)
100 {
101 ModelBrowser.SetActive(true);
102 }
103 else
104 {
105 ModelBrowser.SetActive(false);
106 }
107 }
108
109}
GameObject ModelBrowser
Definition: HandMenu.cs:10
void ModelBrowserShowHide()
Definition: HandMenu.cs:87
FileDragAndDrop FileDragAndDrop
Definition: HandMenu.cs:11
GameObject StageManagerCanvas
Definition: HandMenu.cs:10
GameObject ModelList
Definition: HandMenu.cs:10
GameObject StageManagerWindow
Definition: HandMenu.cs:10
void StageManagerCanvasShowHide()
Definition: HandMenu.cs:61
pb_StageManagerButton StgBtn
Definition: HandMenu.cs:16
GameObject Buttons
Definition: HandMenu.cs:10