Beispiel #1
0
    /*
     * On mouse down check if the mouse is in or out and make actions
     * Place a turret
     * Upgrade the turret inside
     * Sell the turret
     */
    void OnMouseDown()
    {
        if (EventSystem.current.IsPointerOverGameObject())
        {
            return;
        }

        /*
         * if Turret null create a new turret
         */
        if (turret.type == "")
        {
            TurretBuild turretToBuild = buildManager.GetTurretBuild(this);

            if (turretToBuild == null)
            {
                return;
            }

            foreach (GameObject child in GetChilds())
            {
                Destroy(child);
            }

            turret.Set(turretToBuild);
            turret.prefab = Instantiate(turretToBuild.prefab, this.transform.position + new Vector3(0, 0.2f, 0), this.transform.rotation);
        }

        /*
         * if upgrade request
         */
        else if (buildManager.upgrade)
        {
            TurretBuild turretToBuild = buildManager.GetTurretUpgrade(this);

            if (turretToBuild == null)
            {
                return;
            }
            Destroy(turret.prefab);
            turret.Set(turretToBuild);
            turret.prefab = Instantiate(turretToBuild.prefab, this.transform.position + new Vector3(0, 0.2f, 0), this.transform.rotation);
        }

        /*
         * if sell request
         */
        else if (buildManager.sell)
        {
            buildManager.SellTurret(this);
        }



        if (showToBuild != null)
        {
            Destroy(showToBuild);
        }
    }
Beispiel #2
0
 /*
  * Deselect turrets or cursors
  */
 public void SelectNull()
 {
     CursorSprite.instance.ChangeCursor("");
     toBuild = null;
     toShow  = null;
     upgrade = false;
     sell    = false;
 }
Beispiel #3
0
    /*
     * Delete turret and return 1/2 of the turret cost
     */
    public void SellTurret(Tile tile)
    {
        TurretBuild turret = tile.turret;

        Destroy(turret.prefab);
        playerStats.GetMoney(turret.cost / 2);
        turret.prefab = null;
        turret.cost   = 0;
        turret.level  = 0;
        turret.type   = "";
    }
Beispiel #4
0
 public void Set(TurretBuild turret)
 {
     this.level = turret.level;
     this.type  = turret.type;
     this.cost  = turret.cost;
 }
Beispiel #5
0
 /*
  * Select canon tower
  */
 public void SelectCanon()
 {
     SelectNull();
     toBuild = canonTurret[0];
     toShow  = canonTurretShow;
 }
Beispiel #6
0
 /*
  * Select balista tower
  */
 public void SelectBalista()
 {
     SelectNull();
     toBuild = ballistaTurret[0];
     toShow  = ballistaTurretShow;
 }