Ejemplo n.º 1
0
    private void Start()
    {
        audio       = GameObject.Find("Son").GetComponent <AudioSource>();
        allScenette = new Queue <GameObject>(scenetteListTemp);


        currentScenette         = GameObject.Find("ScenetteTest").GetComponent <Scenette>();
        currentScenette.Fail   += fail;
        currentScenette.Sucess += succ;
        setSpeed(currentScenette.speedBandeauMultipler);

        gobTimer = Instantiate(prefabTimer, this.transform) as GameObject;
        gobHonor = Instantiate(prefabHonor, transform);

        rectHonor    = gobHonor.transform.GetChild(1).GetComponent <RectTransform>();
        rectModel    = gobHonor.transform.GetChild(0).GetComponent <RectTransform>();
        rectToResize = gobHonor.transform.GetChild(1).GetChild(0).GetComponent <RectTransform>();

        yDiffHonor = rectHonor.anchorMax.y - rectHonor.anchorMin.y;

        rectToResize.sizeDelta = rectModel.rect.size;//.sizeDelta;
        rectToResize.position  = rectModel.position;

        if (instance != null)
        {
            Destroy(gameObject);
        }
        else
        {
            instance = this;
        }

        for (int index = 0; index < SIZEPOOLTOUCHE; index++)
        {
            poolKey[index] = Instantiate(prefabInstanceToucheFX) as GameObject;
            poolKey[index].SetActive(false);
            poolKey[index].transform.SetParent(transform);
        }


        //Start Game  :
        currentScenette.init();
        currentScenette.startSequenceSequence();
    }
Ejemplo n.º 2
0
    //Fin bandeau , debut transition
    public void nextScene()
    {
        audio.PlayOneShot(next[Random.Range(0, next.Count)], 0.5f);
        GameObject obj = null;

        if (honor <= 0)
        {
            allScenette.Clear();
            allScenette.Enqueue(defaite);
        }
        else if (honor >= honorMax)
        {
            allScenette.Clear();
            allScenette.Enqueue(victoire);
        }

        if (currentScenette != null)
        {
            currentScenette.Sucess -= succ;
            currentScenette.Fail   -= fail;
            destroyingScenette      = currentScenette;
            currentScenette.Sucess += succ;
            currentScenette.Fail   += succ;
            currentScenette.init();
        }

        if (allScenette.Count > 0)
        {
            obj = allScenette.Dequeue();
            obj.SetActive(true);
            currentScenette         = Instantiate(obj).GetComponent <Scenette>();
            currentScenette.Sucess += succ;
            currentScenette.Fail   += fail;
            currentScenette.GetComponent <Animator>().speed = currentScenette.mutliplerSpeedEnter;
            setSpeed(currentScenette.speedBandeauMultipler);
        }

        isWE             = currentScenette.isWE;
        weekMusic.volume = isWE ? 0 : 1;
        gobTimer.SetActive(!currentScenette.falseScene);
        currentScenette.init();
    }
Ejemplo n.º 3
0
    private void OnGUI()
    {
        GUILayout.Label("Nom de l'objet");
        nameObject = EditorGUILayout.TextArea(nameObject);
        if (nameObject == "")
        {
            nameObject = "J'ai laissé un nom vide , shame on me";
        }

        GUILayout.Label("Vitesse du bandeau (multiplicateur)");
        vitesseBandeauMultipler = Mathf.Max(0.001f,EditorGUILayout.FloatField("", vitesseBandeauMultipler));

        GUILayout.Label("Texte de victoire");
        textVictory = EditorGUILayout.TextArea(textVictory);

        GUILayout.Label("Texte de defaite");
        textDefeat= EditorGUILayout.TextArea(textDefeat);

        GUILayout.Label("Taille de police (Victoire)");
        textSizeVictory = Mathf.Max(10, EditorGUILayout.IntField(textSizeVictory));

        GUILayout.Label("Taille de police (Defaite)");
        textSizeDefeat = Mathf.Max(10, EditorGUILayout.IntField(textSizeDefeat));

        GUILayout.Label("Delai du bandeau (temps en secondes)");
        delaiBandeau = Mathf.Max(0.001f, EditorGUILayout.FloatField("", delaiBandeau));


        GUILayout.Label("Vitesse de transition (multiplicateur) ");
        vitesseInsertion = Mathf.Max(0.001f, EditorGUILayout.FloatField("", vitesseInsertion));

        GUILayout.Label("Quel animation ?");
        anim = (animHero)EditorGUILayout.EnumPopup(anim);

        sprt = (Sprite)EditorGUILayout.ObjectField("Quel sprite de fond ? ", sprt, typeof(Sprite), true);

        GUILayout.Label("IMPORTANT SINON CA MARCHE PAS ");
        model = (GameObject)EditorGUILayout.ObjectField("Modele de base", model, typeof(GameObject), true);

        GUILayout.Label("Code ? (une seule lettre et en majuscule)");
        code = GUILayout.TextField(code);

        GUILayout.Label("Position x ");
        x = EditorGUILayout.FloatField(x);

        GUILayout.Label("Position y");
        y = EditorGUILayout.FloatField(y);

        if (GUILayout.Button("Ajouter la frappe dans la liste actuelle"))
        {
            if (sequence >= sequences.Count)
            {
                sequences.Add(new SequenceInput());
            }

            KeyCode c = KeyCode.A;
            for(int i = 97; i <= 122; i++)
            {
                if (((KeyCode)i).ToString() == code.ToUpper())
                {
                    c = (KeyCode)i;
                }
            }

            DataInput sI = new DataInput(c, new Vector2(x, y));
            sequences[sequence].dI.Add(sI);
        }

        if (GUILayout.Button("Supprimer la derniere frappe de la liste actuelle"))
        {
            if (sequences[sequence].dI.Count > 0)
            {
                sequences[sequence].dI.RemoveAt(sequences[sequence].dI.Count - 1);
            }
        }

        if (GUILayout.Button("Liste de frappe suivante"))
        {
            sequence++;
            if (sequence >= sequences.Count)
            {
                sequences.Add(new SequenceInput());
            }
        }

        if (GUILayout.Button("Liste de frappe precedente"))
        {
            sequence = Mathf.Max(0, sequence - 1);
        }

        EditorGUILayout.LabelField("Index : " + sequence.ToString());
        foreach(SequenceInput sI in sequences)
        {
            foreach(string s in sI.ToStringAlt())
            {
                EditorGUILayout.LabelField(s);
            }
        }

        GUILayout.Label("Sons Optionnels (en prendra un par defaut si aucun n'est choisi)");
        clpFail = (AudioClip)EditorGUILayout.ObjectField("Mauvaise touche ", clpFail, typeof(AudioClip), true);
        clpSuccess = (AudioClip)EditorGUILayout.ObjectField("Bonne touche ", clpSuccess, typeof(AudioClip), true);
        clpSuccessScenette = (AudioClip)EditorGUILayout.ObjectField("Fin scenette positive ", clpSuccessScenette, typeof(AudioClip), true);


        if (GUILayout.Button("Créer"))
        {
            GameObject instance;
            instance = Instantiate(model);
            instance.name = nameObject;
            Scenette scn = instance.GetComponent<Scenette>();
            scn.sequencesToDo = new List<SequenceInput>(sequences);
            scn.speedBandeauMultipler = vitesseBandeauMultipler;
            scn.timeBeforeNext = delaiBandeau;
            scn.mutliplerSpeedEnter = vitesseInsertion;
            scn.failClic = clpFail;
            scn.successClic = clpSuccess;
            scn.successScenette = clpSuccessScenette;
            scn.animPourHero = anim;
            scn.backgroundSprite = sprt;
            scn.textSizeDefeat = textSizeDefeat;
            scn.textSizeVictory = textSizeVictory;
            scn.textVictory = textVictory;
            scn.textDefeat = textDefeat;
            scn.init();

            sequences = new List<SequenceInput>();
        }
    }