Spawner.cs 1009 B

123456789101112131415161718192021222324252627
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. public class Spawner : MonoBehaviour {
  5. public GameObject prefeb;
  6. public EnemyType type;
  7. public enum EnemyType { Arrow, Mover, Heavy, Shooter }
  8. public GameObject parent;
  9. public void Spawn() {
  10. GameObject obj = Instantiate(prefeb, transform);
  11. obj.transform.parent = parent.transform;
  12. obj.GetComponent<EnemyBase>().movingLeft = transform.localScale.x < 0;
  13. switch (type) {
  14. case EnemyType.Arrow:
  15. obj.transform.position += Mathf.RoundToInt((float) Modules.randomDefault.NextDouble() - 0.15f) * Vector3.down * 1.2f;
  16. break;
  17. case EnemyType.Shooter:
  18. obj.transform.localScale = Vector3.one;
  19. obj.transform.position += Modules.randomDefault.Next(-2, 2) * Vector3.left;
  20. break;
  21. }
  22. }
  23. private void Awake() {
  24. GameObject.Destroy(GetComponent<SpriteRenderer>());
  25. }
  26. }