// ajoute un nouveau legume a la liste de legumes plantés et retourne vrai si le legume a ete plante public bool VerifierAjoutLegume(GameObject legume) { // legume est ajouté si on n'a pas depassé nbParcelles if (legumesPlantes.Count < nbParcelles) { // si on a pas planté le legume obligatoire lorsqu'on est sur le point de plante un legume sur la derniere parcelle, on previent le joueur if (legumesPlantes.Count == nbParcelles - 1) { // si legume obligatoire a deja ete plante ou que le legume qu'on va plante est legume obligatoire if (VerifierLegumeObligatoire() || legumeObligatoire.name == legume.name) { legumesPlantes.Add(legume); return(true); } else { gmJardin.SetAlerte(GameManagerJardin.AlerteState.planterLegumeObligatoire); return(false); } } // on peut plante car on est a moins de nbParcelles - 1 else { legumesPlantes.Add(legume); return(true); } } else { gmJardin.SetAlerte(GameManagerJardin.AlerteState.parcelleMaxAtteint); return(false); } }
// verifie si on a valider la quete ds la phase 1 ou 2 quand on appui sur lebouton de validation void ValiderLegumes() { if (Input.touchCount == 1) { if (validation.HitTest(Input.GetTouch(0).position)) { QueteJardin scriptQueteJardin = GetComponent <QueteJardin>(); #region plantation 1 if (GameManagerJardin.curGameState == GameManagerJardin.GameState.planterP1) { // si on a plante le legume obligatoire if (scriptQueteJardin.VerifierLegumeObligatoire()) { // tous les legumes ont ete arrosés if (scriptQueteJardin.VerifierLegumesArroses()) { // on passe a la phase de transition selectedParcelle = null; NePasAfficherUILegumes(); NePasAfficherBoutons(); scriptQueteJardin.InitQueteP2(); // jouer un son good pr valider GameManagerJardin.sonDragOK.Play(); //ChangeState(GameManagerJardin.GameState.planterP1, GameManagerJardin.GameState.dialogueTransition1); ChangeState(GameManagerJardin.GameState.planterP1, GameManagerJardin.GameState.queteJessicaP2); } // un legume n'a pas été arrosé else { gmJardin.SetAlerte(GameManagerJardin.AlerteState.arroserLegumes); // jouer un son alerte arrosage GameManagerJardin.sonErreur.Play(); } } // le légume obligatoire n'a pas été planté else { gmJardin.SetAlerte(GameManagerJardin.AlerteState.planterLegumeObligatoire); // jouer un son alerte planter legumes obligatoire GameManagerJardin.sonErreur.Play(); } } #endregion #region plantation 2 else if (GameManagerJardin.curGameState == GameManagerJardin.GameState.planterP2) { // verifier ici si la liste de legumes plante a la p1 a ete replante correctement en p2 // si on a plante le legume obligatoire if (scriptQueteJardin.VerifierLegumeObligatoire()) { // tous les legumes ont ete arrosés if (scriptQueteJardin.VerifierLegumesArroses()) { // on passe au score selectedParcelle = null; NePasAfficherUILegumes(); NePasAfficherBoutons(); // jouer un son good pr valider GameManagerJardin.sonDragOK.Play(); DisplayRejouer(true); ChangeState(GameManagerJardin.GameState.planterP1, GameManagerJardin.GameState.score); } // un legume n'a pas été arrosé else { gmJardin.SetAlerte(GameManagerJardin.AlerteState.arroserLegumes); // jouer un son alerte arrosage GameManagerJardin.sonErreur.Play(); } } // le légume obligatoire n'a pas été planté else { gmJardin.SetAlerte(GameManagerJardin.AlerteState.planterLegumeObligatoire); // jouer un son alerte planter legumes obligatoire GameManagerJardin.sonErreur.Play(); } } #endregion } } }