// 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.... } } }
/* à 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++; } }
// 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.... } }
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) }
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(); } }
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 !"); } }
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)); }
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)); }
// 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; } }
// 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(); } } }
public void PressQuit() { CommonDevTools.QUIT_APP("! fin demandée de l'application!"); }
public void Quit() { CommonDevTools.QUIT_APP("quit"); }