J'ai pas plus d'infos que ce que dime a donnéDusty a écrit :Merci ivan. Cependant si j'ai bien compris le mode FILTERED tel qu'Icemaker l'a expliqué, cela permettrait de passer outre toute cette réaffectation.
Ice, tu aurais des précisions?
![Sad :sad:](./images/smilies/sad.gif)
J'ai pas plus d'infos que ce que dime a donnéDusty a écrit :Merci ivan. Cependant si j'ai bien compris le mode FILTERED tel qu'Icemaker l'a expliqué, cela permettrait de passer outre toute cette réaffectation.
Ice, tu aurais des précisions?
Salutlefuneste a écrit :J'ai deja réalisé la démarche : Voir mon profil A10C: http://www.checksix-forums.com/forumdisplay.php?f=283
Si ca peut te faire gagner du temps...
Si une bonne âme pouvait m'aider ......include "target.tmh"
int main()
{
Exclude(&HCougar);
Exclude(&Joystick);
Exclude(&Throttle);
Exclude(&LMFD);
Exclude(&RMFD);
Configure(&Joystick, MODE_FILTERED);
Configure(&Throttle, MODE_FILTERED);
Configure(&LMFD, MODE_FILTERED);
Configure(&RMFD, MODE_FILTERED);
if(Init(&EventHandle)) return 1;
SetShiftButton(&Joystick, S4);
SetKBRate(32, 50);
SetKBLayout(KB_FR);
//SnapViews
MapKeyIO(&Joystick, H2U, PULSE+R_CTL+KP0);
MapKeyIO(&Joystick, H2D, PULSE+KP2);
MapKeyIO(&Joystick, H2L, PULSE+KP4);
MapKeyIO(&Joystick, H2R, PULSE+KP6);
// TrackIr
MapKeyIO(&Joystick, H3U, PULSE+L_CTL+APPS, 0);
MapKeyIOUMD(&Joystick, H3D, PULSE+R_CTL+APPS, 0);
//Axis
MapAxis(&Joystick, JOYX, DX_X_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetSCurve(&Joystick, JOYX, 0, 0, 0, 0, 0);
MapAxis(&Joystick, JOYY, DX_Y_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetSCurve(&Joystick, JOYY, 0, 0, 0, 0, 0);
MapAxis(&Throttle, SCX, DX_XROT_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetSCurve(&Throttle, SCX, 0, 0, 0, 0, 0);
MapAxis(&Throttle, SCY, DX_YROT_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetSCurve(&Throttle, SCY, 0, 0, 0, 0, 0);
MapAxis(&Throttle, THR_RIGHT, DX_Z_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetSCurve(&Throttle, THR_RIGHT, 0, 0, 0, 0, 0);
MapAxis(&Throttle, THR_LEFT, DX_ZROT_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetSCurve(&Throttle, THR_LEFT, 0, 0, 0, 0, 0);
MapAxis(&Throttle, THR_FC, DX_SLIDER_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetSCurve(&Throttle, THR_FC, 0, 0, 0, 0, 0);
}
int EventHandle(int type, alias o, int x)
{
if(&o == &Joystick & !o[S4]) GameOutput(&o, x, o[x]);
DefaultMapping(&o, x);
}
Code : Tout sélectionner
// Default button mapping:
Joystick:
TG1 , DX1
S2 , DX2
S3 , DX3
S4 , DX4
S1 , DX5
TG2 , DX6
H2U , DX7
H2R , DX8
H2D , DX9
H2L , DX10
H3U , DX11
H3R , DX12
H3D , DX13
H3L , DX14
H4U , DX15
H4R , DX16
H4D , DX17
H4L , DX18
H4P , DX19
H1U , DXHATUP
H1R , DXHATRIGHT
H1D , DXHATDOWN
H1L , DXHATLEFT
Throttle:
LTB , DX20
SC , DX21
CSU , DX22
CSR , DX23
CSD , DX24
CSL , DX25
MSP , DX26
MSU , DX27
MSR , DX28
MSD , DX29
MSL , DX30
SPDF , DX31
SPDB , DX32
Forbidden Planet = SF , video, old goodie a écrit : http://en.wikipedia.org/wiki/Forbidden_Planet http://www.forbidden-planet.org/forbidden-planet/http://www.jeffbots.com/forbiddenplanet.html http://web.archive.org/web/200412110934 ... fbhome.htm
icemaker a écrit :...
Dans le script é]Include "target.tmh"
int main()
{
Exclude(&HCougar);
Exclude(&Joystick);
Exclude(&Throttle);
Exclude(&LMFD);
Exclude(&RMFD);
Configure(&Joystick, MODE_FILTERED);
Configure(&Throttle, MODE_FILTERED);
Configure(&LMFD, MODE_FILTERED);
Configure(&RMFD, MODE_FILTERED);
if(Init(&EventHandle)) return 1;
SetShiftButton(&Joystick, S4);[/code]
En fait les boutons programmés de cette façon fonctionnent parfaitement en fonction shifté.hellfrog a écrit : dans MapKeyIOUMD(&Joystick, H3D, PULSE+R_CTL+APPS, 0)]
J'ai suivi les conseils de dimebug, il semblerait que ce ne soit pas la peine de mettre U,M,D si non utilisés :
dimebug a écrit :Il faut utiliser les MapkeyIO mais en entrant que la premiere commande (la ou il devrait y en avoir 2, ou mettre 0 pour la seconde commande) :
MapKeyIO(&Joystick, H3U, USB[0x55])]); //zoom
C'est une ligne donnée par Icemaker :ivanwfr a écrit :C'est encore plus grave que ça docteur!
Le mapping que j'ai extrait plus haut s'applique dans DefaultMapping() sans avoir fait de MapKey() perso.
Il me semble que la ligne suivante ne sert tout simplement à rien:
if(&o == &Joystick & !o[S4]) GameOutput(&o, x, o[x]);
... ça revient à prendre la valeur d'un paramètre du joystick pour la remettre là où elle se trouvait déjà
icemaker a écrit :...
C'est le code que les dev de TARGET m'ont fait passer lors des test de cette fonction...
Justement je voudrais garder le mapping par défaut, et seulement rajouter quelques fonctions en fonction shiftée.ivanwfr a écrit :...
Je ne vais pas en remettre une couche mais si on veut avoir un un résultat différent du mapping par défaut, faut pas laisser Init() faire avec son MapList(&Joystick, &JoystickMap); et MapList(&Throttle, &ThrottleMap);... Faut mettre les pieds dans le plat, après l'appel obligagoire à Init() avec quelque chose qui ressemble aux 2 premiers encarts de mon message #23.
Forbidden Planet = SF , video, old goodie a écrit : http://en.wikipedia.org/wiki/Forbidden_Planet http://www.forbidden-planet.org/forbidden-planet/http://www.jeffbots.com/forbiddenplanet.html http://web.archive.org/web/200412110934 ... fbhome.htm
Je ne manquerais surement pas de te questionner !hellfrog a écrit :...la seule chose compliquée c'est de comprendre comment marche son script "à tiroirs" avec des fichiers qui s'apellent les uns les autres... ]
Pour l'instant j'ai pas encore pigé![]()
Ceci dit, dès que je peux, je me penche plus en détail sur les scripts target et essaierais de mettre un place une solution suivant la méthode décrite par ivanwfr.
ivanwfr a écrit :..... je ne vois aucun inconvénient à commenter tout ce qui aura le mérite de faire l'objet d'une question.
Je ne manquerais surement pas de te questionner !hellfrog a écrit :...la seule chose compliquée c'est de comprendre comment marche son script "à tiroirs" avec des fichiers qui s'apellent les uns les autres... ]
Pour l'instant j'ai pas encore pigé![]()
Ceci dit, dès que je peux, je me penche plus en détail sur les scripts target et essaierais de mettre un place une solution suivant ta méthode.
ivanwfr a écrit :..... je ne vois aucun inconvénient à commenter tout ce qui aura le mérite de faire l'objet d'une question.
En fait j'avais vu hier soir après avoir écrit mon post précédent.ivanwfr a écrit :.....
Pour basculer UMD, c'est justement le Micro switch Up et Down ... celui qui marche pas(j'ai légèrement caché le fait que j'avais échangé MS_Push-MS_Down!)
Ça j'avais pas vu !ivanwfr a écrit :....
[*]Du coup l'utilisation du switch MS donne ç] == [MSL MSP MSR] == [Left Push Right]
...
Pour la fonction push-to-talk il est préférable de n'avoir qu'un seul bouton a presser, presser 2 boutons pourrait être gênant car bien souvent on doit communiquer tout en jouant sur les commandes..ivanwfr a écrit :je vois bien où tu veux an venir pour TeamSpeak. Une activation directe sans modifier est bien commode
J'ai essayer tes scripts, et je maitrise effectivement déjà bien les fonctions de base, ainsi que les fonctions snapviews et Track-IR. Pour les autres, il me faudra un peu plus de temps.ivanwfr a écrit :Même si ça apparaît compliqué quand on entre dans le détail, je cherche toujours m'assurer que l'utilisation de ces fonctions puisse devenir reflex. Il faut bien s'attendre à un temps d'assimilation mais si ça ne vient pas assez rapidement, ça veut dire qu'il faut reconsidérer l'ensemble.