/** * @brief 레이케스트 레이저 생성 및 hit 리턴 * @param isTarget 레이케스트 타겟을 변경할때 사용. targetTile 값을 받아올때 true 해주면 됨 */ public void mouseRaycast(bool isTarget = false) { Vector2 pos = Camera.main.ScreenToWorldPoint(Input.mousePosition); Ray2D ray = new Ray2D(pos, Vector2.zero); hit = Physics2D.Raycast(ray.origin, ray.direction); if (hit.collider != null) { if (isTarget) { targetTile = hit.collider.gameObject.GetComponent <Tile>(); } else { selectedTile = hit.collider.gameObject.GetComponent <Tile>(); _hextile.FindDistancesTo(selectedTile); _range.SelectTileSetting(false); if (myTurn) { NetworkMng.getInstance.SendMsg(string.Format("SELECTING:{0}:{1}", selectedTile.PosX, selectedTile.PosZ)); } Debug.Log("타일 선택"); } } }
/** * @brief 레이케스트 레이저 생성 및 hit 리턴 * @param isTarget 레이케스트 타겟을 변경할때 사용. targetTile 값을 받아올때 true 해주면 됨 */ public void mouseRaycast(bool isTarget = false) { Vector2 pos = Camera.main.ScreenToWorldPoint(Input.mousePosition); Ray2D ray = new Ray2D(pos, Vector2.zero); hit = Physics2D.Raycast(ray.origin, ray.direction); if (hit.collider != null) { if (isTarget) { targetTile = hit.collider.gameObject.GetComponent <Tile>(); } else { selectedTile = hit.collider.gameObject.GetComponent <Tile>(); _range.SelectTileSetting(false); } } }