void OnInspectorUpdate() { #region Load Scripts if (!directory) { directory = ScriptableObject.CreateInstance<CheckDirectories>(); } if (!layersandtags) { layersandtags = ScriptableObject.CreateInstance<LayerAndTags>(); } if (!tileTextures) { tileTextures = ScriptableObject.CreateInstance<SetTileTextures>(); } if (directory.fileCheckClear == 0) { if(showConsole) { Debug.Log("Initializing Directory Check..."); } directory.BeginDirectoryCheck(); setupStage = directory.fileCheckClear; #region Clear Up Old Window // Occurs on change of scene or restart tileSelected = false; #endregion } if (setupStage == 2) { if (layersandtags.LayerCheckClear == 0) { if (showConsole) { Debug.Log("Directory Check Complete \nInitializing Layer Creator..."); } layersandtags.createTagsandLayers(); } if (layersandtags.LayerCheckClear == 1) { if(showConsole) { Debug.Log("Layer and Tag Creator Complete \nInitializing..."); } tileTextures.LoadListsAndGUIFirst(); currentTabList = tileTextures.currentTileList; if (showConsole) { Debug.Log("All Tiles have been formatted and listed. currentObjectList Set.\nWatching Tile Positions..."); } setupStage = 3; } else if (layersandtags.LayerCheckClear == -1) { Debug.LogError("Layer Creator Failed. Closing Window."); this.Close(); } } if (setupStage == 3 && tileTextures != null) { #region Monitor Window Size & Tab windowRect = new Rect(this.position.x, this.position.y, this.position.width, this.position.height); int lastTileInRow = tileTextures.maxTileColumn; //Change Border Box BG to wrap around tile if (tileTextures.tileBoxX[lastTileInRow] == 0) { boxMaxX = tileTextures.tileBoxX[lastTileInRow - 1] + 80; } else { boxMaxX = tileTextures.tileBoxX[lastTileInRow] + 80; } //If item list is less than windows minimum column length if (currentTabList.Length <= lastTileInRow) { boxMaxX = tileTextures.tileBoxX[currentTabList.Length] + 10; } //Detect Tab change if (currentTabOpen != tileTextures.currentTab) { tileTextures.LoadListsAndGUIFirst(); currentTabList = tileTextures.currentTileList; // Load Current Open Tabs Textures } //Detect window resize if (windowRect != tileTextures.windowRect) { tileTextures.GetTilePositions(); } #endregion } if (setupStage == -1) { Debug.LogError("Directory Check Failed. Closing Window."); this.Close(); } #endregion #region Load Gizmos on Tile Select if (tileSelected && setupStage == 3) { if (gizmoCursor == null) { gizmoCursor = (GameObject) Instantiate(Resources.Load(directory.resourceFile[4])); gizmoCursor.name = "gizmoCursor"; gizmoCursor.hideFlags = HideFlags.HideInHierarchy; } if (gizmoTile == null) { gizmoTile = (GameObject)Instantiate(currentTabList[tileSelectedID]); gizmoTile.transform.name = "gizmoTile"; SpriteRenderer[] tempTile; tempTile = gizmoTile.GetComponentsInChildren<SpriteRenderer>(); foreach (SpriteRenderer sRen in tempTile) { sRen.GetComponent<SpriteRenderer>().color = new Color(1f, 1f, 1f, 0.4f); //40% transparent } gizmoTile.hideFlags = HideFlags.HideInHierarchy; } } else { DestroyImmediate(GameObject.Find("gizmoCursor")); DestroyImmediate(GameObject.Find("gizmoTile")); } #endregion }
void OnInspectorUpdate() { #region Load Scripts if (!directory) { directory = ScriptableObject.CreateInstance <CheckDirectories>(); } if (!layersandtags) { layersandtags = ScriptableObject.CreateInstance <LayerAndTags>(); } if (!tileTextures) { tileTextures = ScriptableObject.CreateInstance <SetTileTextures>(); } if (directory.fileCheckClear == 0) { if (showConsole) { Debug.Log("Initializing Directory Check..."); } directory.BeginDirectoryCheck(); setupStage = directory.fileCheckClear; #region Clear Up Old Window // Occurs on change of scene or restart tileSelected = false; #endregion } if (setupStage == 2) { if (layersandtags.LayerCheckClear == 0) { if (showConsole) { Debug.Log("Directory Check Complete \nInitializing Layer Creator..."); } layersandtags.createTagsandLayers(); } if (layersandtags.LayerCheckClear == 1) { if (showConsole) { Debug.Log("Layer and Tag Creator Complete \nInitializing..."); } tileTextures.LoadListsAndGUIFirst(); currentTabList = tileTextures.currentTileList; if (showConsole) { Debug.Log("All Tiles have been formatted and listed. currentObjectList Set.\nWatching Tile Positions..."); } setupStage = 3; } else if (layersandtags.LayerCheckClear == -1) { Debug.LogError("Layer Creator Failed. Closing Window."); this.Close(); } } if (setupStage == 3 && tileTextures != null) { #region Monitor Window Size & Tab windowRect = new Rect(this.position.x, this.position.y, this.position.width, this.position.height); int lastTileInRow = tileTextures.maxTileColumn; //Change Border Box BG to wrap around tile if (tileTextures.tileBoxX[lastTileInRow] == 0) { boxMaxX = tileTextures.tileBoxX[lastTileInRow - 1] + 80; } else { boxMaxX = tileTextures.tileBoxX[lastTileInRow] + 80; } //If item list is less than windows minimum column length if (currentTabList.Length <= lastTileInRow) { boxMaxX = tileTextures.tileBoxX[currentTabList.Length] + 10; } //Detect Tab change if (currentTabOpen != tileTextures.currentTab) { tileTextures.LoadListsAndGUIFirst(); currentTabList = tileTextures.currentTileList; // Load Current Open Tabs Textures } //Detect window resize if (windowRect != tileTextures.windowRect) { tileTextures.GetTilePositions(); } #endregion } if (setupStage == -1) { Debug.LogError("Directory Check Failed. Closing Window."); this.Close(); } #endregion #region Load Gizmos on Tile Select if (tileSelected && setupStage == 3) { if (gizmoCursor == null) { gizmoCursor = (GameObject)Instantiate(Resources.Load(directory.resourceFile[4])); gizmoCursor.name = "gizmoCursor"; gizmoCursor.hideFlags = HideFlags.HideInHierarchy; } if (gizmoTile == null) { gizmoTile = (GameObject)Instantiate(currentTabList[tileSelectedID]); gizmoTile.transform.name = "gizmoTile"; SpriteRenderer[] tempTile; tempTile = gizmoTile.GetComponentsInChildren <SpriteRenderer>(); foreach (SpriteRenderer sRen in tempTile) { sRen.GetComponent <SpriteRenderer>().color = new Color(1f, 1f, 1f, 0.4f); //40% transparent } gizmoTile.hideFlags = HideFlags.HideInHierarchy; } } else { DestroyImmediate(GameObject.Find("gizmoCursor")); DestroyImmediate(GameObject.Find("gizmoTile")); } #endregion }