/// <summary> /// attend avant de tirer pour soit atteindre la cible (best) ou attendre x seconde pour rajouter du random /// </summary> /// <param name="isBest">Si le tir sera réussis</param> /// <returns></returns> private IEnumerator WaitShot(bool isBest) { bool shoot = false; float offset = 0.0f; powerBar = GameObject.Find("powerBar").GetComponent <powerBarScript>(); if (isBest) { // attend pour que le tir soit parfait en fonction de la power bar while (!shoot) { offset = powerBar.GetAmount(); //valeur de la powerbar if (offset > 0.4 && offset < 0.6) { shoot = true; } else { yield return(null); } } } else { // attend un nombre de seconde avant de tirer pour randomizer plus float rdm = Random.Range(1, 3); yield return(new WaitForSeconds(rdm)); } this.GetComponents <AudioSource>()[0].Play(); GetComponent <Launcher>().isShooting = true; }
//private GameObject outBoundaries; //private bool checkAABB = false; //private bool outsideAABB = false; //private bool targetAABB = false; void Start() { physicScript = gameObject.GetComponent <BallisticPhysics>(); //outBoundaries = GameObject.Find("AABB"); //checkAABB = false; powerBar = GameObject.Find("powerBar").GetComponent <powerBarScript>(); gameManager = GameObject.FindGameObjectWithTag("Game manager"); Invoke("DestroyProjectile", lifeTime); projectile = gameObject.GetComponent <Rigidbody>(); projectile.useGravity = false; if (gameManager.GetComponent <GameManager>().teamTurn == gameManager.GetComponent <GameManager>().playerTag) { target = gameManager.GetComponent <GameManager>().enemiesAlive[gameManager.GetComponent <GameManager>().selectedPlayerTarget]; } else if (gameManager.GetComponent <GameManager>().teamTurn == gameManager.GetComponent <GameManager>().enemiesTag) { target = gameManager.GetComponent <GameManager>().playerAvatarsAlive[gameManager.GetComponent <GameManager>().selectedEnemyTarget]; } Launch(); }
private void Start() { powerBar = GameObject.Find("powerBar").GetComponent <powerBarScript>(); isShooting = false; isProj = false; }
void Start() { players = GameObject.FindGameObjectsWithTag(playerTag); enemies = GameObject.FindGameObjectsWithTag(enemiesTag); mainCamera = GameObject.FindGameObjectWithTag("MainCamera"); audioSources = mainCamera.GetComponents <AudioSource>(); winClip = (AudioClip)Resources.Load("Audio/win"); finalClip = (AudioClip)Resources.Load("Audio/final"); whipSound = (AudioClip)Resources.Load("Audio/whip"); clapSound = (AudioClip)Resources.Load("Audio/clap"); deathPlayerSound = (AudioClip)Resources.Load("Audio/Shotgun_Blast-Jim_Rogers-1914772763"); enemyLifes = GameObject.FindGameObjectWithTag("enemyLifes"); playerAvatarLifes = GameObject.FindGameObjectWithTag("playerAvatarLifes"); positionEnemyLife = enemyLifes.transform.GetChild(0).position; positionPlayerLife = playerAvatarLifes.transform.GetChild(0).position; offsetLife = life.transform.localScale.x * 4; foreach (GameObject player in players) { playerAvatarsAlive.Add(player); //image instaLife = Instantiate(playerImage, positionPlayerLife, new Quaternion()) as GameObject; instaLife.transform.SetParent(playerAvatarLifes.transform); //XMark instaLife = Instantiate(life, positionPlayerLife, new Quaternion()) as GameObject; instaLife.transform.SetParent(playerAvatarLifes.transform); positionPlayerLife += new Vector3(offsetLife, 0, 0); } playerAvatarLifes.GetComponent <playersLivesScript>().enabled = true; foreach (GameObject enemy in enemies) { enemiesAlive.Add(enemy); //image instaLife = Instantiate(enemyImage, positionEnemyLife, new Quaternion()) as GameObject; instaLife.transform.SetParent(enemyLifes.transform); //XMark instaLife = Instantiate(life, positionEnemyLife, new Quaternion()) as GameObject; instaLife.transform.SetParent(enemyLifes.transform); positionEnemyLife -= new Vector3(offsetLife, 0, 0); } enemyLifes.GetComponent <enemiesLivesScript>().enabled = true; powerBar = GameObject.Find("powerBar").GetComponent <powerBarScript>(); redSprite = GameObject.Find("powerBarRed"); blueSprite = GameObject.Find("powerBarBlue"); victory = GameObject.Find("victoryText"); victory2 = GameObject.Find("victoryText2"); //commencer la partie redSprite.SetActive(false); blueSprite.SetActive(true); victory.SetActive(false); victory2.SetActive(false); teamTurn = playerTag; selectedPlayerAvatar = 0; selectedEnemyAvatar = 0; selectedPlayerTarget = 0; selectedEnemyTarget = 0; playerAvatarsAlive[selectedPlayerAvatar].GetComponent <controlPlayer>().enabled = true; enemiesAlive[selectedEnemyAvatar].GetComponent <IAEnemyScript>().enabled = true; StartCoroutine(playerAvatarsAlive[selectedPlayerAvatar].GetComponent <Launcher>().launch()); }