Ejemplo n.º 1
0
 private void Start()
 {
     plane = new Plane(Vector3.up, Vector3.up * planeY); // ground plane
     initialTowerPosition = gameObject.transform.position;
     oldTowerPosition     = initialTowerPosition;
     initialTowerRotation = pivotTransform.rotation;
     checkLineRenderer    = GetComponent <LineRenderer>();
     towerFiring          = GetComponent <TowerFiring>();
 }
Ejemplo n.º 2
0
    private void MoveExistingTower(Waypoint newWaypoint)
    {
        TowerFiring oldestTower = towerQueue.Dequeue();

        oldestTower.waypointTowerIsOn.isPlacable = true;
        oldestTower.transform.position           = newWaypoint.transform.position;
        oldestTower.waypointTowerIsOn            = newWaypoint;
        newWaypoint.isPlacable = false;
        towerQueue.Enqueue(oldestTower);
    }
Ejemplo n.º 3
0
    public void AddTower(Waypoint newWaypoint)
    {
        if (towerQueue.Count < towerLimit)
        {
            TowerFiring newTower = Instantiate(towerPrefab, newWaypoint.transform.position, Quaternion.identity, FindObjectOfType <Towers>().transform);
            newTower.waypointTowerIsOn = newWaypoint;
            towerQueue.Enqueue(newTower);
            newWaypoint.isPlacable = false;
        }

        else
        {
            MoveExistingTower(newWaypoint);
        }
    }