Ejemplo n.º 1
0
 // Start is called before the first frame update
 void Start()
 {
     if (instance == null)
     {
         instance = this;
     }
 }
Ejemplo n.º 2
0
    void OnEnable()
    {
        me = (EnemyWaveManager)target;
        //State
        currentWave = serializedObject.FindProperty("currentWave");
        waveState   = serializedObject.FindProperty("waveState");
        //Gizmo
        debugToggle = serializedObject.FindProperty("debugToggle");
        gizmosColor = serializedObject.FindProperty("gizmosColor");
        gizmosSize  = serializedObject.FindProperty("gizmosSize");
        //Setting
        settingToggle    = serializedObject.FindProperty("settingToggle");
        autoStart        = serializedObject.FindProperty("autoStart");
        autoProceed      = serializedObject.FindProperty("autoProceed");
        waveDelay        = serializedObject.FindProperty("waveDelay");
        separatedPattern = serializedObject.FindProperty("separatedPattern");
        waveSequence     = serializedObject.FindProperty("waveSequence");
        //Event
        waveEventToggle           = serializedObject.FindProperty("waveEventToggle");
        onWaveStart               = serializedObject.FindProperty("onWaveStart");
        onWaveFinish              = serializedObject.FindProperty("onWaveFinish");
        onWaveClear               = serializedObject.FindProperty("onWaveClear");
        waveProcessingEventToggle = serializedObject.FindProperty("waveProcessingEventToggle");
        onWaveProceedInt          = serializedObject.FindProperty("onWaveProceedInt");
        onWaveProceedString       = serializedObject.FindProperty("onWaveProceedString");
        sequenceEventToggle       = serializedObject.FindProperty("sequenceEventToggle");
        onAllWaveClear            = serializedObject.FindProperty("onAllWaveClear");

        rolist = new ReorderableList(serializedObject, waveSequence, true, true, true, true);
    }
Ejemplo n.º 3
0
 internal void Activate(EnemyWaveManager manager, Pooler pool)
 {
     this.manager = manager;
     totalEnemy   = enemigos.Count;
     for (int i = 0; i < totalEnemy; i++)
     {
         currentEnemy = pool.SpawnObjeto(enemigos[i].enemigo);
         currentEnemy.Reiniciar();
         currentEnemy.SubscribirCaller(this);
         currentEnemy.transform.position = enemigos[i].spawnPosition;
     }
 }
Ejemplo n.º 4
0
    bool CheckManager(Transform target, ref EnemyWaveManager manager)
    {
        bool check;

        if (target.GetComponentInParent <EnemyWaveManager>())
        {
            manager = target.GetComponentInParent <EnemyWaveManager>();
            check   = true;
        }
        else
        {
            check = false;
        }
        serializedObject.ApplyModifiedProperties();
        return(check);
    }
Ejemplo n.º 5
0
    void Start()
    {
        enemyGrid   = new bool[columnCount, rowCount];
        enemyHolder = new GameObject("Enemies").transform;

        enemyWaveManager = this.GetComponent <EnemyWaveManager>();
        patterns         = this.GetComponent <MovementPattern>();

        validColumns = new List <int> ();        //List of index of columns on which enemies can spawn and move
        //The grid is divided in sectors next to each other
        //The activeSectors (here startingSectors) are the index of the current active sectors (ex: sector 1, 2 and 4)
        UpdateValidColumns(sectors, startingSectors);

        inclineAngleRad = arenaIncline * Mathf.Deg2Rad;
        tileAngleRad    = 2 * Mathf.PI / columnCount;
        //sectorSize = columnCount / sectors;
        sectorSize = 7;
    }
Ejemplo n.º 6
0
    private void Awake()
    {
        _enemyWaveManager = new EnemyWaveManager(_startWaveEnemyCount, _minNextWaveEnemyIncrease, _maxNextWaveEnemyIncrease);

        GameObject[] enemySpawnMarkers = GameObject.FindGameObjectsWithTag("EnemySpawnMarker");
        foreach(GameObject enemySpawnMarker in enemySpawnMarkers)
        {
            GameObject enemySpawnerObject = Instantiate(_enemySpawnerPrefab, enemySpawnMarker.transform.position, Quaternion.identity) as GameObject;
            enemySpawnerObject.transform.parent = this.transform;
            Spawner spawner = enemySpawnerObject.GetComponent<Spawner>();
            spawner.Init(_enemyWaveManager, this.GetComponent<EnemySpawnConfig>());
            _enemySpawners.Add(spawner);
        }

        Transform playerSpawnMarker = this.transform.FindChild("PlayerSpawnMarker");
        GameObject playerObject = Instantiate(_playerPrefab, playerSpawnMarker.position, Quaternion.identity) as GameObject;
        playerObject.transform.parent = this.transform;
        _player = playerObject.GetComponent<Player>();
    }
Ejemplo n.º 7
0
    void Awake()
    {
        #region Singleton boilerplate

        if (SINGLETON != null)
        {
            if (SINGLETON != this)
            {
                Debug.LogWarning($"There's more than one {SINGLETON.GetType()} in the scene!");
                Destroy(gameObject);
            }

            return;
        }

        SINGLETON = this;

        #endregion Singleton boilerplate

        waves = WaveFileParser.ParseWaveFile(waveFile);
    }
Ejemplo n.º 8
0
    private void Awake()
    {
        base.Awake();
        if (!Head)
        {
            Head = GameObject.FindGameObjectWithTag("Player");
        }
        enemyWaveManager = EnemyWaveManager.Instance;
        PlayerController = FindObjectOfType <PlayerController>();
        Ship             = FindObjectOfType <Ship>();
        foreach (Pool pool in GenericPools)
        {
            Queue <GameObject> objectPool = new Queue <GameObject>();

            for (int i = 0; i < pool.maxNumOfObject; i++)
            {
                GameObject obj = Instantiate(pool.objectPrefab);
                obj.SetActive(false);
                objectPool.Enqueue(obj);
            }

            objectPools.Add(pool.tag, objectPool);
        }

        foreach (Pool pool in ProjectilePools)
        {
            Queue <GameObject> objectPool = new Queue <GameObject>();
            for (int i = 0; i < pool.maxNumOfObject; i++)
            {
                GameObject obj = Instantiate(pool.objectPrefab);
                obj.SetActive(false);
                objectPool.Enqueue(obj);
            }
            objectPools.Add(pool.tag, objectPool);
        }

        AsteroidsToRender = FindObjectsOfType <Asteroid>();
        StartCoroutine("DisplayAsteroids");
        StartCoroutine("MoveEnemies");
    }
Ejemplo n.º 9
0
    public void OnSceneGUI()
    {
        int waveid = 0;
        EnemyWaveManager manager = (EnemyWaveManager)target;

        foreach (EnemyWave wave in manager.waves)
        {
            if (wave.show)
            {
                int enemyid = 0;
                Handles.color = wave.color;
                foreach (EnemySpawn spawn in wave.enemigos)
                {
                    var field = spawn.GetType().GetField("spawnPosition");
                    spawn.spawnPosition = Handles.FreeMoveHandle(spawn.spawnPosition, Quaternion.identity, 0.5f, Vector2.zero, Handles.CylinderHandleCap);
                    Handles.Label(spawn.spawnPosition, "E_" + enemyid + "_" + waveid, style);
                    enemyid++;
                }
            }
            waveid++;
        }
    }
Ejemplo n.º 10
0
 public void Init(EnemyWaveManager enemyWaveManager, EnemySpawnConfig enemySpawnConfig)
 {
     _cooldown = Random.value * 3.0f;
     _enemyWaveManager = enemyWaveManager;
     _enemySpawnConfig = enemySpawnConfig;
 }
Ejemplo n.º 11
0
    public void Init(EnemyWaveManager waveManager)
    {
        _instance = this;

        this.waveManager = waveManager;
    }
Ejemplo n.º 12
0
 private void Awake()
 {
     Instance = this;
 }
 private void Awake()
 {
     Instance = this;
     state    = State.Offline;
 }
Ejemplo n.º 14
0
 private void Start()
 {
     anim  = GetComponentInChildren <Animator>();
     chara = FindObjectOfType <Character>();
     ewm   = FindObjectOfType <EnemyWaveManager>();
 }
Ejemplo n.º 15
0
 public void SetMenu(EnemyWaveManager target, SerializedProperty waveSet, int index)
 {
     manager        = target;
     managerWaveSet = waveSet;
     waveIndex      = index;
 }
Ejemplo n.º 16
0
 public void Init(EnemyWaveManager waveManager)
 {
     onWaveCompleted += waveManager.OnWaveCompleted;
 }
 private void ReadyForNextWaveInput_Performed(InputAction.CallbackContext ctx) => EnemyWaveManager.ReadyForNextWave();
Ejemplo n.º 18
0
 void Awake() => Instance = this;