예제 #1
0
    private void DecreaseTargetHealth()
    {
        StarWarsObject obj = GetTarget();

        obj.Health -= FirePower;
        obj.CheckDestruction(obj);
    }
예제 #2
0
 public override void CheckDestruction(StarWarsObject obj)
 {
     if (Health <= 0)
     {
         StarWarsManager.StarWarsManagerInstance.RemoveObject(this);
         Destroy(gameObject);
     }
 }
예제 #3
0
    public virtual void InitializeObject(int index, Vector3 position, int upgrade)
    {
        CurrentSpawnedObject = Instantiate(SpawnableObjects[index], Vector3.zero,
                                           SpawnableObjects[index].transform.rotation);

        StarWarsObject sObj = CurrentSpawnedObject.GetComponent <StarWarsObject>();

        sObj.Health    = Mathf.Pow(upgrade, 3);
        sObj.FirePower = Mathf.Pow(upgrade, 2);

        ObjectList.Add(CurrentSpawnedObject.GetComponent <StarWarsObject>());
    }
예제 #4
0
    public override void CheckDestruction(StarWarsObject obj)
    {
        if (Health <= 0)
        {
            IsAlive = false;
            StarWarsManager.StarWarsManagerInstance.RemoveObject(this);
            Lane.currentEnemiesInLane.Remove(this);
            StartCoroutine(EnemyDestructionAnimation());
            Destroy(gameObject, 1.5f);

            //Upgrade Turret (Not Balanced)
            obj.FirePower += 5;
            obj.Health    += 5;
        }
    }
예제 #5
0
 protected override bool IsFirstInLane(StarWarsObject sObj)
 {
     return(true);
 }
예제 #6
0
 protected override bool IsFirstInLane(StarWarsObject sObj)
 {
     return(Lane.currentEnemiesInLane.IndexOf(sObj) == 0);
 }
예제 #7
0
 public abstract void CheckDestruction(StarWarsObject obj);
예제 #8
0
 protected abstract bool IsFirstInLane(StarWarsObject sObj);
예제 #9
0
 public void RemoveObject(StarWarsObject starWarsObject)
 {
     ObjectList.Remove(starWarsObject);
 }
예제 #10
0
 public void AddEnemiesInLane(StarWarsObject enemy)
 {
     currentEnemiesInLane.Add(enemy);
 }
예제 #11
0
 public void AddTurretsInLane(StarWarsObject turret)
 {
     currentTurretsInLane.Add(turret);
 }