Torpedovisk
30th June 2004, 10:48 PM
Unless i missed a command on the Control Manager, you can't set any axis to relative mode(x/yrelative is for trackball only, right?).
If such command exists, just ignore the rest... :oops: :stupid:
A relative axis for the designator and radar would be great in LOMAC. My Microstick mouse mode was already set for the cockpit view, so i made this script.
I'm still a noob with CMS, so there's probably a lot of room for improvement.
While holding the Fighterstick hatswitch(in the middle of the stick) to the right, inputs from the microstick control one virtual mouse/slider, while holding the hatswitch to the left controls the other virtual mouse/slider. If none are pressed, or if you use them while the pinkie switch is pressed, the microstick controls the mouse.
The division in the end is just to decrease the max speed. Adjust it according to your own preferences.
Deadzone in the CMS Painel must be set to zero, but you can control it by changing the number in the "IF ( [ JS2.A1 > 128 ] ) THEN" lines and similars.
It's working fine for me, but if the cut and paste somehow damages it, i can post the CMS file.
// Microstick
//// Radar Axes
CMS.A7 = A50;
CMS.A8 = A51;
///// X Axis
SEQUENCE
WHILE( JS1.B14 AND NOT JS1.B4 );
IF ( [ JS2.A1 > 128 ] ) THEN
SEQUENCE
A50 = A50 + ( JS2.A1 - 128 ) / 10;
DELAY ( 1 );
ENDSEQUENCE
ELSE
IF ( [ JS2.A1 < 128 ] ) THEN
SEQUENCE
A50 = A50 - ( 128 - JS2.A1 ) / 10;
DELAY ( 1 );
ENDSEQUENCE
ENDIF
ENDIF
ENDSEQUENCE
///// Y Axis
SEQUENCE
WHILE( JS1.B14 AND NOT JS1.B4 );
IF ( [ JS2.A2 > 128 ] ) THEN
SEQUENCE
A51 = A51 + ( JS2.A2 - 128 ) / 10;
DELAY ( 1 );
ENDSEQUENCE
ELSE
IF ( [ JS2.A2 < 128 ] ) THEN
SEQUENCE
A51 = A51 - ( 128 - JS2.A2 ) / 10;
DELAY ( 1 );
ENDSEQUENCE
ENDIF
ENDIF
ENDSEQUENCE
//// Designator Axes
CMS.A9 = A52;
CMS.A10 = A53;
///// X Axis
SEQUENCE
WHILE( JS1.B16 AND NOT JS1.B4 );
IF ( [ JS2.A1 > 128 ] ) THEN
SEQUENCE
A52 = A52 + ( JS2.A1 - 128 ) / 10;
DELAY ( 1 );
ENDSEQUENCE
ELSE
IF ( [ JS2.A1 < 128 ] ) THEN
SEQUENCE
A52 = A52 - ( 128 - JS2.A1 ) / 10;
DELAY ( 1 );
ENDSEQUENCE
ENDIF
ENDIF
ENDSEQUENCE
///// Y Axis
SEQUENCE
WHILE( JS1.B16 AND NOT JS1.B4 );
IF ( [ JS2.A2 > 128 ] ) THEN
SEQUENCE
A53 = A53 + ( JS2.A2 - 128 ) / 10;
DELAY ( 1 );
ENDSEQUENCE
ELSE
IF ( [ JS2.A2 < 128 ] ) THEN
SEQUENCE
A53 = A53 - ( 128 - JS2.A2 ) / 10;
DELAY ( 1 );
ENDSEQUENCE
ENDIF
ENDIF
ENDSEQUENCE
//// Mouse Mode
SEQUENCE
WHILE( NOT JS1.B14 AND NOT JS1.B16 );
CMS.A5 = JS2.A1;
CMS.A6 = JS2.A2;
ENDSEQUENCE
If such command exists, just ignore the rest... :oops: :stupid:
A relative axis for the designator and radar would be great in LOMAC. My Microstick mouse mode was already set for the cockpit view, so i made this script.
I'm still a noob with CMS, so there's probably a lot of room for improvement.
While holding the Fighterstick hatswitch(in the middle of the stick) to the right, inputs from the microstick control one virtual mouse/slider, while holding the hatswitch to the left controls the other virtual mouse/slider. If none are pressed, or if you use them while the pinkie switch is pressed, the microstick controls the mouse.
The division in the end is just to decrease the max speed. Adjust it according to your own preferences.
Deadzone in the CMS Painel must be set to zero, but you can control it by changing the number in the "IF ( [ JS2.A1 > 128 ] ) THEN" lines and similars.
It's working fine for me, but if the cut and paste somehow damages it, i can post the CMS file.
// Microstick
//// Radar Axes
CMS.A7 = A50;
CMS.A8 = A51;
///// X Axis
SEQUENCE
WHILE( JS1.B14 AND NOT JS1.B4 );
IF ( [ JS2.A1 > 128 ] ) THEN
SEQUENCE
A50 = A50 + ( JS2.A1 - 128 ) / 10;
DELAY ( 1 );
ENDSEQUENCE
ELSE
IF ( [ JS2.A1 < 128 ] ) THEN
SEQUENCE
A50 = A50 - ( 128 - JS2.A1 ) / 10;
DELAY ( 1 );
ENDSEQUENCE
ENDIF
ENDIF
ENDSEQUENCE
///// Y Axis
SEQUENCE
WHILE( JS1.B14 AND NOT JS1.B4 );
IF ( [ JS2.A2 > 128 ] ) THEN
SEQUENCE
A51 = A51 + ( JS2.A2 - 128 ) / 10;
DELAY ( 1 );
ENDSEQUENCE
ELSE
IF ( [ JS2.A2 < 128 ] ) THEN
SEQUENCE
A51 = A51 - ( 128 - JS2.A2 ) / 10;
DELAY ( 1 );
ENDSEQUENCE
ENDIF
ENDIF
ENDSEQUENCE
//// Designator Axes
CMS.A9 = A52;
CMS.A10 = A53;
///// X Axis
SEQUENCE
WHILE( JS1.B16 AND NOT JS1.B4 );
IF ( [ JS2.A1 > 128 ] ) THEN
SEQUENCE
A52 = A52 + ( JS2.A1 - 128 ) / 10;
DELAY ( 1 );
ENDSEQUENCE
ELSE
IF ( [ JS2.A1 < 128 ] ) THEN
SEQUENCE
A52 = A52 - ( 128 - JS2.A1 ) / 10;
DELAY ( 1 );
ENDSEQUENCE
ENDIF
ENDIF
ENDSEQUENCE
///// Y Axis
SEQUENCE
WHILE( JS1.B16 AND NOT JS1.B4 );
IF ( [ JS2.A2 > 128 ] ) THEN
SEQUENCE
A53 = A53 + ( JS2.A2 - 128 ) / 10;
DELAY ( 1 );
ENDSEQUENCE
ELSE
IF ( [ JS2.A2 < 128 ] ) THEN
SEQUENCE
A53 = A53 - ( 128 - JS2.A2 ) / 10;
DELAY ( 1 );
ENDSEQUENCE
ENDIF
ENDIF
ENDSEQUENCE
//// Mouse Mode
SEQUENCE
WHILE( NOT JS1.B14 AND NOT JS1.B16 );
CMS.A5 = JS2.A1;
CMS.A6 = JS2.A2;
ENDSEQUENCE