Пример #1
0
    public void Show(BuildArea buildArea, BuildableData buildable)
    {
        this.buildArea = buildArea;
        this.buildable = buildable;
        amount         = 0;
        built          = false;

        PlacementManager.Instance.enabled = false;
        //UIManager.Instance.ShowUI(gameObject);
        tool.SetActive(true);
        particles.gameObject.SetActive(true);
    }
Пример #2
0
 private void Update()
 {
     if (isReady)
     {
         if (Input.GetMouseButtonDown(0))
         {
             Collider2D collider = Physics2D.OverlapCircle(Camera.main.ScreenToWorldPoint(Input.mousePosition), 0.1f, buildAreaLayer);
             if (collider != null)
             {
                 BuildArea buildArea = collider.GetComponent <BuildArea>();
                 if (buildArea.hasOccupied)
                 {
                     MoneyController.instance.GetMoney(buildArea.occupyTower.GetComponent <Tower>().cancelGain);
                     buildArea.occupyTower.GetComponent <Tower>().BeDestroyed();
                 }
             }
             isReady = false;
         }
         else if (Input.GetMouseButtonDown(1))
         {
             isReady = false;
         }
     }
 }
Пример #3
0
 private void Start()
 {
     buildArea = board.GetComponent <BuildArea>();
     buildArea.starting(StartBlockAmount);
 }
Пример #4
0
 public void setBuildArea(BuildArea place)
 {
     buildArea = place;
 }
Пример #5
0
 private void Update()
 {
     if (isReadyToPut)
     {
         if (Input.GetMouseButtonDown(1))
         {
             isReadyToPut = false;
             BuildTowerController.instance.nextBuildTower = null;
         }
         else if (Input.GetMouseButtonDown(0))
         {
             Collider2D collider = Physics2D.OverlapCircle(Camera.main.ScreenToWorldPoint(Input.mousePosition), 0.1f, buildAreaLayer);
             if (collider != null)
             {
                 BuildArea buildArea = collider.GetComponent <BuildArea>();
                 if (buildArea.hasOccupied)
                 {
                     isReadyToPut = false;
                     BuildTowerController.instance.nextBuildTower = null;
                 }
                 else
                 {
                     if (MoneyController.instance.Money >= BuildTowerController.instance.nextBuildTower.GetComponent <Tower>().arrangeCost)
                     {
                         isReadyToPut = false;
                         cDUpdate[index].GetComponent <CDUpdate>().EnterCD();
                         GameObject obj = Instantiate(BuildTowerController.instance.nextBuildTower, buildArea.transform);
                         if (BuildTowerController.instance.nextBuildTower == towers[1])
                         {
                             if (halfPrize)
                             {
                                 MoneyController.instance.CostMoney((int)(obj.GetComponent <Tower>().arrangeCost *0.5));
                             }
                             else
                             {
                                 MoneyController.instance.CostMoney(obj.GetComponent <Tower>().arrangeCost);
                                 halfPrize = true;
                             }
                         }
                         else
                         {
                             MoneyController.instance.CostMoney(obj.GetComponent <Tower>().arrangeCost);
                         }
                         BuildTowerController.instance.nextBuildTower = null;
                         buildArea.hasOccupied = true;
                         buildArea.occupyTower = obj;
                     }
                     else
                     {
                         isReadyToPut = false;
                         BuildTowerController.instance.nextBuildTower = null;
                     }
                 }
             }
             else
             {
                 isReadyToPut = false;
                 BuildTowerController.instance.nextBuildTower = null;
             }
         }
     }
 }