Page 1 sur 1

Trouver une image à position aléatoire et cliquer aléatoirement dessus

Posté : 29 nov. 2017, 14:54
par boby22
Bonjour,

Je commence à maîtriser le logiciel de mieux en mieux et souhaite effectuer une nouvelle macro, mais je galère un petit peu.

Je souhaite rechercher une image "Ramasser" et cliquer dessus.
Cette image peut avoir une position différente (7 ou 8 positions différentes environ). Le plus compliqué, c'est que je souhaite cliquer aléatoirement sur cette image (à plus ou moins quelques pixels près), quelle que soit sa position.

Je dois créer plusieurs variables pour pouvoir alimenter les fonctions et calculs évolués:
Variable <RamasserX1>;0;Numerique;
Variable <RamasserY1>;0;Numerique;
Variable <RamasserX2>;0;Numerique;
Variable <RamasserY2>;0;Numerique;
Fonction <RamasserX2>;Hasard;Nombre;????;
Fonction <RamasserY2>;Hasard;Nombre;????;
Calcul évolué <RamasserX1>=<RamasserX2>+????
Calcul évolué <RamasserY1>=<RamasserY2>+????

Le problème c'est que je ne sais pas du tout quel chiffre rentrer dans les fonctions et calculs évolués car les coordonnées vont changer en fonction de la position de l'image

Peut-être dois-je rentrer certaines variables dans le "Résultat Position X" et "Résultat Position Y" de "Trouver image"?

Enfin voilà, ça commence à devenir assez compliqué pour moi :shock:

Merci d'avance!

Re: Trouver une image à position aléatoire et cliquer aléatoirement dessus

Posté : 29 nov. 2017, 19:36
par Onissius
Utilise trouve images pour la trouver, tu obtiens les coordonnées 0,0 de l'image.
Tu connais la taille de l'image, tu peux donc calculer l’intervalle de coordonnées contenant ton image.
Tu utilise un calcul évolué pour savoir quelles valeurs utiliser pour tes deux variables hasard.
Avec sa tu fais un clic au hasard dans ton image.

Simple.

Re: Trouver une image à position aléatoire et cliquer aléatoirement dessus

Posté : 29 nov. 2017, 20:59
par boby22
Et bien ça m'a l'air très simple mais il doit y avoir une base que je ne saisis pas.
Sachant que la variation de mon clic sur cette image serait d'environ X25 et Y7 (légèrement moins que la taille de l'image recherchée).

Voila ma base, mais il me manque un élément clef ^^

Variable <RamasserX1>;0;Numerique;
Variable <RamasserY1>;0;Numerique;
Variable <RamasserX2>;0;Numerique;
Variable <RamasserY2>;0;Numerique;
Trouve image Ramasser;682;738;735;803;691;752;729;766;<RamasserX1>;<RamasserY1>;1
Fonction <Ramasser1X2>;Hasard;Nombre;25;
Fonction <Ramasser1Y2>;Hasard;Nombre;7;
Calcul évolué <Ramasser1X1>=<Ramasser1X2>+...
Calcul évolué <Ramasser1Y1>=<Ramasser1Y2>+...

Je ne vois pas comment faire. J'ai peut-être tout simplement oublié de créer une nouvelle variable pour l'image?

Merci encore pour ton aide.

Re: Trouver une image à position aléatoire et cliquer aléatoirement dessus

Posté : 29 nov. 2017, 21:57
par Onissius
  • Variable <X_image>;0;Numerique;
    Variable <Y_image>;0;Numerique;
    Variable <Taille_X_de_l'image>;0;Numerique;
    Variable <Taille_Y_de_l'image>;0;Numerique;
    Variable <Random_X>;0;Numerique;
    Variable <Random_Y>;0;Numerique;

    Là, tu fait ton trouve image en utilisant comme variable :
    - <X_image> (X du point 0,0 du trouve image)
    - <Y_image> (Y du point 0,0 du trouve image)

    Fonction <Random_X>;Hasard;Nombre;<Taille_X_de_l'image>;
    Fonction <Random_Y>;Hasard;Nombre;<Taille_Y_de_l'image>;
    Calcul évolué <X_image>=<X_image>+<Random_X>
    Calcul évolué <Y_image>=<Y_image>+<Random_Y>
    Move Mouse <X_image>;<Y_image>;Indirect;
    Click Left click;