Page 1 sur 1

[R] Utilisation des fonctions

Posté : sam. 19 déc. 2009 01:31
par phylonia
Voila j'aimerais s'avoir utiliser :

1) Comment lancer une fonction "func" a l'aide d'une fonction (j'ai vue sa quelque part je retrouve plus)

2) Comment sortir d'une boucle "do" et "until (avec une fonction d'arret)"

-----------------------------------------------------------

Pour le 1) c'est pas

Code : Tout sélectionner

            _"func"()
 
Au lieu de "func" le nom de la func ?

-----------------------------------------------------------

Pour le 2) je sais pas si un "ExitLoop" suffit pour faire

Code : Tout sélectionner

If @error then
Exitloop
"Aller a la fonction .... (je sais pas comment faire alors je marque sa)"
EndIf
 
Car je veux jongler avec des functions

Si ia pas sa sa va a cette fonction la fonction clique ici ici ici si ia toujours pas sa clique ici ici ici etc et une sérine de 10 ou 11fonctions je veux pas que sa appuis sur une touche a chaque fonction je veux que sa la lance auto

Re: [..] Utilisation des fonctions

Posté : sam. 19 déc. 2009 10:22
par GELDROC
Bonjours je te laisse ce petit exemple en espérant que cela va t'aider

voila la fonction 1 et 2 renvoi un résulta et donc la fonction 0 analyse c'est résulta a toi de jouer maintenant , bonne chance

Code : Tout sélectionner

_0()

Func _0()
Local $FUNC_1,  $FUNC_2
Local $Var1 = 1                     ;declaration de la varible pour la function 1
Local $Var2 = 0                     ;declaration de la varible pour la function 2

$FUNC_1 = _1($Var1)
If $FUNC_1 <> 1 Then 
MsgBox(0, "", $FUNC_1)
Else
MsgBox(0, "", "La variable de la function 1 est = a 1")
EndIf

$FUNC_2 = _2($Var2)
If $FUNC_2 <> 1 Then
MsgBox(0, "", $FUNC_2)
Else
MsgBox(0, "", "La variable de la function 2 est = a 1")
EndIf   
EndFunc 


Func _1($var)
    If $var = 1 Then
    Return 1
    Else 
    Return "La variable de la function 1 est Diferente de 1"
    EndIf
EndFunc

Func _2($var)
    If $var = 1 Then
    Return 1
    Else 
    Return "La variable de la function 2 est Diferente de 1"
    EndIf
EndFunc
 

Re: [..] Utilisation des fonctions

Posté : sam. 19 déc. 2009 11:18
par Tlem
Il est étrange de voir que certains cherche les complications alors qu'il y a vraiment plus simple.

Une fonction est un morceau de code qui est exécuté lorsque celle-ci est appelée. Et ce, depuis n'importe quel endroit du script voir même depuis un autre script (celui-ci est déclaré dans les Includes) ou même depuis la fonction elle même ... :roll:
Il est donc totalement ridicule de créer une fonction qui appellera une autre fonction ...

D'après le peut d'éléments que vous donnez, je dirais que vous devez créez autant de fonction que d'action ou séquence d'actions distinctes.
Ensuite c'est à vous de créer et d'organiser la trame d'utilisation de chacune des fonctions selon vos critères de choix et ceci peut être fait dans le corps de votre code ou pourquoi pas, dans une fonction à part. ;)

Pour illustré, voici un exemple de code :
► Afficher le texte
Pour votre deuxième question, effectivement ExitLoop permet de sortir de n'importe quelle boucle.
On s'en sert souvent dans les boucles While qui en règle générale sont infinie et donc pour éviter que le code tourne en rond indéfiniment, on crée une condition ou on teste une condition qui permettra la sortie de la boucle.
Ceci est donc valable pour n'importe quelle boucle (While/Wend, For/Next ou Do/Until).

Re: [..] Utilisation des fonctions

Posté : sam. 19 déc. 2009 16:59
par phylonia
Merci dommage que j'ai trouver je venez rectifier il y a beaucoup plus simple ...

Code : Tout sélectionner

Func nom_func1()
While 1

$pos = pixelsearch( 51, 48, 968, 579, 0xD7D6C2)
If not @error Then
MouseClick("left", $pos[0], $pos[1], 1, 3)
EndIf

Sleep ( 1000 )

If @error Then
    nom_func2()
EndIf

sleep ( 2000 )
WEnd
EndFunc
 
On la démarre avec

Code : Tout sélectionner

nom_func1()
 
Sa reprend le message précédent en plus "noob" vue que j'aime pas utiliser sa vue que je sais pas les utilsiers...