Beispiel #1
0
    public void OnRangeExit(AttackRangeController rangeController, GameObject gO)
    {
        EnemyController enemy = gO.GetComponent <EnemyController>();

        if (enemy != null)
        {
            RemoveEnemy(enemy);
        }
    }
Beispiel #2
0
    public void OnRangeEnter(AttackRangeController rangeController, GameObject gO)
    {
        EnemyController enemy = gO.GetComponent <EnemyController>();

        if (enemy != null)
        {
            AddEnemy(enemy);
            CheckAndShoot();
        }
    }
Beispiel #3
0
 protected virtual void OnRangeEnter(AttackRangeController attackRange, GameObject gameObject)
 {
     if (gameObject.transform == target)
     {
         targetReached = true;
         Hittable hittable = gameObject.GetComponent <Hittable>();
         if (hittable != null)
         {
             Attack(hittable);
         }
     }
 }
Beispiel #4
0
    // Start is called before the first frame update
    /// <summary>
    /// Start is called on the frame when a script is enabled just before
    /// any of the Update methods is called the first time.
    /// </summary>
    void Start()
    {
        intialstats     = stats;
        intialPos       = transform.position * 1;
        enemyDictionary = new SortedDictionary <long, EnemyController>();
        rigidBody       = GetComponent <Rigidbody2D>();
        rangeController = GetComponentInChildren <AttackRangeController>();

        _lifeShapeController = GetComponentInChildren <LifeShapeController>();

        _lifeShapeController.Init();
        _lifeShapeController.UpdateShadow(stats.maxLifes, stats.currentLifes);

        rangeController.SetOnEnterAction(OnRangeEnter);
        rangeController.SetOnExitAction(OnRangeExit);
        _gun   = GetComponent <GunController>();
        _alive = true;
    }
Beispiel #5
0
 protected virtual void OnRangeExit(AttackRangeController attackRange, GameObject gameObject)
 {
     targetReached = false;
 }