// Use this for initialization
 void Start()
 {
     Debug.Log("Boom");
     Collider[] affectedNodes = Physics.OverlapSphere(transform.position, pylonRadius);
     foreach (Collider col in affectedNodes)
     {
         if (col.tag == "Node")
         {
             TargetNode = col.GetComponent <Node>();
             TargetNode.ActivateNode();
         }
     }
 }
Esempio n. 2
0
    public void ButtonActivate(Node n, bool shift = false)
    {
        if (n.nodeType == "prefab")
        {
            if (shift)
            {
                if (!manager.favorites.Contains(n.todID))
                {
                    manager.favorites.Add(n.todID);
                    manager.SetToolTip("Added " + n.fileName + " to favorites.");
                }
                else
                {
                    manager.favorites.Remove(n.todID);
                    manager.SetToolTip("Removed " + n.fileName + " from favorites.");
                }
                TODV2.SaveGeneric <List <int> >(Globals.FAVPATH, manager.favorites);
            }
            else
            {
                SpawnNewObject(n);
                ChoosePlaceMode();
            }
        }
        else if (n.nodeType == "zone")
        {
            int id       = -1;
            int lastChar = n.fileName.IndexOf(":");
            if (lastChar < 0 || !int.TryParse(n.fileName.Substring(0, lastChar), out id))
            {
                id = currentWorld.zones.Max(x => x.zoneId) + 1;
            }


            if (shift)
            {
                currentZoneId = id;
                LoadZone();
                manager.activeFM.LoadZoneList();
                return;
            }

            SpawnNewObject(n);
            TextMeshPro tmp = selectedObject.GetComponentInChildren <TextMeshPro>();
            if (tmp)
            {
                tmp.text = id.ToString();
            }
            manager.activeFM.CloseFolder();
            ChoosePlaceMode();
        }
        else if (n.nodeType == "button")
        {
            switch (n.fileName)
            {
            case "QUALITYUP":
                manager.quality++;
                if (manager.quality >= QualitySettings.names.Length)
                {
                    manager.quality = QualitySettings.names.Length - 1;
                }
                QualitySettings.SetQualityLevel(manager.quality, true);
                manager.SetToolTip(QualitySettings.names[manager.quality] + " Setting Selected (For this session only)");
                return;

            case "QUALITYDOWN":
                manager.quality--;
                if (manager.quality < 0)
                {
                    manager.quality = 0;
                }
                QualitySettings.SetQualityLevel(manager.quality, true);
                manager.SetToolTip(QualitySettings.names[manager.quality] + " Setting Selected (For this session only)");
                return;

            case "EXPLORE":
                ExploreMode.Instance().SetupMode();
                return;

            case "LIGHTSETUP":
                LightSetupMode.Instance().SetupMode();
                return;

            case "RESETLIGHT":
                TOD_Sky.Instance.Day.LightIntensity   = 1;
                TOD_Sky.Instance.Night.LightIntensity = 5;
                TOD_Sky.Instance.Cycle.Hour           = 12;
                PlayerPrefs.SetFloat("DayIntensity", TOD_Sky.Instance.Day.LightIntensity);
                PlayerPrefs.SetFloat("NightIntensity", TOD_Sky.Instance.Night.LightIntensity);
                PlayerPrefs.SetFloat("TimeOfDay", TOD_Sky.Instance.Cycle.Hour);
                PlayerPrefs.Save();
                return;

            case "VIEWPOINT":
                manager.SetToolTip("Coming Soon");
                return;

            case "UpFolder":
                manager.activeFM.CloseFolder();
                return;

            case "NextPage":
                manager.activeFM.NextPage();
                break;

            case "LastPage":
                manager.activeFM.LastPage();
                break;

            case "FavTest":
                manager.activeFM.LoadFavList(manager.favorites);
                break;

            case "ZONES":
                manager.activeFM.LoadZoneList();
                break;


            //WristTop
            case "SAVE":
                SaveWorld();
                break;

            case "ZONENAME":
                manager.keyboard.gameObject.SetActive(true);
                manager.builderObjects.SetActive(false);
                manager.Diorama.SetActive(false);
                manager.StartCoroutine(ZoneNameWait());
                break;

            case "ZONETAG":
                CycleZoneTag();
                break;

            case "UNLOCKLOCK":
                PlaceObjectMode.posLock = PlaceObjectMode.PosLock.Free;
                manager.SetToolTip("Position Unlocked");
                break;

            case "ROTATIONLOCK":
                PlaceObjectMode.posLock = PlaceObjectMode.PosLock.RotLock;
                manager.SetToolTip("Rotation Locked");
                break;

            case "GRIDLOCK":
                PlaceObjectMode.posLock = PlaceObjectMode.PosLock.Grid;
                if (selectedObject)
                {
                    Vector3 e = selectedObject.transform.localRotation.eulerAngles;
                    objAngleY = Mathf.RoundToInt(e.y / 90) * 90;
                    objAngleX = 0f;
                    objAngleZ = 0f;
                    selectedObject.transform.localRotation = Quaternion.Euler(new Vector3(objAngleX, objAngleY, objAngleZ));
                }
                manager.SetToolTip("Grid Mode Activated");
                break;

            case "LAYERDOWN":
                ChangeLayer(-1);
                break;

            case "LAYERVISIBLE":
                manager.SetToolTip("Coming Soon");
                break;

            case "LAYERUP":
                ChangeLayer(1);
                break;

            //Botton Menu
            case "SAVEEXIT":
                SaveWorld();
                manager.DestroyDioReset();
                TitleScreenMode.Instance().SetupMode();
                break;

            case "SPAWNMODE":
                SaveWorld();
                AdventureTester.Instance().SetupMode();
                manager.SetToolTip("Play Test Mode Activated");
                break;

            case "TOGGLEGRID":
                manager.grid.SetActive(!manager.grid.activeInHierarchy);
                manager.SetToolTip("Grid " + (manager.grid.activeInHierarchy ? "Visible" : "Hidden"));
                break;

            //Front Menu
            case "EXITNOSAVE":
                Application.Quit();
                return;


            //case "Clear All Viewpoints":
            //    currentZone.viewpoints.Clear();
            //    break;

            //case "Show Help Panels On":
            //    manager.showControls = false;
            //    PlayerPrefs.SetInt("BM Show Controls", (manager.showControls ? 0 : 1));
            //    PlayerPrefs.Save();

            //    break;
            //case "Show Help Panels Off":
            //    manager.showControls = true;
            //    PlayerPrefs.SetInt("BM Show Controls", (manager.showControls ? 0 : 1));
            //    PlayerPrefs.Save();

            //    break;

            //case "SetView":
            //    SetView();
            //    //manager.UpdateLog("View Saved");
            //    break;
            //case "LoadView":
            //    LoadView();
            //    break;
            default:
                n.ActivateNode();
                break;
            }
        }
        else
        {
            n.ActivateNode();
        }
    }