Example #1
0
    public void Start()
    {
        positionOffset = new Vector3(Random.Range(40f, 60f), Random.Range(-10f, 10f));
        duelData       = GetComponent <DuelData>();

        shooterGO = new GameObject();
        shooterGO.transform.SetParent(transform);
        shooterGO.transform.localPosition = Vector3.zero;
        shooter = shooterGO.AddComponent <Shooter>();

        shooter.Setup(GetComponent <DamageData>(), duelData);
        enemyOnRange = shooterGO.GetComponent <EnemyOnRangeNoCollider>();
        enemyOnRange.Setup(GetComponent <DamageData>());
        moverData  = GetComponent <MoverData>();
        healthData = GetComponent <Health>();

        if (towerTransform)
        {
            //enemyOnRange.transform.SetParent(towerTransform);
            enemyOnRange.transform.position = towerTransform.position;
        }
        if (anchorPoint != null)
        {
            GetComponent <MoveToPoint>().SetTarget(this.anchorPoint);
        }

        if (isHeroOrReinforcement == false)
        {
            InvokeRepeating("CheckIfThereIsOtherNonDuelingTarget", 1f, 1f);
        }
    }
Example #2
0
    public void Setup(DamageData data)
    {
        this.damageData = data;
        gameObject.name = "Shooter";

        enemyOnRangeChecker = gameObject.AddComponent <EnemyOnRangeNoCollider>();
        enemyOnRangeChecker.Setup(damageData);
        weapon = gameObject.AddComponent <Weapon>();
        transform.localPosition = Vector3.zero;

        reloadTimer = gameObject.AddComponent <ReloadTimer>();
        reloadTimer.Setup(damageData.reloadTime);
    }
Example #3
0
    public void Start()
    {
        this.damageData = GetComponentInParent <DamageData>();
        gameObject.name = "Shooter";

        animator = GetComponent <Animator>();

        enemyOnRangeChecker = gameObject.AddComponent <EnemyOnRangeNoCollider>();
        enemyOnRangeChecker.Setup(damageData);
        weapon = gameObject.AddComponent <Weapon>();
        //transform.localPosition = Vector3.zero;

        reloadTimer = gameObject.AddComponent <ReloadTimer>();
        reloadTimer.Setup(damageData.reloadTime);
    }