private void Update() { if (Input.GetKeyDown(KeyCode.Space) && selectUnit.movingEnd == true) { GetGotoTile(selectUnit.startPoint, selectUnit.actPoint); } Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); RaycastHit hit; if (Physics.Raycast(ray, out hit)) { if (Input.GetMouseButtonDown(0)) { if (hit.transform.tag == "Tile") { TileInfoTutorial rayTile = hit.transform.GetComponent <TileInfoTutorial>(); Debug.Log("a"); if (rayTile.selectTile == true) { AfterBfsMove(rayTile, rayTile.stage); AllTileBreak(); } } if (hit.transform.tag == "Unit") { selectUnit = hit.transform.GetComponent <UnitInfoTutorial>(); } } } //stage }
IEnumerator UnitMove(List <TileInfoTutorial> moveList, int tileStage, UnitInfoTutorial moveUnit) //유닛이 이동하는데 딜레이 있게 이동한다 { if (tileStage == 0) { moveUnit.endPoint = moveList[0]; moveUnit.movingEnd = false; yield return(new WaitForSeconds(1.0f)); moveUnit.movingEnd = true; } else { for (int i = tileStage; i >= 0; i--) { moveUnit.movingEnd = false; moveUnit.endPoint = moveList[i]; yield return(new WaitForSeconds(1.0f)); } moveUnit.movingEnd = true; } }