Page 1 sur 1

lancer macro suite à touche raccourcis

Posté : 26 mai 2014, 22:21
par ersatz5
Bonjour,

je découvre le logiciel et je voudrais surtout créer des macro qui se lancent en fonction de touches raccourcis. J'ai cherché dans l'aide mais ne trouve pas de telles fonctions. SI vous avez un exemple de script avec un IF Else, ce serait le bienvenu.

Merci d'avance !

Re: lancer macro suite à touche raccourcis

Posté : 27 mai 2014, 10:31
par Onissius
Alors, il me semble que sur un ancien forum on en avais parlé.

Si je me souviens bien, la conclusion avait été que SM ne permet pas directement de créer des raccourcis claviers (Si je fait Ctrl + 1 ça lance la macro 1, Ctrl +2 la macro 2, etc...). Mais que tu pouvais faire un raccourci vers ta macro et dans les options du raccourcis (clic droit => propriété => touche de raccourci) tu peu définir un raccourci clavier. Comme cela, si tu fait un Ctrl 1, ça active le raccourci vers ta macro qui du coup exécute la dite macro.
Ctrl +1 étant donné a titre d'exemple dans ce cas là.

Pour la deuxième partie de ta question.
Le IF...THEN...ELSE n'existe pas directement sous cette forme dans SM. Pour cela on utilise la commande examine.
Pour les connaisseurs en programmation cette commande est l'équivalent de If Then Else.
Retourne le résultat de la comparaison (vrai ou faux). Les deux commandes qui suivent Examine en dépendent, si la condition est vraie, se sera la première commande qui sera exécutée, sinon se sera la seconde.

Exemple :
Variable <Réponse>;;Alpha;
Label <Principal>
Question Ma question;Voulez vous quitter la macro ?;<Réponse>;
Examine <Réponse>;=;oui; // si Réponse = oui
Quitter // alors je quitte
Goto <Principal> // sinon je retourne au label Principal
En bleu les "//" est une commande de commentaire en REALBasic, C (C99), C++, C#, D, Delphi, Java, PHP, Scilab, PHP, ATS.

Re: lancer macro suite à touche raccourcis

Posté : 27 mai 2014, 21:27
par xan2622
Effectivement sur feu notre dernier forum (snif), on avait parlé de ça. Et Adam était réapparu comme par enchantement et avait répondu qu'il était possible de détecter des évènements clavier, souris, etc.

Quand on crée une variable, on peut alors cliquer sur le petit bouton pour afficher la liste des variable système.
Image

De mémoire, Adam disait sur cet ancien forum (re-snif) qu'il fallait passer par [EVENT.KEY].

Voici une petite macro qui installe la base d'une détection de touches (ici, avec la lettre "a") :

Code : Tout sélectionner

Variable	[EVENT.KEY];[EVENT.KEY];Alpha;

Examine	[EVENT.KEY];=;a;
Goto	<Label1>
Goto	<Label2>

Label	<Label1>
Beep HZ	1000;440;
Quitter	

Label	<Label2>
Message	Message;autre touche;
Quitter	
Je pense qu'il devrait être possible de créer une macro plus poussée, ne serait-ce qu'avec la fonction "Procédure".

Re: lancer macro suite à touche raccourcis

Posté : 27 mai 2014, 21:31
par xan2622
ersatz5 : tu veux faire une macro pour quel jeu ? (parfois il existe des solutions plus simples que SuperMacro).

Re: lancer macro suite à touche raccourcis

Posté : 22 juil. 2014, 18:29
par Archiive
Perso j'ai un petit soucis avec la variable [EVENT.KEY], j'ai realisé une macro qui devrait me permettre lorsque j'appuis sur une touche d'appuyer sur deux autres touche.

Code : Tout sélectionner

Variable	[EVENT.KEY];[EVENT.KEY];Alpha;

Label	<Label1>

Examine	[EVENT.KEY];=;a;
Type Special	CTRL;E;
Goto	<Label1>
Le probleme c'est qu'a part forcer la variable à être sur 'a' dans le programme je n'est pas l'impression que lorsque j'appuis sur la touche il se passe quoi que ce soit.
J'ai reproduis la macro de xan2622 d'au dessus en rempalcement le son par un message, pareil : rien.

Je suis sur w7, des idées?

Re: lancer macro suite à touche raccourcis

Posté : 22 juil. 2014, 21:56
par Feitan
Hello, la macro de xan2622 ne fonctionne pas chez moi, par contre cette syntaxe fonctionne chez moi :

Code : Tout sélectionner

Variable	[EVENT.KEY];[EVENT.KEY];Alpha;
Variable	[EVENT.ACTIVATE];[EVENT.ACTIVATE];Numerique;
Pause	00:00:03
Calcul évolué	[EVENT.ACTIVATE]=1
Examine	[EVENT.ACTIVATE];<>;1;
Quitter	
Pause	00:00:01
Label	<Label1>
Examine	[EVENT.KEY];=;a;
Message	Message;bertrand;
Goto	<Label1>

Le EVENT.ACTIVATE est important de mémoire, après je ne sais pas trop si je l'utilise bien ou pas. Change le "Message" par un Goto ou ton CTRL + E (pense aussi que certains jeux bloquent les API et que du coup le CTRL+E peut ne pas fonctionner)

Re: lancer macro suite à touche raccourcis

Posté : 23 juil. 2014, 20:56
par Archiive
Merci bien Feitan, effectivement avec le [EVENT.ACTIVATE] ça marche impeccable (si j'ai bien compris c'est la variable qu'il faut utiliser pour 'activer' les autres variables EVENT ?)

Malheureusement le jeu sur lequel je comptais utiliser cette macro (Wildstar) ne sembler pas accepter les API comme tu le disais.

Re: lancer macro suite à touche raccourcis

Posté : 10 août 2014, 18:45
par Onissius
Si ça peu t'aider je joue aussi a un jeu qui bloque les API, ça m'interdit les mouvement de souris. Mais pas l’appuie de touche, pour "contourner" le problème, j'utilise la touche Window du clavier. Comme ça, je sort du jeu et là je peut bouger ma souris là où je veux.
Problème, pas sur que le clique suivant marche dans le jeu. A tester donc.