示例#1
0
    void initGameManagerCrepe()
    {
        queteCrepe = GetComponent <QueteCrepe>();
        videos     = GetComponent <AnimatedFeedbackCrepe>();

        curGameState = GameState.queteNoemie;

        curEtatCuisson = EtatCuisson.cuisson;

        ambiance   = AddAudio(musiqueAmbiance, true, true, 0.5f);
        miaulement = AddAudio(miaulementSkypi, false, false, 0.8f);
        sonDragOK  = AddAudio(dragOK, false, false, 0.8f);
        sonErreur  = AddAudio(erreur, false, false, 0.8f);
        cuisson    = AddAudio(cuissonCrepe, true, true, 0.3f);
        ambiance.Play();
        CreerFichierStats();
        ObtenirStatsDernierePartie();
        chrono                 = new System.Diagnostics.Stopwatch();
        bQueteAccomplie        = false;
        RetournerCrepe.isCook  = false;
        RetournerCrepe.counter = 0.0f;
        EtalerPate.InitEtalerPate();
    }
示例#2
0
    void OnGUI()
    {
        print("INGM cur : " + curGameState + "    prev :  " + prevGameState);

        if (!noemie || !skypi)
        {
            Debug.LogError("Ajouter les textures!");
            return;
        }


        #region quete
        // Affichage de la quete
        if (curGameState == GameState.queteNoemie)
        {
            DesactiverDrag();
            AfficherDialogue(noemie, queteCrepe.texteQuete());
        }
        #endregion quete


        #region preparation de la pate
        // preparation de la pate
        else if (curGameState == GameState.preparationPate)
        {
            videos.playVidDrag();

            if (bQueteAccomplie)
            {
                videos.ecranInvisible();

                // si la quete est reussie
                if (nbErreurs == 0)
                {
                    AfficherDialogue(noemie, "Tu as parfaitement réussi la recette!");
                }
                // si la recette a mal été suivie
                else
                {
                    AfficherDialogue(noemie, "Tu as fait quelques erreurs mais ce n'est pas grave, passons à la suite!");
                }
            }
            else
            {
                AfficherIngredients();
            }
        }
        #endregion preparation de la pate



        #region etalage de la pate
        // etalage de la pate
        else if (curGameState == GameState.etalerLaPate)
        {
            videos.playVidEtaler();

            if (EtalerPate.isEtaler)
            {
                AfficherDialogue(noemie, "Bien joué, cette crêpe est bien ronde!", true);
                videos.ecranInvisible();
            }

            DesactiverDrag();
        }
        #endregion

        #region score
        // score
        else if (curGameState == GameState.score)
        {
            chrono.Stop();
            tempsPartie = chrono.Elapsed.Minutes * 60 + chrono.Elapsed.Seconds;
            if (hasWritenStats == false)
            {
                EcrireStatsCrepe();
                hasWritenStats = true;
            }
            AfficherScore(calculerEtoilesCrepe());
            AfficherTexture(rejouer, rejouerText);
        }
        #endregion

        #region cuisson de la crepe
        // cuisson de la crepe
        else if (curGameState == GameState.cuissonCrepe)
        {
            if (curEtatCuisson == EtatCuisson.cuisson)
            {
                AfficherAide("La crêpe est en train de cuire. Patience ...");
                if (RetournerCrepe.counter >= 5.0f)
                {
                    curEtatCuisson = EtatCuisson.retourner;
                }
            }
            else if (curEtatCuisson == EtatCuisson.retourner)
            {
                videos.playVidRetourner();
                AfficherAide("Hum quelle bonne odeur!\n Tu peux maintenant retourner ta crêpe");
                if (RetournerCrepe.isCook && RetournerCrepe.counter >= 3.0f)
                {
                    curEtatCuisson = EtatCuisson.fini;
                }
            }
            else if (curEtatCuisson == EtatCuisson.fini)
            {
                videos.ecranInvisible();
                AfficherDialogue(noemie, "Parfait la crêpe est finie, allons la manger!", true);
            }
        }
        #endregion cuisson de la crepe


        #region aide de skypi
        // affichage de l'aide de skypi
        else if (curGameState == GameState.aideDeSkypi)
        {
            string aide = "";
            switch (prevGameState)
            {
            case GameState.preparationPate:
                if (!queteCrepe.queteAccomplie())
                {
                    aide  = "Pour mettre des ingrédients dans le saladier, il te suffit de les faire glisser dedans! \nVoici ce qu'il manque :\n";
                    aide += queteCrepe.ingredientManquants();
                }
                else
                {
                    aide = "Tu as mis tous les ingrédients nécessaires!\n Clique sur la flèche verte pour passer à l'étape suivante!";
                }
                break;

            case GameState.etalerLaPate:
                aide = "Étale la pâte en inclinant la tablette.";
                break;

            case GameState.cuissonCrepe:
                aide = "Retourne la crêpe en ramenant la tablette vers toi.";
                break;

            default:
                aide = "Je ne sais pas quoi te dire";
                break;
            }
            AfficherDialogue(skypi, aide);
        }
        #endregion aide de skypi
    }