Ejemplo n.º 1
0
    // Update is called once per frame
    override public void Update()
    {
        switch (action_boutton)
        {
        case ACTIONS_BOUTTON.APPUI:
            action_detectee = Input.GetMouseButtonDown((int)boutton);
            break;

        case ACTIONS_BOUTTON.RELACHE:
            action_detectee = Input.GetMouseButtonUp((int)boutton);
            break;

        case ACTIONS_BOUTTON.MAINTENU:
            action_detectee = Input.GetMouseButton((int)boutton);
            break;
        }

        if (action_detectee)
        {
            if (test_Mouse_Picking(out temp_GO))
            {
                Debug.Log("Clic sur " + temp_GO.name);
                Object_Picked(temp_GO);
            }
            else if (descriptionAction != "")
            {
                CommonDevTools.DEBUG(descriptionAction);    // en attendant meilleure UI....
            }
        }
    }
    // Update is called once per frame
    override public void Update()
    {
        switch (action_boutton)
        {
        case ACTIONS_BOUTTON.APPUI:
            action_detectee = Input.GetMouseButtonDown((int)boutton);
            break;

        case ACTIONS_BOUTTON.RELACHE:
            action_detectee = Input.GetMouseButtonUp((int)boutton);
            break;

        case ACTIONS_BOUTTON.MAINTENU:
            action_detectee = Input.GetMouseButton((int)boutton);
            break;
        }

        if (action_detectee)
        {
            print("Click apres ... " + nbSpheresSelectionnees);
            if (test_Mouse_Picking())
            {
                Object_Picked();
            }
            else
            {
                CommonDevTools.DEBUG(descriptionAction); // en attendant meilleure UI....
            }
        }
    }
Ejemplo n.º 3
0
    /* à partir des objets passés en paramètres, rescencer tous les scripts représentants des évenements de la TL
     * il s'agit des scripts (ou instances de classes) réalisant l'interface Interface_TL_Events , quelque soit la classe
     * pour cela le code s'appuie essentiellement sur le méthode GetComponents<Interface_TL_Events>()
     */
    public void Configurer(Event_TL[] __Events_TL)
    {
        // ====> récupérer et vérifier les évenements passés en paramètres
        if (p_Liste_TL_Events != null)
        {
            p_Liste_TL_Events.Clear();                              // vider la liste (si 2ème ou suivantes exécutions....
        }
        else
        {
            p_Liste_TL_Events = new List <Interface_TL_Events>();   // 1ere exécution : instantiation
        }
        p_nb_TL_Events = 0;

        foreach (Event_TL _TL_event in __Events_TL)
        {
            // un objet valide ?
            if (_TL_event.GO == null)
            {
                CommonDevTools.WARNING("objet event  non défini : NULL");
                break;
            }
            // activer GO si inactif ?
            if (_TL_event.GO.active == false)
            {
                if (_TL_event.activer_GO_si_inactif)
                {
                    _TL_event.GO.SetActive(true);
                }
            }
            // recherche des scripts évenements  = components impémentant l'interface Interface_TL_Events
            Interface_TL_Events[] __tabtle = _TL_event.GO.GetComponents <Interface_TL_Events>();
            for (int i = 0; i < __tabtle.Length; i++)

            {
                Debug.Log("nvruizegbze");
                if (__tabtle[i].getDuration_TL_Event() <= 0f)
                {
                    CommonDevTools.WARNING("object " + _TL_event.GO.name + " event n° " + i + " durée invalide  : IGNORE !");
                    continue;       // on passe à l'évenement suivant
                }
                if (__tabtle[i].getStartTime_TL_Event() > dureeMax)
                {
                    CommonDevTools.WARNING("object " + _TL_event.GO.name + " event n° " + i + " Debut apres fin partie (>durée max) : IGNORE !");
                    continue;       // on passe à l'évenement suivant
                }
                // evenement OK : ajouté
                print("object " + _TL_event.GO.name + " event n° " + i + " ajouté !");

                p_Liste_TL_Events.Add(__tabtle[i]);
                p_nb_TL_Events++;
            }
        }


        // Methode 1
        ConstruireTimeLine();
    }
    public void Configurer(Scenario_Etape[] __etapes_du_scenario)
    {
        // méthode non robuste
        //p_etapes.AddRange(__etapes_du_scenario);

        // méthode  robuste
        // ====> vérifier si les étapes  passées en paramètres sont valides
        if (p_etapes != null)
        {
            p_etapes.Clear(); // vider le tableau (si 2ème ou suivantes exécutions....
        }
        else
        {
            p_etapes = new List <Scenario_Etape>(); // 1ere exécution : instantiation
        }
        nbEtapes = 0;

        foreach (Scenario_Etape _etape in __etapes_du_scenario)
        {
            // un objet valide ?
            if (_etape.interactiveObject == null)
            {
                CommonDevTools.QUIT_APP("objet étape " + nbEtapes + " non défini");
            }

            // un type d'intearction défini ?
            if (_etape.interaction == Scenario_Etape.Interactions.UNDEFINED)
            {
                CommonDevTools.ERROR("interaction étape " + nbEtapes + " non définie", this.gameObject);
            }

            // recherches des components dérivés de Action : ! seront tous ajoutés, qu'il soient activés ou non !
            _etape.actions = _etape.interactiveObject.GetComponents <Action_Scenario_Etape>();

            // au moins une action définie ?
            if (_etape.actions.Length == 0)
            {
                CommonDevTools.ERROR("pas d'actions pour l'étape " + nbEtapes + " et l'objet " + _etape.interactiveObject.name, this.gameObject);
            }
            else
            {
                CommonDevTools.DEBUG(_etape.actions.Length + " actions pour l'étape " + nbEtapes + " et l'objet " + _etape.interactiveObject.name);
            }

            // desactiver les actions et met isPartOf_Scenario à vrai
            foreach (Action_Scenario_Etape action in _etape.actions)
            {
                action.enabled           = false;
                action.isPartOf_Scenario = true;
            }

            // Etape valide : ajouté au scénario
            p_etapes.Add(_etape);
            nbEtapes++;
        }
    }
Ejemplo n.º 5
0
 // Update is called once per frame
 override public void Update()
 {
     if (Input.GetKey(KeyCode.Space))
     {
         Declencher_Etape_Suivante_Du_Scenario();
     }
     if (Input.anyKey)
     {
         CommonDevTools.DEBUG(descriptionAction);    // en attendant meilleure UI....
     }
 }
Ejemplo n.º 6
0
 public override void ActionObjetRamasse()
 {
     if (CheckRessource() || IDRessourceNecessaire == -1)
     {
         base.ActionObjetRamasse();
         CommonDevTools.DEBUG("Bonus +10!");
         _MGR_Score.Instance.setScore(_MGR_Score.Instance.getScore() + ScoreAjoute);
         gameObject.SetActive(false);
         enabled = false;
     }
 }
 //Launch one scene   by index
 public void LoadScene(int __num_scene)
 {
     if (__num_scene >= p_nbScenes)
     {
         CommonDevTools.QUIT_APP("! Erreur de référence de scène !");
     }
     else
     {
         SceneManager.LoadScene(p_arr_Scenes[__num_scene]);
     }
     // SceneManager.LoadScene(p_list_Scenes[i]);
     // pour les dictionnaires  pas vraiment adapté  car indexé par clé  (ici chaine)
 }
Ejemplo n.º 8
0
    void OnTriggerEnter(Collider other)
    {
        CommonDevTools.DEBUG("Objet touché : " + other.name + " objet source : " + gameObject.name);
        PickableObject __o = other.gameObject.GetComponent <PickableObject>();

        if (__o == null)
        {
            CommonDevTools.ERROR("erreur sur objet à ramasser ! ", other.gameObject);
        }
        else
        {
            __o.Pick();
        }
    }
Ejemplo n.º 9
0
    void OnTriggerEnter(Collider other)
    {
        CommonDevTools.DEBUG("Object touché: " + other.name + " objet source " + gameObject.name);
        ObjetsARamasser __o = other.gameObject.GetComponent <ObjetsARamasser>();

        if (__o == null)
        {
            CommonDevTools.ERROR("erreur sur objet à ramasser ! ", other.gameObject);
        }
        else
        {
            __o.ActionObjetRamasse();
        }
    }
    private void ActiverEtapeEnCours()
    {
        p_etapeEnCours      = p_etapes[p_num_etapeEnCours];
        ojet_etape_en_cours = p_etapeEnCours.interactiveObject;

        CommonDevTools.DEBUG(">>> Etape " + p_num_etapeEnCours + " :  l'OBJET " + p_etapeEnCours.interactiveObject.name + " et ses " + p_etapeEnCours.actions.Length + " actions sont activés.");
        CommonDevTools.DEBUG(p_etapeEnCours.messageDescription);    // en attendant meilleure UI....

        ojet_etape_en_cours.SetActive(true);
        foreach (Action_Scenario_Etape action in p_etapeEnCours.actions)
        {
            action.enabled = true;
        }
    }
    //Launch one scene by name
    public void LoadScene(string __nom_scene)
    {
        // méthode non robuste : SceneManager.LoadScene(__scene_name);

        // méthode robuste : vérifier que le nom est correct    // le dictionnaire est ici approprié
        string _nom_scene_verifié;

        if (p_dict_Scenes.TryGetValue(__nom_scene, out _nom_scene_verifié))
        {
            SceneManager.LoadScene(_nom_scene_verifié);
        }
        else
        {
            CommonDevTools.QUIT_APP("! Erreur de référence de scène !");
        }
    }
Ejemplo n.º 12
0
    public uint IncreaseScore(string _strBonus)
    {
        int __bonus;

        if (!p_dicBonus.ContainsKey(_strBonus))
        {
            CommonDevTools.ERROR("type de bonus non défini : " + _strBonus, this.gameObject);
            __bonus = 0;
        }
        else
        {
            __bonus = p_dicBonus[_strBonus];
        }

        return(IncreaseScore(__bonus));
    }
Ejemplo n.º 13
0
    public uint AugmenterScore(string _strBonus)
    {
        int __bonus;

        if (!p_allBonus.ContainsKey(_strBonus))
        {
            CommonDevTools.ERROR("type de bonus non défini: " + _strBonus, this.gameObject);
            __bonus = 0;
        }
        else
        {
            __bonus = p_allBonus[_strBonus];
        }

        print("score = " + score + " + nouveau bonus " + __bonus);
        return(AugmenterScore(__bonus));
    }
Ejemplo n.º 14
0
    // Update is called once per frame
    override public void Update()
    {
        if (gameObject.layer == 9)
        {
            gameObject.GetComponent <Renderer>().material.color = new Color32(0, 0, 255, 0);

            Debug.Log("Click on 9");
            switch (action_boutton)
            {
            case ACTIONS_BOUTTON.APPUI:
                action_detectee = Input.GetMouseButtonDown((int)boutton);
                break;

            case ACTIONS_BOUTTON.RELACHE:
                action_detectee = Input.GetMouseButtonUp((int)boutton);
                break;

            case ACTIONS_BOUTTON.MAINTENU:
                action_detectee = Input.GetMouseButton((int)boutton);
                break;
            }


            if (action_detectee)
            {
                if (test_Mouse_Picking())
                {
                    Object_Picked();
                }
                else
                {
                    CommonDevTools.DEBUG(descriptionAction); // en attendant meilleure UI....
                }
            }
        }
        else
        {
            gameObject.GetComponent <Renderer>().material.color = couleurBase;
        }
    }
Ejemplo n.º 15
0
    // jouer un son du jeu
    // vérifier que le son existe
    // trouver un lecteur libre (audioSource) ou en ajouter un s'ils sont tous en lecture
    // jouer le son sur le lecteur libre (avec le délai fourni)
    public void PlaySound(string __nom, float __delay = 0)
    { // à compéter //
        if (!p_sons.ContainsKey(__nom))
        {
            CommonDevTools.ERROR("nom de son non défini : " + __nom, this.gameObject);
        }
        AudioClip clip;

        p_sons.TryGetValue(__nom, out clip);
        if (p_listAudioSource.Count == 0)
        {
            GameObject newaudio;
            newaudio = Instantiate(AudioSourcePrefab);
            p_listAudioSource.Add(newaudio.GetComponent <AudioSource>());
        }
        foreach (var audio in p_listAudioSource)
        {
            if ((!audio.isPlaying))
            {
                audio.clip = clip;
                audio.Play();
            }
        }
    }
Ejemplo n.º 16
0
 public void PressQuit()
 {
     CommonDevTools.QUIT_APP("! fin demandée de l'application!");
 }
Ejemplo n.º 17
0
 public void Quit()
 {
     CommonDevTools.QUIT_APP("quit");
 }