private void InitialEnemy() { for (int i = 0; i < gameSaved.countLevelsOpen; i++) { if (enemiesPrefabs.Length.Equals(_iterator)) { _iterator = 0; } GameObject enemy = Instantiate(enemiesPrefabs[_iterator]); enemy.transform.SetParent(levelList[i]); enemy.transform.localPosition = new Vector3(CameraControl.CamWidth() / 2 - GameManager.OffsetCamWidth, 0.5f, -2); SetMainEnemiesData(enemiesPrefabs[_iterator], i); Enemy newEnemy = new Enemy { enemyObject = enemy, transform = enemy.transform, speed = gameSaved.speedsEnemies[i], priceToDie = gameSaved.priceToDie[i], timeToSpawn = gameSaved.timeToSpawn[i], iterator = i }; EventManager.Instance.PostNotification(EVENT_TYPE.CREATE_ENEMY, this, newEnemy); _iterator++; } }
private void SetPortalPosition(GameObject cave) { if (cave.transform.GetChild(1)) { Vector3 pos = cave.transform.GetChild(1).transform.position; cave.transform.GetChild(1).transform.position = new Vector3(CameraControl.CamWidth() / 2 - GameManager.OffsetCamWidth, pos.y, pos.z); } }
private void Start() { EventManager.Instance.AddListener(EVENT_TYPE.CREATE_ENEMY, AddEnemyToList); enemies = new List <Enemy>(); _targetX = -CameraControl.CamWidth() / 2 + GameManager.OffsetCamWidth; gameSaved = GameObject.Find("GameManager").GetComponent <GameManager>().gameSaved; enemyAtLevel = new Enemy[gameSaved.countLevelsOpen]; }
// Update is called once per frame void FixedUpdate() { if ((transform.position.x <= -CameraControl.CamWidth() / 2 + GameManager.OffsetCamWidth + 2.5f) && !isDie) { isDie = true; EventManager.Instance.PostNotification(EVENT_TYPE.DIE_ENEMY, this, transform.position); animator.SetBool("Die", true); Destroy(gameObject, 1.5f); } }
private void CreateHeroAtTag() { for (int i = 0; i < gameSaved.countLevelsOpen; i++) { string tag = gameSaved.OnLevelHeroTag[0]; GameObject hero = CompareTagHero(tag); if (!hero.Equals(null)) { hero.transform.SetParent(levelList[i]); hero.transform.localPosition = new Vector3(-CameraControl.CamWidth() / 2 + GameManager.OffsetCamWidth - 7f, 0.5f, -2); } heroesTransforms[i] = hero.transform; heroes.Add(hero); } EventManager.Instance.PostNotification(EVENT_TYPE.CREATE_HEROES, this, heroes); }
private void SetMainEnemiesData(GameObject prefabs, int i) { GameObject enemy = Instantiate(prefabs); enemy.transform.SetParent(levelList[i]); enemy.transform.localPosition = new Vector3(CameraControl.CamWidth() / 2 - GameManager.OffsetCamWidth + 5f, 0.5f, -2); Enemy eny = new Enemy { enemyObject = enemy, transform = enemy.transform, speed = gameSaved.speedsEnemies[i], priceToDie = gameSaved.priceToDie[i], timeToSpawn = gameSaved.timeToSpawn[i], iterator = i, }; enemiesAtLevel.Add(eny); time.Add(Time.time); }
/// <summary> /// move heroes /// </summary> private void MoveHeroesAtStartGame() { if (!isStartMove) { return; } if (heroesTransforms[0].position.x < -CameraControl.CamWidth() / 2 + GameManager.OffsetCamWidth) { for (int i = 0; i < heroesTransforms.Length; i++) { heroesTransforms[i].localPosition = Vector3.MoveTowards(heroesTransforms[i].localPosition, new Vector3(-CameraControl.CamWidth() / 2 + GameManager.OffsetCamWidth, heroesTransforms[i].localPosition.y, heroesTransforms[i].localPosition.z), Time.deltaTime * 5); } } else { EventManager.Instance.PostNotification(EVENT_TYPE.STOP_RUN_ANIM, this); isStartMove = false; } }
/// <summary> /// create enimy at time timeToSpawn /// </summary> private void InitEnemyAtTime() { for (int i = 0; i < enemiesAtLevel.Count; i++) { if (Time.time - time[i] >= enemiesAtLevel[i].timeToSpawn && !enemiesAtLevel[i].enemyObject.Equals(null)) { GameObject enemy = Instantiate(enemiesAtLevel[i].enemyObject); enemy.transform.SetParent(enemiesAtLevel[i].transform.parent); enemy.transform.localPosition = new Vector3(CameraControl.CamWidth() / 2 - GameManager.OffsetCamWidth, 0.5f, -2); Enemy eny = new Enemy { enemyObject = enemy, transform = enemy.transform, speed = gameSaved.speedsEnemies[i], priceToDie = gameSaved.priceToDie[i], timeToSpawn = enemiesAtLevel[i].timeToSpawn, iterator = enemiesAtLevel[i].iterator }; EventManager.Instance.PostNotification(EVENT_TYPE.CREATE_ENEMY, this, eny); time[i] = Time.time; } } }
private void Start() { rect = GetComponent <RectTransform>(); rect.sizeDelta = new Vector2(CameraControl.CamWidth(), 1000); }