Skip to content
This repository has been archived by the owner on Aug 14, 2019. It is now read-only.

EnemyAttackRanged.cs

ErikOverflow edited this page Apr 8, 2019 · 4 revisions
Dependencies:
Methods:
  • ShootProjectile() - Fires a projectile at the current target
Events:
  • None
Fields:
  • projectileSprite
  • damage
  • falloffTime - Time before the projectile disappears
  • maxPenetrations - Maximum number of enemies this projectile can go through
  • projectileSpeed - Speed of projectile at launch
  • reloadTime - Time between enemy projectiles
  • projectilePrefab - Prefab to be pulled from the ObjectPooler
  • layer - Layer that the projectile will be launched from (because the Enemy Projectile layer doesn't interact with the Enemy layer, etc.)
General Overview:

EnemyHook initializes all fields except projectilePrefab and layer (these fields are configured via inspector). Then EnemyScaleByLevel augments the damage.

EnemyTargeting's OnNewTargetAcquired triggers "StartFiring". OnTargetLost triggers "StopFiring". While firing, the AttackRanged anim parameter is triggered every reloadTime seconds, launching a projectile towards EnemyTargeting's current target.

Clone this wiki locally