Exemple #1
0
 public void ClearSelectedUnits()
 {
     if (selectedUnit != null)
     {
         selectedUnit.selected_active = false;
         selectedUnit = null;
     }
 }
Exemple #2
0
 void Update()
 {
     if (Input.GetMouseButtonUp(0))
     {
         //if(Physics.Raycast(activeCam.transform.position,activeCam.transform.forward, out hit,Mathf.Infinity,mask)){
         ray = activeCam.ScreenPointToRay(Input.mousePosition);
         if (Physics.Raycast(ray, out hit, Mathf.Infinity, mask))
         {
             if (hit.rigidbody.tag == "Unit")
             {
                 if (selectedUnit != hit.rigidbody.GetComponent <Unit_Behaviour>())
                 {
                     ClearHighlightedAreas();
                     ClearSelectedUnits();
                 }
                 selectedUnit = hit.rigidbody.GetComponent <Unit_Behaviour>();
                 selectedUnit.OnClick();
                 if (!selectedUnit.exhausted)
                 {
                     HighLightWalkableTiles(selectedUnit.FindTileBeneath(), selectedUnit.myStats.value_Movement);
                 }
             }
             if (hit.rigidbody.tag == "Tile")
             {
                 selectedTile = hit.rigidbody.GetComponent <Tile_Behaviour>();
                 if (selectedUnit != null)
                 {
                     if (selectedTile.highlighted)
                     {
                         selectedUnit.MoveUnitToTile(selectedTile.myTile);
                     }
                 }
                 ClearHighlightedAreas();
                 ClearSelectedUnits();
                 //hit.rigidbody.GetComponent<Tile_Behaviour>().OnClick();
             }
         }
         else if (Physics.Raycast(ray, out hit, Mathf.Infinity, cardMask))
         {
             hit.collider.GetComponent <Card_Behaviour>().PlayCard();
         }
     }
     CheckForCards();
 }