NovaBullet.cs 752 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. using UnityEngine;
  2. using System.Collections;
  3. public class NovaBullet : Bullet
  4. {
  5. public float delayEffect = 0.5f;
  6. public float delayRemove = 5f;
  7. private bool effected = false;
  8. public int[] targetIds;
  9. // Update is called once per frame
  10. override public void Update ()
  11. {
  12. float currentTime = GameTime.time;
  13. if(!effected && currentTime - startTime > delayEffect)
  14. {
  15. effected = true;
  16. MakeDamage();
  17. }
  18. if(effected && currentTime - startTime > delayRemove)
  19. {
  20. Remove();
  21. }
  22. }
  23. public override void Reset ()
  24. {
  25. base.Reset ();
  26. effected = false;
  27. }
  28. protected override void MakeDamage ()
  29. {
  30. for(int i=0; i<targetIds.Length; i++)
  31. {
  32. BattleObject obj = map.GetBattleObject(targetIds[i]);
  33. DoDamage(obj);
  34. }
  35. }
  36. }