void Update() { if (!gameManager.GameRunning) { return; } if (Input.GetMouseButtonDown(0)) { RaycastHit hit; Ray ray = _mainCamera.ScreenPointToRay(Input.mousePosition); if (Physics.Raycast(ray, out hit, spriteViewMask)) { SpriteView spriteView = hit.collider.gameObject.GetComponent <SpriteView>(); if (spriteView != null) { gameManager.SelectObject(spriteView.SpriteObj, selectedColor, unselectedColor); } } } }
public void RenderSessionOnScreen(LevelSession levelSession) { Cell[,] cells = levelSession.Grid.Cells; int rows = levelSession.Grid.Rows; int columns = levelSession.Grid.Columns; for (int i = 0; i < rows; i++) { for (int j = 0; j < columns; j++) { SpriteObject spriteObj = ((SpriteObject)cells[i, j].CellObj); if (spriteObj != null) { GameObject spriteViewGO = PoolManager.Instance.GetObjectFromPool("SpriteView"); SpriteRenderer rendere = spriteViewGO.GetComponent <SpriteRenderer>(); rendere.sprite = spriteMap[spriteObj.SpriteType]; SpriteView spriteView = spriteViewGO.GetComponent <SpriteView>(); spriteView.LinkView(spriteObj); spriteViewGO.SetActive(true); } } } }