private void SetupLevel() { SetupModules(); levelDataManager.InitializeLevelData(); levelController.SetLevel(level); objectDeletionModule.SetLevel(level); objectPlacementModule.SetLevel(level); objectInformationModule.SetLevel(level); startupModule.SetLevel(level); IPlacedObject wallPrefabObject = prefabsManager.GetInstantiatedPrefab("wallPrefab", transform); startupModule.SetupLevel(wallPrefabObject); objectDeletionModule.DestroyPlacedObject(wallPrefabObject); }
private void ConvertEnemies(IList <Enemy> enemies) { IPlacedObject placedObject; foreach (Enemy enemy in enemies) { if (enemy.Type is EnemyType.HARD) { placedObject = prefabsManager.GetInstantiatedPrefab("hardEnemyPrefab", transform); } else if (enemy.Type is EnemyType.EASY) { placedObject = prefabsManager.GetInstantiatedPrefab("easyEnemyPrefab", transform); } else if (enemy.Type is EnemyType.BASIC) { placedObject = prefabsManager.GetInstantiatedPrefab("basicEnemyPrefab", transform); } else { Debug.Log("Enemy of Type " + enemy.GetType() + "could not be determined"); Destroy(enemy.gameObject); continue; } Destroy(placedObject.Prefab); placedObject.Prefab = enemy.gameObject; Weapon weapon = enemy.Weapon; ConvertWeapon(weapon); enemy.Weapon = null; objectPlacementModule.PlaceObject(placedObject, placedObject.Prefab.transform.position, false, null, false); if (weapon != null) { IPlacedObject weaponObject = (IPlacedObject)weapon.gameObject.transform.parent.GetComponent <PlacedObject>(); objectEditingModule.GiveWeaponToPerson(weaponObject, placedObject); } } }