Détecter clic de souris sur un objet Hitskin_logo Hitskin.com

Ceci est une prévisualisation d'un thème de Hitskin.com
Installer le thèmeRetourner sur la fiche du thème



AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  ConnexionConnexion  
Le deal à ne pas rater :
Où acheter la display japonaise One Piece Card Game PRB-01 One Piece ...
Voir le deal

 

 Détecter clic de souris sur un objet

Aller en bas 
4 participants
AuteurMessage
Nickeau
Utilisateur confirmé: Rang *
Nickeau


Messages : 175
Projet Actuel : Cruma Forest

Détecter clic de souris sur un objet Empty
MessageSujet: Détecter clic de souris sur un objet   Détecter clic de souris sur un objet EmptyLun 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 !!
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Détecter clic de souris sur un objet Empty
MessageSujet: Re: Détecter clic de souris sur un objet   Détecter clic de souris sur un objet EmptyLun 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)
Revenir en haut Aller en bas
Nickeau
Utilisateur confirmé: Rang *
Nickeau


Messages : 175
Projet Actuel : Cruma Forest

Détecter clic de souris sur un objet Empty
MessageSujet: Re: Détecter clic de souris sur un objet   Détecter clic de souris sur un objet EmptyLun 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 !!!
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Détecter clic de souris sur un objet Empty
MessageSujet: Re: Détecter clic de souris sur un objet   Détecter clic de souris sur un objet EmptyLun 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.
Revenir en haut Aller en bas
Nickeau
Utilisateur confirmé: Rang *
Nickeau


Messages : 175
Projet Actuel : Cruma Forest

Détecter clic de souris sur un objet Empty
MessageSujet: Re: Détecter clic de souris sur un objet   Détecter clic de souris sur un objet EmptyLun 18 Mar 2013 - 18:33

Merci, je teste cela.
Revenir en haut Aller en bas
D-z
Utilisateur confirmé: Rang *****
D-z


Messages : 1611
Localisation : Montpellier

Détecter clic de souris sur un objet Empty
MessageSujet: Re: Détecter clic de souris sur un objet   Détecter clic de souris sur un objet EmptyLun 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.
}
Revenir en haut Aller en bas
Shurigame
Habitué
Shurigame


Messages : 83
Localisation : Tours
Projet Actuel : Développez le monde parallèle

Détecter clic de souris sur un objet Empty
MessageSujet: Re: Détecter clic de souris sur un objet   Détecter clic de souris sur un objet EmptyLun 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--------}
Revenir en haut Aller en bas
http://Shurigame41.wix.com/home
Nickeau
Utilisateur confirmé: Rang *
Nickeau


Messages : 175
Projet Actuel : Cruma Forest

Détecter clic de souris sur un objet Empty
MessageSujet: Re: Détecter clic de souris sur un objet   Détecter clic de souris sur un objet EmptyLun 18 Mar 2013 - 19:00

Super merci, la vous me mâchez bien le boulot beh mais je ne vais pas me plaindre. hap

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.
Revenir en haut Aller en bas
D-z
Utilisateur confirmé: Rang *****
D-z


Messages : 1611
Localisation : Montpellier

Détecter clic de souris sur un objet Empty
MessageSujet: Re: Détecter clic de souris sur un objet   Détecter clic de souris sur un objet EmptyLun 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.
Revenir en haut Aller en bas
Nickeau
Utilisateur confirmé: Rang *
Nickeau


Messages : 175
Projet Actuel : Cruma Forest

Détecter clic de souris sur un objet Empty
MessageSujet: Re: Détecter clic de souris sur un objet   Détecter clic de souris sur un objet EmptyLun 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 ...
Revenir en haut Aller en bas
Nickeau
Utilisateur confirmé: Rang *
Nickeau


Messages : 175
Projet Actuel : Cruma Forest

Détecter clic de souris sur un objet Empty
MessageSujet: Re: Détecter clic de souris sur un objet   Détecter clic de souris sur un objet EmptyLun 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
Revenir en haut Aller en bas
D-z
Utilisateur confirmé: Rang *****
D-z


Messages : 1611
Localisation : Montpellier

Détecter clic de souris sur un objet Empty
MessageSujet: Re: Détecter clic de souris sur un objet   Détecter clic de souris sur un objet EmptyLun 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.
Revenir en haut Aller en bas
Nickeau
Utilisateur confirmé: Rang *
Nickeau


Messages : 175
Projet Actuel : Cruma Forest

Détecter clic de souris sur un objet Empty
MessageSujet: Re: Détecter clic de souris sur un objet   Détecter clic de souris sur un objet EmptyLun 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
Revenir en haut Aller en bas
D-z
Utilisateur confirmé: Rang *****
D-z


Messages : 1611
Localisation : Montpellier

Détecter clic de souris sur un objet Empty
MessageSujet: Re: Détecter clic de souris sur un objet   Détecter clic de souris sur un objet EmptyLun 18 Mar 2013 - 20:22

Poste donc ton code, qu'on y jette un œil.
Revenir en haut Aller en bas
Nickeau
Utilisateur confirmé: Rang *
Nickeau


Messages : 175
Projet Actuel : Cruma Forest

Détecter clic de souris sur un objet Empty
MessageSujet: Re: Détecter clic de souris sur un objet   Détecter clic de souris sur un objet EmptyLun 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
Revenir en haut Aller en bas
D-z
Utilisateur confirmé: Rang *****
D-z


Messages : 1611
Localisation : Montpellier

Détecter clic de souris sur un objet Empty
MessageSujet: Re: Détecter clic de souris sur un objet   Détecter clic de souris sur un objet EmptyLun 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)
Revenir en haut Aller en bas
Nickeau
Utilisateur confirmé: Rang *
Nickeau


Messages : 175
Projet Actuel : Cruma Forest

Détecter clic de souris sur un objet Empty
MessageSujet: Re: Détecter clic de souris sur un objet   Détecter clic de souris sur un objet EmptyLun 18 Mar 2013 - 22:53

Super merci gnii ...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
Revenir en haut Aller en bas
D-z
Utilisateur confirmé: Rang *****
D-z


Messages : 1611
Localisation : Montpellier

Détecter clic de souris sur un objet Empty
MessageSujet: Re: Détecter clic de souris sur un objet   Détecter clic de souris sur un objet EmptyLun 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...
Revenir en haut Aller en bas
Nickeau
Utilisateur confirmé: Rang *
Nickeau


Messages : 175
Projet Actuel : Cruma Forest

Détecter clic de souris sur un objet Empty
MessageSujet: Re: Détecter clic de souris sur un objet   Détecter clic de souris sur un objet EmptyLun 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.
Revenir en haut Aller en bas
Contenu sponsorisé





Détecter clic de souris sur un objet Empty
MessageSujet: Re: Détecter clic de souris sur un objet   Détecter clic de souris sur un objet Empty

Revenir en haut Aller en bas
 
Détecter clic de souris sur un objet
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Voir un objet suivre la souris avec un clic gauche maintenu!
» Clic du milieu de la souris
» Clic de souris n'importe où => Déclencher un évènement
» l'objet créé va vers la souris
» Souris sur objet 3D

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Entraide débutants-
Sauter vers: