using System; using System.Collections.Generic; using UnityEngine; public class SpawnController : MonoBehaviour { private Dictionary _enemyDatas; [SerializeField] private string _enemyPrefabPath; // 스폰할 프리팹 [SerializeField] private string _enemyDataPath; // 스폰할 프리팹 [SerializeField] private LayerMask _spawnedTargetLayers; // 스포너 Inspector에서 설정 [SerializeField] private LayerMask _spawnedObstacleLayers; // 스포너 Inspector에서 설정 int monsterCount = 0; public string EnemyPrefabPath { get { return _enemyPrefabPath; } set { _enemyPrefabPath = value; }} public string EnemyDataPath { get { return _enemyDataPath; } set { _enemyDataPath = value; }} void Awake() { _enemyDatas = Manager.Data.LoadToDict(EnemyDataPath, (enemy) => enemy.name); //"Data/E_Test1" } private void Start() { // GameObject enemy = Manager.Resource.Instantiate("Prefabs/Characters/Test_Enemy"); // enemy.AddComponent(); // enemy.transform.position = new Vector3(0,0,10); } // Prefabs/Characters/{_enemyPrefab.name} void Update() { float radius = 2.0f; if (EnemyPrefabPath == null ) return; for (; monsterCount < 5; monsterCount++) { float angle = monsterCount * Mathf.PI * 2 / 5; Vector3 pos = new Vector3(Mathf.Cos(angle), 0, Mathf.Sin(angle)) * radius + new Vector3(0, 0, 10); GameObject enemy = Manager.Resource.Instantiate(EnemyPrefabPath); enemy.AddComponent(); enemy.transform.position = pos; } } }