| Détecter clic de souris sur un objet | |
|
|
Auteur | Message |
---|
Nickeau Utilisateur confirmé: Rang *
![Nickeau](https://2img.net/u/3412/18/80/54/avatars/2015-26.jpg)
Messages : 175 Projet Actuel : Cruma Forest
![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | Sujet: Détecter clic de souris sur un objet Lun 18 Mar 2013 - 18:07 | |
| Bonjour,
Je voudrais lancer une action lorsque l'on clic avec la souris sur un objet mais sans utiliser l'Event MOUSE, mais un code dans un Event STEP car ce code serait générique pour plusieurs objets différents.
En gros existe t'il un code qui ressemblerait à cela dans une STEP :
if (bouton gauche clique sur Toto) action A if (bouton gauche clique sur Tata) action B
Merci d'avance !! |
|
![Aller en bas](https://2img.net/i/empty.gif) | |
Térence Utilisateur confirmé: Rang *****
![Térence](https://2img.net/u/3412/18/80/54/avatars/1895-83.png)
Messages : 2213 Localisation : Oui
![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | Sujet: Re: Détecter clic de souris sur un objet Lun 18 Mar 2013 - 18:17 | |
| mouse_x et mouse_y, ensuite tu compare avec les coordonnées de ton perso (regarde les collisions AABB si tu sais pas comment faire) |
|
![Aller en bas](https://2img.net/i/empty.gif) | |
Nickeau Utilisateur confirmé: Rang *
![Nickeau](https://2img.net/u/3412/18/80/54/avatars/2015-26.jpg)
Messages : 175 Projet Actuel : Cruma Forest
![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | Sujet: Re: Détecter clic de souris sur un objet Lun 18 Mar 2013 - 18:27 | |
| Merci, Bhou je pensais qu'une commande toute faite existait .... >_< Collision AABB je ne sais pas du tout ce que c'est, ce n'est pas non plus cité dans http://www.lecbna.org/pages/base.php?subaction=showfull&id=1202494125&archive=&start_from=&ucat=12&En fait je devrais utiliser la commande qui vérifie si le clic gauche est activé, et si TRUE je vérifie sur quel objet est la souris ? Du type if ((blabla clic gauche=true) && place_meeting(mouse_x,mouse_y,toto)=true) {action A} if ((blabla clic gauche=true) && place_meeting(mouse_x,mouse_y,tata)=true) {action B} Thx !!! |
|
![Aller en bas](https://2img.net/i/empty.gif) | |
Térence Utilisateur confirmé: Rang *****
![Térence](https://2img.net/u/3412/18/80/54/avatars/1895-83.png)
Messages : 2213 Localisation : Oui
![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | Sujet: Re: Détecter clic de souris sur un objet Lun 18 Mar 2013 - 18:29 | |
| Ouais ben c'est ca, en fait AABB t'en a pas besoin, j'avais oublié place_meeting, mais sinon en cherchant sur google tu trouve. |
|
![Aller en bas](https://2img.net/i/empty.gif) | |
Nickeau Utilisateur confirmé: Rang *
![Nickeau](https://2img.net/u/3412/18/80/54/avatars/2015-26.jpg)
Messages : 175 Projet Actuel : Cruma Forest
![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | Sujet: Re: Détecter clic de souris sur un objet Lun 18 Mar 2013 - 18:33 | |
| |
|
![Aller en bas](https://2img.net/i/empty.gif) | |
D-z Utilisateur confirmé: Rang *****
![D-z](https://2img.net/u/3412/18/80/54/avatars/1588-46.png)
Messages : 1611 Localisation : Montpellier
![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | Sujet: Re: Détecter clic de souris sur un objet Lun 18 Mar 2013 - 18:43 | |
| Tu peux faire mieux : - Code:
-
if(mouse_check_pressed(mb_left)) { obj = instance_place(mouse_x, mouse_y, all); // all peut être remplacé par un objet parent pour ne tester que ses fils. // obj contient désormais l'ID de l'instance sous la souris, ou noone. } |
|
![Aller en bas](https://2img.net/i/empty.gif) | |
Shurigame Habitué
![Shurigame](https://2img.net/i/fa/i/avatars/gallery/Divers/Divers_30.gif)
Messages : 83 Localisation : Tours Projet Actuel : Développez le monde parallèle
![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | Sujet: Re: Détecter clic de souris sur un objet Lun 18 Mar 2013 - 18:50 | |
| Salut, Sinon tu fait un code de ce style - Code:
-
if mouse_check_button_pressed(mb_left) and place_meeting(mouse_x,mouse_y,objet) then {----------Ton action--------} |
|
![Aller en bas](https://2img.net/i/empty.gif) | |
Nickeau Utilisateur confirmé: Rang *
![Nickeau](https://2img.net/u/3412/18/80/54/avatars/2015-26.jpg)
Messages : 175 Projet Actuel : Cruma Forest
![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | Sujet: Re: Détecter clic de souris sur un objet Lun 18 Mar 2013 - 19:00 | |
| Super merci, la vous me mâchez bien le boulot ![beh](/users/3412/18/80/54/smiles/282557.png) mais je ne vais pas me plaindre. Un jour faudra que je m’intéresse de plus près aux ID, quand plusieurs "tourelles" identiques attaquent plusieurs "ennemis"identiques, les ID doivent bien servir. |
|
![Aller en bas](https://2img.net/i/empty.gif) | |
D-z Utilisateur confirmé: Rang *****
![D-z](https://2img.net/u/3412/18/80/54/avatars/1588-46.png)
Messages : 1611 Localisation : Montpellier
![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | Sujet: Re: Détecter clic de souris sur un objet Lun 18 Mar 2013 - 19:26 | |
| Ici c'est surtout pour factoriser le code : place_meeting et instance_place sont essentiellement la même fonction, sauf qu'avec instance_place tu ne fais qu'un appel. |
|
![Aller en bas](https://2img.net/i/empty.gif) | |
Nickeau Utilisateur confirmé: Rang *
![Nickeau](https://2img.net/u/3412/18/80/54/avatars/2015-26.jpg)
Messages : 175 Projet Actuel : Cruma Forest
![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | Sujet: Re: Détecter clic de souris sur un objet Lun 18 Mar 2013 - 19:39 | |
| La, j'avoue que je n'ai pas compris ... factoriser le code o_O Ensuite mon place_meeting(mouse_x,mouse_y,toto) ne marche pas, je clique bien sur toto mais mon action ne se lance pas. L'action est bien codée car si je vire place_meeting(...) l'action se lance bien dès que je clique gauche. Je ne sais pas si c'est important mais j'ai bien un masque de collision sur toto. Je vais bien trouver ... |
|
![Aller en bas](https://2img.net/i/empty.gif) | |
Nickeau Utilisateur confirmé: Rang *
![Nickeau](https://2img.net/u/3412/18/80/54/avatars/2015-26.jpg)
Messages : 175 Projet Actuel : Cruma Forest
![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | Sujet: Re: Détecter clic de souris sur un objet Lun 18 Mar 2013 - 19:44 | |
| Ha ok Factoriser avec ALL, mais justement je veux bien différencier ou je clique. Par contre je bloque toujours >_< ... Thx |
|
![Aller en bas](https://2img.net/i/empty.gif) | |
D-z Utilisateur confirmé: Rang *****
![D-z](https://2img.net/u/3412/18/80/54/avatars/1588-46.png)
Messages : 1611 Localisation : Montpellier
![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | Sujet: Re: Détecter clic de souris sur un objet Lun 18 Mar 2013 - 19:57 | |
| "all" te permet de tester avec toutes les instances d'un coup, et te retourne l'ID (unique) de celle sous le curseur. Tu peux ensuite accéder à ses champs ou appeler des fonctions dessus.
obj.object_index en particulier te permettra de savoir de quel objet il s'agit. |
|
![Aller en bas](https://2img.net/i/empty.gif) | |
Nickeau Utilisateur confirmé: Rang *
![Nickeau](https://2img.net/u/3412/18/80/54/avatars/2015-26.jpg)
Messages : 175 Projet Actuel : Cruma Forest
![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | Sujet: Re: Détecter clic de souris sur un objet Lun 18 Mar 2013 - 20:06 | |
| Hum ok je vois, c'est plus poussé mais faut quand mm un code un poil plus long sans être énorme. Ca me sera surement utile mais dans un 1er temps j'aimerai quand mm réussir mon code avec place_meeting ... RHAAAa |
|
![Aller en bas](https://2img.net/i/empty.gif) | |
D-z Utilisateur confirmé: Rang *****
![D-z](https://2img.net/u/3412/18/80/54/avatars/1588-46.png)
Messages : 1611 Localisation : Montpellier
![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | Sujet: Re: Détecter clic de souris sur un objet Lun 18 Mar 2013 - 20:22 | |
| Poste donc ton code, qu'on y jette un œil. |
|
![Aller en bas](https://2img.net/i/empty.gif) | |
Nickeau Utilisateur confirmé: Rang *
![Nickeau](https://2img.net/u/3412/18/80/54/avatars/2015-26.jpg)
Messages : 175 Projet Actuel : Cruma Forest
![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | Sujet: Re: Détecter clic de souris sur un objet Lun 18 Mar 2013 - 22:42 | |
| Je pense que le code seul ne sera pas suffisant mais voila :
if (mouse_check_button_released(mb_left) && place_meeting(mouse_x,mouse_y,tourelle_1)) up_1=4 Et donc je clique sur l'objet tourelle_1 et rien ne se passe
Si je garde seulement le code du dessous, ça marche donc le pb vient bien du place_meeting if mouse_check_button_released(mb_left) up_1=4
Thx |
|
![Aller en bas](https://2img.net/i/empty.gif) | |
D-z Utilisateur confirmé: Rang *****
![D-z](https://2img.net/u/3412/18/80/54/avatars/1588-46.png)
Messages : 1611 Localisation : Montpellier
![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | Sujet: Re: Détecter clic de souris sur un objet Lun 18 Mar 2013 - 22:50 | |
| Pourquoi j'y ai pas pensé.
place_meeting() fonctionne avec le mask de l'objet appelant. Pour tester un point, c'est position_meeting()... (instance_position pour récupérer l'ID) |
|
![Aller en bas](https://2img.net/i/empty.gif) | |
Nickeau Utilisateur confirmé: Rang *
![Nickeau](https://2img.net/u/3412/18/80/54/avatars/2015-26.jpg)
Messages : 175 Projet Actuel : Cruma Forest
![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | Sujet: Re: Détecter clic de souris sur un objet Lun 18 Mar 2013 - 22:53 | |
| Super merci ![gnii](/users/3412/18/80/54/smiles/762289.png) ...pourtant j'avais beau lire et relire l'aide GML ça semblait bon comme commande. Thx encore, allé en route pour le prochaine problème ![Wink](https://2img.net/i/fa/i/smiles/icon_wink.gif) |
|
![Aller en bas](https://2img.net/i/empty.gif) | |
D-z Utilisateur confirmé: Rang *****
![D-z](https://2img.net/u/3412/18/80/54/avatars/1588-46.png)
Messages : 1611 Localisation : Montpellier
![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | Sujet: Re: Détecter clic de souris sur un objet Lun 18 Mar 2013 - 22:57 | |
| En gros, place_meeting() teste si l'objet qui l'appelle entrerait en collision avec l'objet en paramètre s'il se déplaçait à la position spécifiée. L'appeler avec un objet sans mask teste donc la collision avec rien, et ne renvoie jamais vrai... |
|
![Aller en bas](https://2img.net/i/empty.gif) | |
Nickeau Utilisateur confirmé: Rang *
![Nickeau](https://2img.net/u/3412/18/80/54/avatars/2015-26.jpg)
Messages : 175 Projet Actuel : Cruma Forest
![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | Sujet: Re: Détecter clic de souris sur un objet Lun 18 Mar 2013 - 23:23 | |
| Ha ok merci, utile aussi. Bon c'est cool j'ai plus ou moins codé le système d'upgrade de mes tourelles. |
|
![Aller en bas](https://2img.net/i/empty.gif) | |
Contenu sponsorisé
![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | Sujet: Re: Détecter clic de souris sur un objet ![Détecter clic de souris sur un objet Empty](https://2img.net/i/empty.gif) | |
| |
|
![Aller en bas](https://2img.net/i/empty.gif) | |
| Détecter clic de souris sur un objet | |
|