예제 #1
0
 public override void OnInspectorGUI()
 {
     DrawDefaultInspector();
     if (GUILayout.Button("Update Tower"))
     {
         CreateTowerWizard.UpdateTowerParameters(param);
     }
 }
예제 #2
0
        private void OnWizardCreate()
        {
            float      yPos    = -5.2f;
            GameObject towerGO = PrefabUtility.InstantiatePrefab(AssetDatabase.LoadAssetAtPath <GameObject>("Assets/_PREFABS/Main menu/Towers/TowerBase.prefab")) as GameObject;

            towerGO.name = towerName;
            towerGO.transform.position = new Vector3(0, yPos, 0);
            Tower towerComp = towerGO.GetComponent <Tower>();

            towerComp.ButtonsParent.sizeDelta = new Vector2(towerComp.ButtonsParent.sizeDelta.x, (2.6f * levels.Length) + 5.2f);
            for (int i = 0; i < levels.Length; i++)
            {
                /*int c = Random.Range(0, 3);
                 * SpriteRenderer rend = GameObject.Instantiate(testObjectToClone, Vector3.zero, Quaternion.identity).GetComponent<SpriteRenderer>();
                 * rend.transform.parent = tower.transform;
                 * rend.transform.localPosition = new Vector3(0, i * 2.6f, 0);
                 * if (c == 0) rend.color = Color.cyan;
                 * if (c == 1) rend.color = Color.magenta;
                 * if (c == 2) rend.color = Color.gray;
                 * rend.name = LevelsManager.GetRealPrefabName(rend.gameObject);*/
                GameObject newLevelButtonGO = PrefabUtility.InstantiatePrefab(AssetDatabase.LoadAssetAtPath <GameObject>("Assets/_PREFABS/Main menu/LevelButton.prefab")) as GameObject;
                newLevelButtonGO.transform.parent        = towerComp.ButtonsParent;
                newLevelButtonGO.transform.localPosition = new Vector3(0, i * 2.6f, 0);
                newLevelButtonGO.name = levels[i].name + "_Button";
                LevelButton levelButtonComp = newLevelButtonGO.GetComponent <LevelButton>();
                levelButtonComp.LevelToLoad      = levels[i].name;
                levelButtonComp.MenuTower        = towerComp;
                levelButtonComp.LevelNumber.text = (i + 1).ToString();
            }
            TowerParameters createdParameters = ScriptableObject.CreateInstance <TowerParameters>();

            createdParameters.TowerName = towerName;
            createdParameters.Levels    = levels;

            AssetDatabase.CreateAsset(createdParameters, "Assets/SCRIPTABLEOBJECTS/Tower parameters/" + towerName + "Parameters.asset");
            CreateTowerWizard.UpdateTowerParameters(AssetDatabase.LoadAssetAtPath <TowerParameters>("Assets/SCRIPTABLEOBJECTS/Tower parameters/" + towerName + "Parameters.asset") as TowerParameters);
        }