[RÉSOLU] pixel flottant

Vous voulez de l'aide ? Postez ici :)
Post Reply
totobis1
Posts: 10
Joined: 14 May 2010, 09:51

[RÉSOLU] pixel flottant

Post by totobis1 »

Encore moi
Je m'explique
Sur un jeu, je lance un bouchon de pêche qui tombe toujours au même endroit sur une même verticale a deux cm prêts.
Et qui est plus ou moins gros suivant s'il est proche ou éloigné de moi.
Ce bouchon flotte et bouge légèrement, il est de deux couleurs prédominantes non fixe(un avec des pixels bleu claire a plus foncé un avec des pixels marron clair a plus foncé).
À un moment donner le bouchon s'enfonce et je dois cliquer très rapidement.
J'ai réussi à faire en sorte que quand le bouchon tombe à un endroit précis, il détecte les pixels marron et attend et quand les pixels bleus descendent-il clic.
Question:
comment faire pour qu'il détecte des pixels dans une zone de deux cm et qu'il clic quand ils n'y sont plus?
User avatar
Jmgr
Admin
Posts: 1651
Joined: 07 Dec 2005, 15:45
Contact:

Re: pixel flottant

Post by Jmgr »

Pour l'instant c'est possible, mais avec du code, voir http://wiki.actionaz.org/doku.php?id=en ... ndsubimage.
La prochaine version 3.2.0 intègre une nouvelle action qui permet de chercher une image sur l'écran. Elle ne fonctionne pas si l'image est agrandie ou réduite, mais il y a un certain seuil de tolérance donc il faudra tester.
"My software never has bugs. It just develops random features."
totobis1
Posts: 10
Joined: 14 May 2010, 09:51

Re: pixel flottant

Post by totobis1 »

Bonjour
J'ai trouvé une parade pour mon problème.Tout fonctionnait quand tout à coup bug.Au lieu de sélectionner une couleur qui bouge je sélectionne un point fixe et quand la couleur change ==>action.Mais maintenant même si je sélectionne un pixel sur mon bureau ou une image simple pas une photo l’action se poursuit.
Comment fait-on pour poster le code.
Entre temps j'ai refais un teste avec ancienne et nouvelle version .
j'ai demander:
001 couleur pixel = ne rien faire
différente aller 002
002 clic (fermer une fenêtre)
il ferme la fenêtre qu'il ne devrait pas.
marto31
Posts: 45
Joined: 20 Oct 2011, 19:34

Re: pixel flottant

Post by marto31 »

Code: Select all

001 couleur pixel = ne rien faire
 différente aller 002 
002 clic (fermer une fenêtre)
il ferme la fenêtre qu'il ne devrait pas.
Ton code ne va pas, ne rien faire signifi allez à la ligne suivante.
Je pense que dans ton cas il faut faire "attendre".

Car là dans les 2 cas sa va à la ligne 002.
marto31
Posts: 45
Joined: 20 Oct 2011, 19:34

Re: pixel flottant

Post by marto31 »

Voila un exemple de script qui forme une boucle et ne fait rien tant que la couleur n'est pas celle souhaité, puis quand celle ci est bonne l'action clic se lance.

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<scriptfile>
    <settings program="actionaz" version="3.1.1" scriptVersion="1.0.0" os="Windows"/>
    <actions>
        <action name="ActionGoto" version="1.0.0"/>
        <action name="ActionClick" version="1.0.0"/>
        <action name="ActionPixelColor" version="1.0.0"/>
    </actions>
    <parameters/>
    <script pauseBefore="0" pauseAfter="0">
        <action name="ActionPixelColor">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="comparison">
                <subParameter name="value" code="0">equal</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="ifTrue">
                <subParameter name="line" code="0"></subParameter>
                <subParameter name="action" code="0">do_nothing</subParameter>
            </parameter>
            <parameter name="ifFalse">
                <subParameter name="line" code="0">003</subParameter>
                <subParameter name="action" code="0">goto</subParameter>
            </parameter>
            <parameter name="pixel">
                <subParameter name="position" code="0">738:268</subParameter>
                <subParameter name="color" code="0">255:255:255</subParameter>
            </parameter>
        </action>
        <action name="ActionClick">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <exception id="32" action="0" line=""/>
            <exception id="33" action="0" line=""/>
            <parameter name="button">
                <subParameter name="value" code="0">left</subParameter>
            </parameter>
            <parameter name="action">
                <subParameter name="value" code="0">pressRelease</subParameter>
            </parameter>
            <parameter name="amount">
                <subParameter name="value" code="0">1</subParameter>
            </parameter>
            <parameter name="position">
                <subParameter name="value" code="0">898:498</subParameter>
            </parameter>
        </action>
        <action name="ActionGoto">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="line">
                <subParameter name="value" code="0">001</subParameter>
            </parameter>
        </action>
    </script>
</scriptfile>
totobis1
Posts: 10
Joined: 14 May 2010, 09:51

Re: pixel flottant

Post by totobis1 »

mais ouui
De plus j'ai retrouvé les premiers scripts en plus complexe et c’était ça.
La machine fait bien ce qu'on lui demande.
Mais c'est vrais que pour moi attendre c'est attendre.
merci je sauvegarde ça.
comment fait-on pour poster un script?
totobis1
Posts: 10
Joined: 14 May 2010, 09:51

Re: pixel flottant

Post by totobis1 »

bonsoir
comment fait-on pour poster un script sur le forum?
User avatar
Jmgr
Admin
Posts: 1651
Joined: 07 Dec 2005, 15:45
Contact:

Re: pixel flottant

Post by Jmgr »

Il suffit d'aller dans Fichier->Exporter->Contenu du script et de copier/coller le texte entre deux balises "Code" sur le forum, c'est le troisième bouton.
"My software never has bugs. It just develops random features."
totobis1
Posts: 10
Joined: 14 May 2010, 09:51

Re: pixel flottant

Post by totobis1 »

Voilà j'ai fait ça mais je voudrais que passer un certain temps, il retourne à la boucle.
J'ai mis des conditions dans aller a mais ça ne marche pas.

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<scriptfile>
    <settings program="actionaz" version="3.1.1" scriptVersion="1.0.0" os="Windows"/>
    <actions>
        <action name="ActionGoto" version="1.0.0"/>
        <action name="ActionLoop" version="1.0.0"/>
        <action name="ActionClick" version="1.0.0"/>
        <action name="ActionPause" version="1.0.0"/>
        <action name="ActionPixelColor" version="1.0.0"/>
        <action name="ActionKey" version="1.0.0"/>
    </actions>
    <parameters/>
    <script pauseBefore="0" pauseAfter="0">
        <action name="ActionKey">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <exception id="32" action="0" line=""/>
            <exception id="33" action="0" line=""/>
            <parameter name="alt">
                <subParameter name="value" code="0">false</subParameter>
            </parameter>
            <parameter name="action">
                <subParameter name="value" code="0">pressRelease</subParameter>
            </parameter>
            <parameter name="meta">
                <subParameter name="value" code="0">false</subParameter>
            </parameter>
            <parameter name="key">
                <subParameter name="key" code="0">1</subParameter>
                <subParameter name="isQtKey" code="0">true</subParameter>
            </parameter>
            <parameter name="ctrl">
                <subParameter name="value" code="0">false</subParameter>
            </parameter>
            <parameter name="shift">
                <subParameter name="value" code="0">false</subParameter>
            </parameter>
            <parameter name="type">
                <subParameter name="value" code="0">win32</subParameter>
            </parameter>
            <parameter name="pause">
                <subParameter name="value" code="0">10</subParameter>
            </parameter>
        </action>
        <action name="ActionPixelColor">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="comparison">
                <subParameter name="value" code="0">darker</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="ifTrue">
                <subParameter name="line" code="0">003</subParameter>
                <subParameter name="action" code="0">goto</subParameter>
            </parameter>
            <parameter name="ifFalse">
                <subParameter name="line" code="0">004</subParameter>
                <subParameter name="action" code="0">goto</subParameter>
            </parameter>
            <parameter name="pixel">
                <subParameter name="position" code="0">726:284</subParameter>
                <subParameter name="color" code="0">15:25:60</subParameter>
            </parameter>
        </action>
        <action name="ActionGoto" timeout="140000">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="2" line="006"/>
            <parameter name="line">
                <subParameter name="value" code="0">002</subParameter>
            </parameter>
        </action>
        <action name="ActionClick">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <exception id="32" action="0" line=""/>
            <exception id="33" action="0" line=""/>
            <parameter name="button">
                <subParameter name="value" code="0">right</subParameter>
            </parameter>
            <parameter name="action">
                <subParameter name="value" code="0">pressRelease</subParameter>
            </parameter>
            <parameter name="amount">
                <subParameter name="value" code="0">1</subParameter>
            </parameter>
            <parameter name="position">
                <subParameter name="value" code="0">718:307</subParameter>
            </parameter>
        </action>
        <action name="ActionPause">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="duration">
                <subParameter name="value" code="0">8</subParameter>
            </parameter>
            <parameter name="unit">
                <subParameter name="value" code="0">seconds</subParameter>
            </parameter>
        </action>
        <action name="ActionLoop">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="line">
                <subParameter name="value" code="0">001</subParameter>
            </parameter>
            <parameter name="count">
                <subParameter name="value" code="0">1000000000</subParameter>
            </parameter>
        </action>
    </script>
</scriptfile>
User avatar
Jmgr
Admin
Posts: 1651
Joined: 07 Dec 2005, 15:45
Contact:

Re: pixel flottant

Post by Jmgr »

Il y avait un bug dans la version 3.1.1 qui affectait l'action couleur de pixel, c'est corrigé avec la version 3.2.0, peux-tu réessayer avec cette version ?

Je te conseille de choisir "Attendre" dans "Si vrai" dans ton action de couleur de pixel, ça t'évite d'avoir à utiliser une boucle pour retester la couleur du pixel.
Voilà ton script simplifié :

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<scriptfile>
    <settings program="actionaz" version="3.2.0" scriptVersion="1.0.0" os="GNU/Linux"/>
    <actions>
        <action name="ActionLoop" version="1.0.0"/>
        <action name="ActionClick" version="1.0.0"/>
        <action name="ActionPause" version="1.0.0"/>
        <action name="ActionPixelColor" version="1.0.0"/>
        <action name="ActionKey" version="1.0.0"/>
    </actions>
    <parameters/>
    <script pauseBefore="0" pauseAfter="0">
        <action name="ActionKey" label="début">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <exception id="32" action="0" line=""/>
            <exception id="33" action="0" line=""/>
            <parameter name="alt">
                <subParameter name="value" code="0">false</subParameter>
            </parameter>
            <parameter name="action">
                <subParameter name="value" code="0">pressRelease</subParameter>
            </parameter>
            <parameter name="meta">
                <subParameter name="value" code="0">false</subParameter>
            </parameter>
            <parameter name="key">
                <subParameter name="key" code="0">1</subParameter>
                <subParameter name="isQtKey" code="0">true</subParameter>
            </parameter>
            <parameter name="ctrl">
                <subParameter name="value" code="0">false</subParameter>
            </parameter>
            <parameter name="shift">
                <subParameter name="value" code="0">false</subParameter>
            </parameter>
            <parameter name="type">
                <subParameter name="value" code="0">win32</subParameter>
            </parameter>
            <parameter name="pause">
                <subParameter name="value" code="0">10</subParameter>
            </parameter>
        </action>
        <action name="ActionPixelColor">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="comparison">
                <subParameter name="value" code="0">lighter</subParameter>
            </parameter>
            <parameter name="variable">
                <subParameter name="value" code="0"></subParameter>
            </parameter>
            <parameter name="ifTrue">
                <subParameter name="line" code="0">clic</subParameter>
                <subParameter name="action" code="0">goto</subParameter>
            </parameter>
            <parameter name="ifFalse">
                <subParameter name="line" code="0"></subParameter>
                <subParameter name="action" code="0">wait</subParameter>
            </parameter>
            <parameter name="pixel">
                <subParameter name="position" code="0">726:284</subParameter>
                <subParameter name="color" code="0">15:25:60</subParameter>
            </parameter>
        </action>
        <action name="ActionClick" label="clic">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <exception id="32" action="0" line=""/>
            <exception id="33" action="0" line=""/>
            <parameter name="button">
                <subParameter name="value" code="0">right</subParameter>
            </parameter>
            <parameter name="action">
                <subParameter name="value" code="0">pressRelease</subParameter>
            </parameter>
            <parameter name="amount">
                <subParameter name="value" code="0">1</subParameter>
            </parameter>
            <parameter name="position">
                <subParameter name="value" code="0">718:307</subParameter>
            </parameter>
        </action>
        <action name="ActionPause">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="duration">
                <subParameter name="value" code="0">8</subParameter>
            </parameter>
            <parameter name="unit">
                <subParameter name="value" code="0">seconds</subParameter>
            </parameter>
        </action>
        <action name="ActionLoop">
            <exception id="0" action="0" line=""/>
            <exception id="1" action="0" line=""/>
            <exception id="2" action="1" line=""/>
            <parameter name="line">
                <subParameter name="value" code="0">début</subParameter>
            </parameter>
            <parameter name="count">
                <subParameter name="value" code="0">1000000000</subParameter>
            </parameter>
        </action>
    </script>
</scriptfile>
"My software never has bugs. It just develops random features."
Post Reply