diff --git a/Assets/Scripts/ArenaBuilders.cs b/Assets/Scripts/ArenaBuilders.cs index b7a62a3..1ef8bdd 100644 --- a/Assets/Scripts/ArenaBuilders.cs +++ b/Assets/Scripts/ArenaBuilders.cs @@ -32,6 +32,7 @@ public class ArenaBuilder private Collider _agentCollider; private Rigidbody _agentRigidbody; private List _goodGoalsMultiSpawned; + private List _badGoalsMultiSpawned; private int _totalObjectsSpawned; private AAI3EnvironmentManager _environmentManager; @@ -60,6 +61,7 @@ int maxSpawnAttemptsForAgent _maxSpawnAttemptsForAgent = maxSpawnAttemptsForAgent; Spawnables = new List(); _goodGoalsMultiSpawned = new List(); + _badGoalsMultiSpawned = new List(); } public void Build() @@ -97,6 +99,7 @@ public void Build() } updateGoodGoalsMulti(); + updateBadGoalsMulti(); } private void InstantiateSpawnables(GameObject spawnedObjectsHolder) @@ -318,6 +321,10 @@ private void SpawnGameObject( { _goodGoalsMultiSpawned.Add(gameObjectInstance.GetComponent()); } + if (gameObjectInstance.CompareTag("badGoalMulti")) + { + _badGoalsMultiSpawned.Add(gameObjectInstance.GetComponent()); + } if (optionals != null) { if ( @@ -634,6 +641,27 @@ private void updateGoodGoalsMulti() } } + private void updateBadGoalsMulti() + { + int numberOfGoals = _badGoalsMultiSpawned.Count; + foreach (Goal badGoalMulti in _badGoalsMultiSpawned) + { + badGoalMulti.numberOfGoals = numberOfGoals; + } + } + + private void AddToBadGoalsMultiSpawned(Goal bgm) + { + _badGoalsMultiSpawned.Add(bgm); + updateBadGoalsMulti(); + } + + private void AddToBadGoalsMultiSpawned(GameObject bgm) + { + _badGoalsMultiSpawned.Add(bgm.GetComponent()); + updateBadGoalsMulti(); + } + public void AddToGoodGoalsMultiSpawned(Goal ggm) { _goodGoalsMultiSpawned.Add(ggm);