void DrawSpawnerInspector(TOD_Wave _currentWave)
 {
     if (!_currentWave.ShowWave)
     {
         return;
     }
     LayoutEdit.Horizontal(true);
     if (_currentWave.AllSpawners.Count < eTarget.allSpawnPositionWave.Count)
     {
         LayoutEdit.HelpBox("Add spawner");
         ButtonEdit.Button("+", _currentWave.AddSpawnPos, Color.gray);
     }
     LayoutEdit.Horizontal(false);
     if (_currentWave.AllSpawners.Count > 0)
     {
         for (int i = 0; i < _currentWave.Index.Count; i++)
         {
             LayoutEdit.Horizontal(true);
             LayoutEdit.HelpBox($"Spawner {i} :");
             _currentWave.Index[i] = EditorGUILayout.Popup(_currentWave.Index[i], eTarget.AllIndexSpawn.ToArray());
             if (CheckAlreadyExist(_currentWave.Index, i))
             {
                 _currentWave.Index[i] = -1;
             }
             ButtonEdit.ButtonConfirmation("X", _currentWave.RemoveSpawnPos, Color.red, i, "Remove Spawner", $"Remove spawner position {i}", "Yes", "No");
             LayoutEdit.Horizontal(false);
         }
     }
 }
 void DrawEnemyInspector(TOD_Wave _currentWave)
 {
     if (!_currentWave.ShowWave)
     {
         return;
     }
     LayoutEdit.Horizontal(true);
     LayoutEdit.HelpBox("Add enemy");
     ButtonEdit.Button("+", _currentWave.AddEnemy, Color.gray);
     LayoutEdit.Horizontal(false);
     for (int j = 0; j < _currentWave.AllEnemies.Count; j++)
     {
         LayoutEdit.Horizontal(true);
         _currentWave.AllEnemies[j] = (TOD_Enemy)EditorGUILayout.ObjectField(_currentWave.AllEnemies[j], typeof(TOD_Enemy), false);
         if (_currentWave.AllEnemies[j] != null && _currentWave.AllEnemies[j].GetComponent <TOD_Enemy>() == null)
         {
             _currentWave.AllEnemies[j] = null;
         }
         // int _value = _currentWave.AllQuantity[j];
         // LayoutEdit.IntSlider("Quantity", ref _value, 1, 200);
         _currentWave.AllQuantity[j] = EditorGUILayout.IntSlider(_currentWave.AllQuantity[j], 1, 200);
         ButtonEdit.ButtonConfirmation("X", _currentWave.RemoveEnemy, Color.red, j, "Remove enemy", $"Remove enemy {j + 1}", "Yes", "No");
         LayoutEdit.Horizontal(false);
     }
     LayoutEdit.Space();
     ButtonEdit.ButtonConfirmation("Remove all enemies", _currentWave.ClearEnemies, Color.red, "Remove everyone", "Remove enemy ", "Yes", "No");
 }
Exemple #3
0
    public void ChangeWaveOrder(int _index, bool _Up)
    {
        TOD_Wave _tmpWave = new TOD_Wave();
        int      _order   = 0;

        if (_Up)
        {
            _order = -1;
        }
        else
        {
            _order = 1;
        }

        _tmpWave = allWaves[_index + _order];
        allWaves[_index + _order] = allWaves[_index];
        allWaves[_index]          = _tmpWave;
    }