Example #1
0
 protected override void Cast(Vector3 target)
 {
     if (beam == null) {
         beam = (GameObject)Object.Instantiate(prefab);
         beam.GetDamageDealer().Owner = statManager.gameObject;
     }
     castThisFrame = true;
     target.y = statManager.transform.position.y;
     Vector3 delta = target - statManager.transform.position;
     beam.transform.position = statManager.transform.position + delta.normalized * BeamLength / 2f;
     beam.transform.rotation = Quaternion.LookRotation(delta);
     beam.transform.localScale = new Vector3(1f, 1f, BeamLength);
     beam.GetComponent<DamageDuringContact>().DamagePerSecond = DamagePerSecond;
     beam.GetComponent<DamageDuringContact>().Ability = this;
 }