public override void DoAttack() { if (currentAttackCD <= 0f) { animationSetter.SetAttackAnim(); GameObject go = Instantiate(projectile, attackPoint.position, Quaternion.identity); go.transform.localScale = new Vector3(transform.localScale.x * go.transform.localScale.x, go.transform.localScale.y, 1); currentAttackCD = attackCooldown; } }
public override void DoAttack() { if (currentAttackCD <= 0f) { animationSetter.SetAttackAnim(); ai.GetTargetHealth().TakeDamage(); onAttackAudio?.Play(); currentAttackCD = attackCooldown; } }
public override void DoAttack() { if (currentAttackCooldown <= 0f && ammoLeft > 0) { animationSetter.SetAttackAnim(); GameObject go = Instantiate(projectile, attackPoints[Random.Range(0, 3)].position, Quaternion.identity); go.transform.localScale = new Vector3(transform.localScale.x * go.transform.localScale.x, go.transform.localScale.y, go.transform.localScale.z); barrierAmmo[ammoLeft - 1].SetActive(false); ammoLeft--; currentAttackCooldown = attackCooldown; } if (ammoLeft == 0 && !ammoRechargeCompleted) { StartCoroutine(RechargeAmmo()); } }