private void startTowerClickResponse(TowerClickResponse clicked)
 {
     if (clicked)
     {
         clicked.Response();
     }
 }
 private void setLastProcessedAndInformBefore(TowerClickResponse clicked)
 {
     if (_lastProcessedTower != null && _lastProcessedTower != clicked)
     {
         _lastProcessedTower.LosedFocus();
     }
     _lastProcessedTower = clicked;
 }
 protected override void Update()
 {
     if (Input.GetKeyDown(KeyCode.Mouse0))
     {
         TowerClickResponse clicked = raycastForTower();
         startTowerClickResponse(clicked);
         setLastProcessedAndInformBefore(clicked);
     }
 }